<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Career Change Coders - Medium]]></title>
        <description><![CDATA[A community for beginners, by beginners. We aim to publish motivating and interesting stories on web development, career changing and life. - Medium]]></description>
        <link>https://medium.com/career-change-coder?source=rss----6617cfae16ba---4</link>
        <image>
            <url>https://cdn-images-1.medium.com/proxy/1*TGH72Nnw24QL3iV9IOm4VA.png</url>
            <title>Career Change Coders - Medium</title>
            <link>https://medium.com/career-change-coder?source=rss----6617cfae16ba---4</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sun, 15 Nov 2026 03:31:05 GMT</lastBuildDate>
        <atom:link href="https://medium.com/feed/career-change-coder" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[Hey Coders! ]]></title>
            <link>https://medium.com/career-change-coder/hey-coders-de7e27c95dc1?source=rss----6617cfae16ba---4</link>
            <guid isPermaLink="false">https://medium.com/p/de7e27c95dc1</guid>
            <dc:creator><![CDATA[Rick West]]></dc:creator>
            <pubDate>Sun, 09 Dec 2018 23:42:39 GMT</pubDate>
            <atom:updated>2018-12-09T23:42:38.177Z</atom:updated>
            <content:encoded><![CDATA[<p>How are you all?</p><p>I thought it was about time that we got in touch and just said hello!</p><p>I know that we’ve been pretty quiet on <a href="https://medium.com/career-change-coder">Medium</a> but I just wanted to let you know that we haven’t given up on Career Change Coders and, in-fact, we are very much alive and kicking!</p><p>We’ve recently launched <a href="https://careerchangecoders.com/">our new website</a> and the Slack Channel is going from strength to strength. If you haven’t signed up yet, please feel free to <a href="https://careerchangecoders.herokuapp.com/">join the community</a> and come and chat with some like minded, career changers, who are all learning to code.</p><p>Speaking of code, what are you working on at the moment? What are you learning? <a href="/service/mailto:careerchangecoders@gmail.com">Drop me an email</a> and let me know, I’d love to hear how things are going 🙂.</p><p>Me? I’ve been working on a few interesting things lately. I’ve rebuilt <a href="https://rickwest.co.uk/">my own website</a> using Jigsaw (I wrote a little bit about Jigsaw <a href="https://medium.freecodecamp.org/how-to-use-jigsaw-to-quickly-and-easily-build-static-sites-8a3304c3ad7e">here</a>) and I‘ve also been working on a couple of side projects, <a href="https://thepyfiles.com/">The Py Files</a> and <a href="https://thejsfiles.com/">The JS Files</a>.</p><p>Basically, I wanted to get to know some of the awesome developers from the Python and Javascript community a little better and so I decided to conduct a series of interviews with them. Check those out and make sure you sign up to get notified when new interviews are released!</p><p><a href="https://thepyfiles.com/joe-mancuso/">The first interview is with Joseph Mancuso</a>, creator of the Python web framework Masonite. Joe was kind enough to talk to me all about the framework, his motivations for building it, his dev-setup and how he manages a full-time job along with school and a family! Well worth a read! 🔥</p><p>I’m not the only one who has been busy either, about 6 months ago, David landed his first job in the industry, doing some project management, working remotely for a web agency.</p><p>He’s also currently busy rebuilding his portfolio, using Jekyll, in preparation to move forward in the pursuit of a frontend developer role. Exciting times, and I’m sure there will be more to come on that later!</p><p>Anyway, It’s been good to catch up, I promise it won’t be so long next time, but in the meantime, do come and say hello on Slack!</p><p>All the best and happy coding,</p><p><strong><em>Rick</em></strong></p><p><em>Career Change Coders</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=de7e27c95dc1" width="1" height="1" alt=""><hr><p><a href="https://medium.com/career-change-coder/hey-coders-de7e27c95dc1">Hey Coders! 🙂</a> was originally published in <a href="https://medium.com/career-change-coder">Career Change Coders</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Understanding Your Individual Learning Styles in Relation to Learning to Code]]></title>
            <link>https://medium.com/career-change-coder/understanding-your-individual-learning-styles-in-relation-to-learning-to-code-3ad24ebec551?source=rss----6617cfae16ba---4</link>
            <guid isPermaLink="false">https://medium.com/p/3ad24ebec551</guid>
            <category><![CDATA[programming]]></category>
            <category><![CDATA[coding]]></category>
            <category><![CDATA[technology]]></category>
            <category><![CDATA[web-development]]></category>
            <category><![CDATA[career-change-coders]]></category>
            <dc:creator><![CDATA[Code Girl]]></dc:creator>
            <pubDate>Wed, 23 Aug 2017 21:03:47 GMT</pubDate>
            <atom:updated>2017-08-23T21:08:22.443Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/736/1*Hr9dSumTzuEGO1nPQz3SGg.jpeg" /></figure><p>If you are like me, you have tried dozens of courses and resources that promise you will learn to code quickly and easily. I’ve already debunked that myth (<a href="https://codeburst.io/a-professors-perspective-4c78f7a81d99"><strong>here</strong></a>), as have others (<a href="http://www.vikingcodeschool.com/posts/why-learning-to-code-is-so-damn-hard"><strong>here</strong></a> and <a href="http://www.techtalkfornontechies.com/stop-lying-newbies/"><strong>here</strong></a>). Learning to code has many layers from learning the actual programming languages to learning how to think like a programmer. Complicating the learning process is the fact that everyone learns differently. In education, the concept of differentiation is critical and means that teachers provide instructional strategies that support the various learning styles of their students. But what are learning styles? How do you recognize your dominant learning styles? How do you find the best coding resources to meet those needs? In this post, I’ll address all three of these questions.</p><p>Learning styles are simply your preferred method of learning new material that enables you to comprehend and retain content. Learning styles are not fixed. Meaning, you can have multiple dominant styles, and these styles can change depending on the material you are studying. Knowing which are your dominant styles can help you choose the right coding resources to be more successful.</p><p>There are seven widely recognized learning styles.</p><p><strong>Verbal/Linguistic</strong></p><p>Characteristics of learning include reading, speaking, and writing. Generally, most courses and resources for learning to code emphasize this type of learning since reading documentation is key to becoming a great programmer. Therefore, I highly recommend the <a href="https://www.freecodecamp.org/"><strong>FreeCodeCamp</strong></a> program where you learn by reading snippets of documentation and then immediately apply what you have learned. Join the FreeCodeCamp community on Facebook, and you can discuss problems and solutions, and share your progress. Sign up for newsletters and blogs. I really like <a href="http://javascriptweekly.com/"><strong>JavaScript Weekly</strong></a> and <a href="https://css-tricks.com/"><strong>CSS-Tricks</strong></a>. Resources like <a href="http://www.w3schools.com/"><strong>W3Schools</strong></a> and <a href="https://developer.mozilla.org/en-US/"><strong>Mozilla Developer Network</strong></a> are also perfect for you. But not everyone learns this way; so if you need a more differentiated approach, keep reading! Don’t discount FreeCodeCamp just yet, because they have enough differentiation to meet all of your learning style needs.</p><p><strong>Visual/Spatial</strong></p><p>Characteristics of learning include using color, graphic organizers, reliance on images and pictures, and use of visual media. Visual learners love their text editors because most editors use color to consistently indicate specific code. Try mimicking that process by taking notes in color, specifically on new vocabulary words. Creating wireframes (<a href="https://app.moqups.com/edit/page/ad64222d5"><strong>here</strong></a>) is a great way to visually conceptualize your development projects. Choose coding resources that were created with diagrams and images. My favorite visual resource is <a href="http://www.sketchingwithcss.com/samplechapter/cheatsheet.html"><strong>The Ultimate Flexbox Cheat Sheet</strong></a>. The positioning of the images with the color blocking in this Cheat Sheet makes learning Flexbox more accessible. If you are working through FreeCodeCamp, I recommend looking into <a href="https://www.youtube.com/playlist?list=PLWKjhJtqVAbk7zM11M36sGvU29hB8EDC4"><strong>The Daily Programmer</strong></a> YouTube series. Here, Cody Seibert walks you step by step through assignments using a white board to tease out concepts before you code.</p><p><strong>Auditory/Musical</strong></p><p>Characteristics of learning include listening to audio books, podcasts, and lectures, linking sound with meaning, and adding rhythm and rhyme. Good speakers convey meaning through use of tone, inflection, and speed. This is important for coders because of the amount of new vocabulary we have to learn. Hearing the vocabulary in context makes it easier to pick up. I happen to love Jose Moreno’s YouTube <a href="https://www.youtube.com/watch?v=2_rvr8EdhCg&amp;list=PLF4Fpfzm6Ig3smsMQEqKRTAlgOdoee7AJ"><strong>videos</strong></a> that accompany the FreeCodeCamp curriculum. Mostly, Jose talks through the instructions. Something about his voice and hearing the words out loud enable me to access that part of my brain and solve the challenge. If you are looking for great coding podcasts check out this <a href="https://medium.freecodecamp.org/10-more-podcasts-that-new-coders-should-listen-to-in-2017-3c7db301dfb"><strong>link</strong></a>. I am enjoying <a href="http://starthere.fm/"><strong>Start Here FM</strong></a>, a relatively new site, mixing audio, video, and a book club based on various topics.</p><p><strong>Physical/Kinesthetic</strong></p><p>Characteristics of learning include movement, manipulation, and hands-on activities. Kinesthetic learners don’t mind broken code because they enjoy fixing it. Here, learning takes place in the transformation of information into a product. Building is critical when learning to code, and you can start building the minute you learn some basic HTML and CSS. Take courses that encourage you to build your own projects rather than just copying the code from an already completed project. FreeCodeCamp provides such tasks at the end of every unit. You may start with a simple <a href="https://www.freecodecamp.org/challenges/build-a-tribute-page"><strong>Tribute Page</strong></a>, but you will end up creating a <a href="https://www.freecodecamp.org/challenges/build-a-simon-game"><strong>Simon</strong></a> game, a <a href="https://www.freecodecamp.org/challenges/build-a-javascript-calculator"><strong>calculator</strong></a> and much more. Try to build something everyday just to experiment. If you run out of ideas, find inspiration at <a href="http://rosettacode.org/wiki/Rosetta_Code"><strong>Rosetta Code</strong></a>.</p><p><strong>Logical/Mathematical</strong></p><p>Characteristics of learning include systematically and sequentially working through problems, understanding cause and effect, and running simulation-type games. Logical thinkers tend to like workflow applications, read documentation, and utilize libraries (like Bootstrap) that rely on an understanding of hierarchy. Arguably, we can say that learning to code is all about problem solving, so take the opportunity to get involved with puzzles, challenges, and gaming at <a href="https://codefights.com/"><strong>CodeFights</strong></a>, <a href="https://www.codewars.com/"><strong>CodeWars</strong></a>, <a href="https://www.hackerrank.com/dashboard"><strong>HackerRank</strong></a>, and <a href="https://www.codingame.com/training"><strong>CodeInGame</strong></a>.</p><p><strong>Interpersonal &amp; Intrapersonal</strong></p><p>Regardless of your preferred learning styles, most people fall into one of the last two categories: Interpersonal and Intrapersonal.</p><p>Interpersonal learners like the social aspects of learning such as study groups, so why not participate in a local Hackathon, attend a programming <a href="https://www.meetup.com/"><strong>meet-up</strong></a>, or join a study group (FreeCodeCamp has study groups all over the world. My group meets every other Sunday, and it is my favorite part of the program). Women — join the <a href="https://www.womenwhocode.com/"><strong>WomenWhoCode </strong></a>organization and get involved in your community. Give back by working on open-source projects on <a href="https://github.com/"><strong>GitHub</strong></a>.</p><p>Intrapersonal learners prefer to work alone and often focus on self-reflection, so why not participate in a challenge like <a href="http://www.100daysofcode.com/"><strong>#100DaysofCode</strong></a> or <a href="http://www.subscribepage.com/30days30sites"><strong>#30Days,30Sites</strong></a>. I participate in both challenges, and everyday, I post an update on my Twitter feed to hold myself accountable. Start a reflective blog about your learning experiences (exactly like I did), and join <a href="https://github.com/"><strong>GitHub</strong></a> to participate in open source projects on your own time.</p><p><strong>Wrapping Up</strong></p><p>I have no doubt that as you read, you identified with several learning styles from your journey as a student. If you want to analyze your learning styles more formally, take this <a href="https://www.learning-styles-online.com/inventory/questions.php"><strong>learning styles inventory</strong></a>. One last note, to make the most out learning to become a programmer, you should address as many learning styles as you can. Build up your knowledge base with resources that match your dominant learning styles, and then venture out into different styles, but be patient with yourself. Learning to code is not quick and easy. Give yourself permission to make mistakes.</p><p>I’m always interested in hearing other people’s stories about learning to code, so I challenge you to write a comment or send me an email telling me what your dominant learning style is and your best resource for that style.</p><p>Thank you for taking the time to read this post. If you found it informative, please hit the heart button.</p><p>Don’t forget to join me on <a href="https://twitter.com/fwallacephd">Twitter</a> and Career Change Coders on <a href="https://www.facebook.com/groups/1808933362696140/">Facebook</a> and <a href="https://careerchangecoders.herokuapp.com/">Slack</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=3ad24ebec551" width="1" height="1" alt=""><hr><p><a href="https://medium.com/career-change-coder/understanding-your-individual-learning-styles-in-relation-to-learning-to-code-3ad24ebec551">Understanding Your Individual Learning Styles in Relation to Learning to Code</a> was originally published in <a href="https://medium.com/career-change-coder">Career Change Coders</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How I revolutionised my productivity and became a better Dad in the process.]]></title>
            <link>https://medium.com/career-change-coder/how-i-revolutionised-my-productivity-and-became-a-better-dad-in-the-process-db1da2849a83?source=rss----6617cfae16ba---4</link>
            <guid isPermaLink="false">https://medium.com/p/db1da2849a83</guid>
            <category><![CDATA[productivity]]></category>
            <category><![CDATA[david-lower]]></category>
            <category><![CDATA[coding]]></category>
            <category><![CDATA[career-change]]></category>
            <category><![CDATA[dads]]></category>
            <dc:creator><![CDATA[David Lower]]></dc:creator>
            <pubDate>Sun, 20 Aug 2017 10:24:54 GMT</pubDate>
            <atom:updated>2017-08-20T10:31:05.047Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Rc7KbD5bw4st2dtx6BQ-_Q.jpeg" /></figure><p>Entering into a career change to become a web-developer and embracing the full-time commitment that entails, meant I had to take stock of how I managed my time.</p><p>I am a husband and a Father of two little kids. I had to be ruthless in what was important to me and what wasn’t. So this was my process and these were the questions I asked.</p><ul><li>What are the essential tasks I need to complete every day?</li><li>What tasks are important to me?</li><li>What tasks are important to my wife and children?</li></ul><h4>What are the essential tasks?</h4><p>An essential task is a task that needs to be done without exception. These tasks form the building blocks of your day. It could be anything.</p><ul><li>Making dinner.</li><li>Doing the washing.</li><li>Paying bills.</li><li>Taking kids to school or other events.</li><li>General errands.</li><li>Job.</li></ul><p>It doesn’t matter how detailed you are. But separating everything helps paint a clearer picture of potential tasks that can be grouped together and at what time in the day they can be performed.</p><p>The point is to sit down and be totally honest with all your general day to day stuff and ask yourself, ‘is this essential and if so, is there another way to be more efficient with it’?</p><p>It all boils down to priority. What is your priority? At the end of the day if you are changing career — what is the end goal? Changing career is a pretty big deal, but if other things continue to find themselves dominating your time, one has to ask the question, ‘what is the drive behind changing career and is your belief in it strong enough’?</p><p>Sitting on the fence and looking over to the other side will always have a stronger appeal to what you already know. It’s called curiosity. We as humans are suckers for it. Don’t fall into the trap of thinking it will be better on the other side.</p><p>If you find yourself constantly back and forth in your drive to practice and learn. If you find life just keeps getting in the way. Do this process. Write down what is important and why it is important.</p><p>Eventually, you want to come to a singular truth and desire. That is your key. Hold that truth high like a lantern shining on your path. That is what will pull you through when the going gets tough and the motivation crashes and burns. Why are you wanting to learn coding and/or change career?</p><h4>Building your day as blocks of essential tasks</h4><p>On my list, I highlighted quality time with the family as an essential choice. It was in this process of highlighting what I needed to change in order to free up more time for coding, that I turned family time into a task. It sounds very impersonal, but for me it changed my whole outlook on how I organise my day.</p><p>Knowing that at a certain point every day I had to be completely present for the family meant the rest of the day I could decide, without guilt, that I could prioritise coding if I needed. Regardless of what I was doing I was totally focused on the family. I left my phone alone, didn’t engage in anything. I was just present.</p><p>A simple example of this. The other day I was down by the river and my son was throwing stones into the river (his favorite activity at present). I sat nearby and just watched. It was actually a prime time to read an article or do some quick emails. He was happy and there was nothing else I needed to do.</p><p>But I left my phone firmly in my pocket. In 15 minutes he looked over 3 times and each time I was there to affirm his activity. I don’t share this story to say wow what a gracious Father, not at all. I share it because in that moment I learned the difference between being present and being engaged.</p><p>Since that moment I have seen a number of parents who are out with their kids but are glued to their phones.</p><p>On another day, I had taken my son to a playground. A little boy was there with his Father. The entire time the Father was on his phone and the son constantly looked over for affirmation that never came. I am not judging that man because I don’t know his journey.</p><p>But I do know he wasn’t engaged with his son in a precious moment. I have been that kind of Father myself, many times, constantly looking for a moment to check Facebook or emails. Or quickly watch a few minutes of a coding video.</p><p>Since changing this mindset, my relationship with my son has become so more alive. I spend less time with my kids now, yet I have a richer relationship with them. The same goes for my times when I am studying. They are much more focused and I gain more progress in those times. But why is this?</p><h4>Being present and being present</h4><p>There is being present and then there is BEING present. You could sit on the sofa with your spouse and both of you are on your phone. Both spouses are present, but are they engaged with each other?</p><p>Having tasks or blocks to your day simply helps your sub-conscious approach that task with the mindset of engaging with it. If you engage with something you will take it seriously and appreciate it is an important time period. This will automatically make you more focused and will guarantee a more productive return on your time investment.</p><h4>To summarise</h4><p>Reorganise your day into what is essential and what is important. The important parts can then be reordered into most important. When you run out of time in the day those important things that didn’t make it, just have to be removed from your life.</p><p>It is brutal, but if you want to be productive you simply must do it. That is why your desire to change career has to be a strong one. The plus side to this. If you find success in re-focusing your day you will definitely appreciate the new lease of life it affords.</p><p>Finally… with regards to social media (which IMO is such a destroyer of focused quality time). Perhaps a good idea is to turn off ALL notifications for every aspect of social media and setting aside a portion of your day to focus on social media activity — replying to post and message etc. This is a much better and more focused way of dealing with social media.</p><p>I wish you all great success in pursuing your dreams. All it takes to achieve that impossible goal is one step forward. Everyone can run, it just takes one step first…</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*89nvsOL_9Dr5xbcwU522Xw.png" /></figure><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=db1da2849a83" width="1" height="1" alt=""><hr><p><a href="https://medium.com/career-change-coder/how-i-revolutionised-my-productivity-and-became-a-better-dad-in-the-process-db1da2849a83">How I revolutionised my productivity and became a better Dad in the process.</a> was originally published in <a href="https://medium.com/career-change-coder">Career Change Coders</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[What to Consider When Marketing Yourself as a Developer]]></title>
            <link>https://medium.com/career-change-coder/what-to-consider-when-marketing-yourself-as-a-developer-784c324c551c?source=rss----6617cfae16ba---4</link>
            <guid isPermaLink="false">https://medium.com/p/784c324c551c</guid>
            <category><![CDATA[web-design]]></category>
            <category><![CDATA[design]]></category>
            <category><![CDATA[career-change-coders]]></category>
            <category><![CDATA[marketing]]></category>
            <category><![CDATA[web-development]]></category>
            <dc:creator><![CDATA[Jonathan Haines]]></dc:creator>
            <pubDate>Sun, 20 Aug 2017 08:44:52 GMT</pubDate>
            <atom:updated>2017-08-21T22:06:28.989Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/900/1*SAQptqhuyLcF0lMkVYPIIQ.jpeg" /><figcaption>The Cubism style is synonymous with Pablo Picasso</figcaption></figure><p>A quote widely attributed to a wise man named Pablo goes something like this:</p><blockquote>Good artists borrow, great artists steal.</blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/448/1*pfNhk6NsXyKpUbrHFGdt8A.gif" /></figure><p>This holds true for the developer world. The best way to level up is to constantly watch the pros and imitate their styles until one day, your code is as effective and <a href="https://en.wikipedia.org/wiki/Don%27t_repeat_yourself">DRY</a> as possible.</p><p>But then how can a portfolio and online presence stand out? If I imitate other developers, where do I get to differentiate myself and plug my own personality for all potential business partners or employers to see. While <em>Pablo the Philosopher</em> gives good advice for how to advance your skills, <em>Pablo the Artist</em> exemplifies what one can do to create a brand that is different from anyone else.</p><h4><strong>Keep It Simple, Simpleton</strong></h4><p>Your portfolio is a precursor to a resume. Think of it as an elevator pitch on screen. Keep the navigation simple. Instead of building the resume in something like React, just use HTML and CSS (and perhaps a touch of jQuery), then let your projects on display let visitors know what other skills you are capable of.</p><h4><strong>Project Your Projects</strong></h4><p>Include some projects you’ve worked on. If you’re constantly applying to Python jobs but have no interest in Java, include mostly Python stuff. Your audience is folks who have never seen your projects beforehand, so give context as to what the project is, why it was built, and when. Seeing multiple projects done a few months of each other can show drastic improvement.</p><h4><strong>Portfolio Picasso</strong></h4><p>Unless we’re talking about the recent machine learning phenomenal called <a href="http://genekogan.com/works/style-transfer/">style transfer</a> (which I would totally check out, by the way), your style is yours and yours alone. Whether this is represented in a project or through your online portfolio, those visiting your site should get a good glimpse into your personality and interests. Some portfolios may also get more in depth, proclaiming a favorite band or sports team. This could work for or against you, considering your visitor may have little interest in Lebron James or basketball at all.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/320/1*MAHFFGD9MaLN3osvZh4Uxg.gif" /></figure><p>Regardless, having something stand out about your online presence tends to work more in favor for you because brings together interests that may lead to a better professional relationship relationship. Employers are looking for someone who is able to code well, but they also want a coworker with whom they can relate.</p><h4><strong>Links to the Past</strong></h4><p>While the profile should remain simple and just give brief insight as to who a developer is, links to other profiles (especially GitHub or LinkedIn) could serve as the next stage if the visitor is interested. Marketing one’s skills on Twitter or Instagram have also become pretty popular as of late, but aren’t mandatory.</p><h4><strong>Get Inspired</strong></h4><p>As much as you want your online presence to be the clearest rendition of who you are, inspiration can come from <a href="https://www.awwwards.com/">everywhere</a>. Similar to how you gravitate to a particular piece of art in a museum, use other portfolios to give you a better sense of what interests you. On <a href="https://dribbble.com/">Dribbble</a>, you can search through projects by color — an excellent method of discovering <a href="https://dribbble.com/colors/F38F6B">what</a> <a href="https://dribbble.com/colors/71C2E5">kinds</a> <a href="https://dribbble.com/colors/4B585B">of</a> <a href="https://dribbble.com/colors/E875E6">colors</a> resonate with you and how you’d want yourself portrayed to others.</p><h4><strong>Make It Your Own</strong></h4><p>Developers are lifelong learners. With this in mind, I can definitely admit that I am a different person than I was in high school. My ideal portfolio as a teenager may have looked very different from what it is now. With a portfolio, I am able to market my present self in however I see fit.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=784c324c551c" width="1" height="1" alt=""><hr><p><a href="https://medium.com/career-change-coder/what-to-consider-when-marketing-yourself-as-a-developer-784c324c551c">What to Consider When Marketing Yourself as a Developer</a> was originally published in <a href="https://medium.com/career-change-coder">Career Change Coders</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Want to master programming? Try this process.]]></title>
            <link>https://medium.com/career-change-coder/want-to-master-programming-think-in-the-language-2c72db300ed5?source=rss----6617cfae16ba---4</link>
            <guid isPermaLink="false">https://medium.com/p/2c72db300ed5</guid>
            <category><![CDATA[programming]]></category>
            <category><![CDATA[javascript]]></category>
            <category><![CDATA[language]]></category>
            <category><![CDATA[david-lower]]></category>
            <category><![CDATA[coding]]></category>
            <dc:creator><![CDATA[David Lower]]></dc:creator>
            <pubDate>Mon, 07 Aug 2017 08:50:47 GMT</pubDate>
            <atom:updated>2017-08-07T13:35:18.866Z</atom:updated>
            <content:encoded><![CDATA[<h4>Think in your head what the code is telling the computer!</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*hIsCEL5js5vL8pBwSwcJHQ.jpeg" /></figure><p>My exploits into Javascript unearthed a very clear revelation recently.</p><blockquote>If I want to understand what it is I am really trying to build — I must first ‘think’ in the language with which I build.</blockquote><p>Stumbling about from one problem to another, trying to understand how arguments work, functions execute and all the above. I concluded quite simply, I did not know the basics well enough. It is all very well and good copying code and watching tutorials (nothing wrong with that at all). But actually thinking a problem through from beginning to end is a totally different beast.</p><p>Last week I spent 5 hours trying to reverse a string. As a newbie, I had no idea how to do it. I refused to even look for a hint, let alone the answer. In the end, I managed to achieve 90% of the task.</p><p>That experience broke me in some ways. I felt such strong emotions ranging from failure and frustration to hopelessness and stupidity. You can’t help but shake that overwhelming sense of ‘what is the point’?</p><p>So what was the revelation that I had?</p><blockquote>Think in your head what the code is actually saying to the computer.</blockquote><p>7 years ago I moved country and with that, I had to learn a foreign language. There comes a point when you go from being able to speak short sentences to make yourself understood — to being able to have a fairly normal conversation. Even though your vocabulary doesn’t increase much, the divide between broken sentences and flowing conversation is huge.</p><p>If you want to ask a question or make a statement, you first think that question/statement aloud in your head using your native language. Then you translate it into the new language.</p><p>In time, however, you begin to think in the foreign language and it is at that point your communication goes from stagnant sentences to flowing conversation.</p><p>This same cross over also occurs in programming. When we learn to actually ‘think’ like the computer does, then we will really enter into the realms of mastering that language. So how do we achieve this?</p><h4>1 Speak out load the different elements of the code.</h4><h4>2 Remember computers read from right to left.</h4><h4>3 Use the proper language when speaking out load.</h4><p>This is a problem taken from FCC.</p><pre>reverseString(&quot;Greetings from Earth&quot;);</pre><pre>function reverseString(str) {<br>    var arr = [];<br>    var array = str.split(&quot;&quot;);<br>    for (i = str.length - 1; i &gt;= 0; i--) {<br>        arr.push(array[i]);<br>    }</pre><pre>console.log(arr.join(&quot;&quot;));<br>}</pre><p>So if I was to read this out load and also bare in mind going from right to left.</p><pre>var array = str.split(&quot;&quot;); </pre><pre>//take my string, split each character within the string (that is what the &quot;&quot; does) and make a new string with each character. Put all the new strings together inside a new array (.split method does this). This is what it would look like.<br>[&quot;G&quot;,&quot;r&quot;,&quot;e&quot;,&quot;e&quot;,&quot;t&quot;,&quot;i&quot;,&quot;n&quot;,&quot;g&quot;.......] and so on.</pre><pre>arr.push(array[i]);</pre><pre>//For each value of i repeating through the loop (above), take that value as the position in the array and push out that element into the new array I created earlier. </pre><p>Although I have done a horrendous job of trying to actually explain what I mean. Hopefully, you get the idea. Break each component down, understand what it does, speak it out and logically follow that order through. Loosely go from right to left.</p><p>If unsure, test it. Test each section with a console.log() to see if it gives the result you were expecting. Try and figure it out before searching for the answer.</p><p>Figuring out these tiny details, although extremely painful in the moment, does produce a wealth of understanding that doesn’t become apparent until after the problem.</p><p>Do this process again and again and again. Over time it will become natural and you will start to think like the programming language itself.</p><p>All the best on your coding journey.</p><h4>Join us on <a href="https://www.facebook.com/groups/1808933362696140/">Facebook</a> &amp; <a href="https://careerchangecoders.herokuapp.com/">Slack</a>.</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*89nvsOL_9Dr5xbcwU522Xw.png" /></figure><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=2c72db300ed5" width="1" height="1" alt=""><hr><p><a href="https://medium.com/career-change-coder/want-to-master-programming-think-in-the-language-2c72db300ed5">Want to master programming? Try this process.</a> was originally published in <a href="https://medium.com/career-change-coder">Career Change Coders</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[20 brilliant add-ons for your text-editor. Guaranteed some are new!]]></title>
            <link>https://medium.com/career-change-coder/27-brilliant-add-ons-for-your-text-editor-guaranteed-some-are-new-17dec280666f?source=rss----6617cfae16ba---4</link>
            <guid isPermaLink="false">https://medium.com/p/17dec280666f</guid>
            <category><![CDATA[coding]]></category>
            <category><![CDATA[text-editor]]></category>
            <category><![CDATA[david-lower]]></category>
            <category><![CDATA[programming]]></category>
            <category><![CDATA[web-development]]></category>
            <dc:creator><![CDATA[David Lower]]></dc:creator>
            <pubDate>Sun, 30 Jul 2017 18:28:36 GMT</pubDate>
            <atom:updated>2017-08-06T21:15:34.380Z</atom:updated>
            <content:encoded><![CDATA[<h4>Packages for Atom, Brackets, and Sublime Text.</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*PYclnofllwOYWwrryb1z4g.jpeg" /></figure><p><strong><em>Quick disclaimer</em></strong><em>. I am not promoting one text-editor over the other. They are all brilliant. A big thank you to all the people that made these amazing editors.</em></p><p><em>I personally use Atom. I will mention the packages for Atom </em><strong><em>first</em></strong><em>. The equivalent packages for brackets [B] and Sublime text [S] will be listed at the end of each section.</em></p><h4><strong>1 Live view.</strong></h4><p><a href="https://atom.io/packages/atom-html-preview"><strong>Atom-HTML-preview</strong></a><strong> | </strong><a href="https://atom.io/packages/atom-live-server"><strong>Atom-live-server</strong></a><strong> | </strong><a href="https://atom.io/packages/browser-plus"><strong>Browser-plus</strong></a><strong> | </strong><a href="https://atom.io/packages/open-in-browser"><strong>Open-in-browser</strong></a><strong>.</strong></p><p>These are all versions of a similar thing. They basically incorporate the ability to have a live view of your progress as you code. Choose which you prefer. I have found HTML-preview to be glitchy on some occasions.</p><p><strong>[B]</strong> Already integrated. <strong>[S]</strong> <a href="http://gcollazo.github.io/BrowserRefresh-Sublime/">Browser-refresh</a> | <a href="https://packagecontrol.io/packages/View%20In%20Browser">View-in-browser</a>.</p><h4><strong>2 Emmet.</strong></h4><p>I won’t go into the details of this particular package because it is loaded with a lot of features. It is simply a must. Get it.</p><p>Same link for all 3 editors. <a href="https://emmet.io/download/">Emmet</a>.</p><h4><strong>3 </strong><a href="https://atom.io/packages/atom-beautify"><strong>Beautify</strong></a><strong> | </strong><a href="https://atom.io/packages/atom-css-clean"><strong>Atom-css-clean</strong></a><strong> | </strong><a href="https://atom.io/packages/aligner"><strong>Aligner</strong></a><strong> | </strong><a href="https://atom.io/packages/atom-css-comb"><strong>Atom-css-comb</strong></a><strong>.</strong></h4><p>These packages will add all the correct spacing and indentations to your code. They will align everything cleanly and correctly. Beautify can be used for nearly all of the different programming languages.</p><p><strong>[B]</strong> <a href="https://github.com/brackets-beautify/brackets-beautify">Beautify</a> | <a href="https://github.com/i-akhmadullin/brackets-csscomb">CSS-comb</a>. <strong>[S]</strong> <a href="https://packagecontrol.io/packages/HTML-CSS-JS%20Prettify">Prettify</a> | <a href="https://github.com/csscomb/sublime-csscomb">CSS-comb</a>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/972/1*nSz8UPLFrDcMa_k3wFoLmQ.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/970/1*0_-K1m1pCuVjrdVaAoNYZA.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/785/1*vHb6Acu6bFhYb4oRRi-HLQ.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/789/1*dPgO5UEgHY6HWvjHfvgVSQ.png" /></figure><h4><strong>4 </strong><a href="https://atom.io/packages/color-picker"><strong>Color-picker</strong></a>.</h4><p>Using the shortcut ‘cmd-shift-c’ will bring up a color palette where you can choose a whole host of colors. Includes RGB, HEX, HSL, HSV, and transparency.</p><p><strong>[B]</strong> <a href="https://github.com/mikailcolak/brackets-color-picker">Color-picker</a>. | <a href="https://github.com/FreaKzero/brackets-swatcher">Swatcher</a>. <strong>[S]</strong> <a href="https://packagecontrol.io/packages/ColorPick">Color-picker</a>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/700/1*bD09GxbP-_gWGDzji82E7w.jpeg" /></figure><h4><strong>5 </strong><a href="https://atom.io/packages/pigments"><strong>Color-pigment</strong></a>.</h4><p>This basically highlights the color value in CSS. For example, #fff will be highlighted white. This gives a nice visual overview of the entire file.</p><p><strong>[B]</strong> <a href="http://brackets.dnbard.com/extension/custom-color-highlighter">Color-marker</a>. <strong>[S]</strong> <a href="https://packagecontrol.io/packages/Color%20Highlighter">Color-highlighter</a>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/850/1*P9DtO4eZxmOIjAIispB8fA.png" /></figure><h4><strong>6 </strong><a href="https://atom.io/packages/autoprefixer"><strong>Autoprefixer</strong></a><strong>.</strong></h4><p>Will scan your CSS file and add additional prefixes to your code for older browser support.</p><p><strong>[B]</strong> <a href="https://github.com/mikaeljorhult/brackets-autoprefixer">Autoprefixer</a>. <strong>[S]</strong> <a href="https://packagecontrol.io/packages/Autoprefixer">Autoprefixer</a>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/752/1*Me9fwruqR0iBxYvXUieeEw.png" /></figure><h4><strong>7 </strong><a href="https://atom.io/packages/file-icons"><strong>File-icons</strong></a><strong>.</strong></h4><p>Adds color and the file language symbol to all your files throughout your text-editor. Gets rid of the boring default file symbols and gives better visual referencing.</p><p><strong>[B]</strong> <a href="https://github.com/drewbkoch/Brackets-File-Icons">File-icons</a>. <strong>[S]</strong> <a href="https://packagecontrol.io/packages/A%20File%20Icon">File-icon</a>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/198/1*JlZotwAybDUdL5YLuzTpPQ.png" /></figure><h4><strong>8 </strong><a href="https://atom.io/packages/duplicate-line-or-selection"><strong>Duplicate-line-or-section</strong></a><strong>.</strong></h4><p>This basically adds the ability to duplicate a line or highlighted section for Atom using cmd-shift-D. Sublime and Brackets have this already integrated. Saves having to copy and paste all the time. Really is a simple, but brilliant package.</p><p><strong>[B]</strong> Integrated. <strong>[S]</strong> Integrated.</p><h4><strong>9 </strong><a href="https://atom.io/packages/minimap"><strong>Mini-map</strong></a><strong>.</strong></h4><p>This adds a small column, outlining the overall view of your code, to the right of your main pane. Gives a better overview, for improved navigation.</p><p><strong>[B]</strong> <a href="https://github.com/zorgzerg/brackets-minimap">Mini-map</a>. <strong>[S]</strong> Integrated.</p><h4><strong>10 </strong><a href="https://atom.io/packages/highlight-line"><strong>Highlight-line</strong></a><strong>.</strong></h4><p>Simply adds a solid line of color to the top and bottom of the section you are highlighting. Just offers better visualisation when highlighting sections of code.</p><p><strong>[B]</strong>Couldn’t find one. <strong>[S] </strong>Check first comment at the end for solution.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*RyCyzNH96eGiQuFOFEIqyg.png" /></figure><h4><strong>11 </strong><a href="https://atom.io/packages/highlight-selected"><strong>Highlight-selected</strong></a><strong>.</strong></h4><p>If a word appears multiple times it will highlight all of them by clicking on a single one.</p><p><strong>[B]</strong> <a href="https://github.com/enturn/brackets-quick-search">Quick-search</a>. <strong>[S]</strong> <a href="https://packagecontrol.io/packages/WordHighlight">Word-highlight</a>.</p><h4><strong>12 </strong><a href="https://atom.io/packages/linter"><strong>Linter</strong></a><strong>.</strong></h4><p>Linter is a program that scans your code and reveals errors. Missed ; or space or {. Whatever the error, it will reveal it. Linter is present for multiple languages. Usually, you have to install the main linter package and then add the individual linter-specific-language add-ons.</p><p><a href="https://atom.io/packages/linter-csslint">linter-csslint</a> | <a href="https://atom.io/packages/linter-scss-lint">linter-scss-lint</a> | <a href="https://atom.io/packages/linter-sass-lint">linter-sass-lint</a> | <a href="https://atom.io/packages/linter-htmlhint">linter-htmlhint</a> | <a href="https://atom.io/packages/linter-jshint">linter-jshint</a></p><p>[B] <a href="https://github.com/MiguelCastillo/Brackets-InteractiveLinter">Brackets-interactiveLinter</a>. [S] <a href="https://packagecontrol.io/search/linter">Linter</a>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/646/1*jo78wRT8v3P3xMAUkMs06g.png" /></figure><h4><strong>13 </strong><a href="https://atom.io/packages/git-plus"><strong>Git-plus</strong></a><strong> | </strong><a href="https://atom.io/packages/git-plus-toolbar"><strong>Git-plus-toolbar</strong></a><strong>.</strong></h4><p>Gives you the ability to add, commit and push to your GitHub account without using Terminal. Offers various other features.</p><p><strong>[B]</strong> <a href="https://github.com/zaggino/brackets-git">Brackets-git</a>. <strong>[S]</strong> <a href="https://packagecontrol.io/packages/Git">Git</a>.</p><h4><strong>14 </strong><a href="https://atom.io/packages/todo"><strong>Todo</strong></a><strong>.</strong></h4><p>Almost like a todo list app inside the editor. It will search across multiple files for the todo you are searching for. Has a separate pane to manage and select all your todos. It is a complete package.</p><p><strong>[B]</strong> <a href="https://github.com/mikaeljorhult/brackets-todo">Brackets-todo</a>. <strong>[S]</strong> <a href="https://packagecontrol.io/packages/TodoReview">Todo-review</a>.</p><h4><strong>15 </strong><a href="https://atom.io/packages/ask-stack"><strong>Ask-stack</strong></a><strong>.</strong></h4><p>Type your question and it will open a stack browser inside the editor. Has multiple options and gives quick access to answers your need without leaving your text-editor.</p><p><strong>[B] [S]</strong> Could not find alternative.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*BV9yNMz5VnvlyHD-fEZWag.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*dNo5nrnNQ-CYXeLAdHtkuw.png" /></figure><h4><strong>16 </strong><a href="https://atom.io/packages/platformio-ide-terminal">PlatformIO-IDE-Terminal</a><strong>.</strong></h4><p>Opens terminal inside of the text-editor so you don’t have to leave it. Has lots of editing features, colors and texts etc.</p><p><strong>[B]</strong> <a href="https://github.com/artoale/brackets-terminal">Brackets-terminal</a>. <strong>[S]</strong> <a href="https://packagecontrol.io/packages/TerminalView">Terminal-view</a>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*vX1qjseJ0X9ovzTZUXARZg.png" /></figure><h4><strong>17 </strong><a href="https://atom.io/packages/atom-minify"><strong>Atom-minify</strong></a><strong>.</strong></h4><p>Gives you the option to minify your CSS and JS files inside your editor.</p><p><strong>[B]</strong> <a href="https://github.com/abagshaw/brackets-minifier">Minifier</a>. <strong>[S]</strong> <a href="https://packagecontrol.io/packages/Minifier">Minifier</a>.</p><h4><strong>18 </strong><a href="https://atom.io/packages/advanced-open-file"><strong>Advanced-open-file</strong></a><strong>.</strong></h4><p>A better more comprehensive ability to control, find and make new files within the editor itself.</p><p><strong>[B] [S]</strong> I believe both are already incorporated.</p><h4>19 <a href="https://atom.io/packages/jumpy">Jumpy</a>.</h4><p>Jumpy is an interesting package. Using the shift-enter shortcut brings up lots of mini keybindings, that once typed in will instantly move the cursor to that area. Sounds weird. Visit the link for full understanding. Gives possibility to move around the text-editor without using a mouse.</p><p><strong>[B] [S]</strong> Not found an equivalent.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/640/1*624S_NC4Gkt4gnNFoLs_GA.jpeg" /></figure><h4>20 <a href="https://atom.io/packages/quick-editor">Quick Editor</a>.</h4><p>This package allows you to editor your CSS within an HTML file. Very similar to what is native in Brackets.</p><p><strong>[B]</strong> Incorporated. <strong>[S]</strong> Not found.</p><p>That is all for this week. I hope some of these packages bring fruition to your coding. Until next Sunday… peace out.</p><h4>Join us on <a href="https://www.facebook.com/groups/1808933362696140/">Facebook</a> &amp; <a href="https://careerchangecoders.herokuapp.com/">Slack</a>.</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*89nvsOL_9Dr5xbcwU522Xw.png" /></figure><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=17dec280666f" width="1" height="1" alt=""><hr><p><a href="https://medium.com/career-change-coder/27-brilliant-add-ons-for-your-text-editor-guaranteed-some-are-new-17dec280666f">20 brilliant add-ons for your text-editor. Guaranteed some are new!</a> was originally published in <a href="https://medium.com/career-change-coder">Career Change Coders</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Major Props: First Thoughts on React]]></title>
            <link>https://medium.com/career-change-coder/major-props-first-thoughts-on-react-2c84318e4f49?source=rss----6617cfae16ba---4</link>
            <guid isPermaLink="false">https://medium.com/p/2c84318e4f49</guid>
            <category><![CDATA[self-improvement]]></category>
            <category><![CDATA[javascript]]></category>
            <category><![CDATA[react]]></category>
            <category><![CDATA[career-change-coders]]></category>
            <category><![CDATA[web-development]]></category>
            <dc:creator><![CDATA[Jonathan Haines]]></dc:creator>
            <pubDate>Sat, 29 Jul 2017 20:32:15 GMT</pubDate>
            <atom:updated>2017-08-06T07:29:07.241Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/425/1*b3oso8WqOb71Y-bTogH4Kw.gif" /></figure><p>React is fun. After just a week, I’m seeing a completely new way to tackle the frontend and frankly, it’s both visually appealing and increasingly terrifying. If you’re new to React like me (or haven’t touched it at all), my first impressions would be of those <a href="https://en.wikipedia.org/wiki/Matryoshka_doll">Matryoshka dolls</a> from Russia. There are many dolls, but through a series of doll-inception, all sized dolls can be contained within the largest. In terms of organizing your code, this is neat. Components may be stored within larger components, which in turn render any actions in your application.</p><p>Yes, that’s cool, you say, but is that all there is? Is the whole hype-train coming from a bunch of OCD developers who like to keep their code as tidy as possible?</p><p>Maybe a little. But wait! There’s more! Just take a look at this code!</p><pre>render() {</pre><pre>return (</pre><pre>&lt;div className=&quot;App&quot;&gt;</pre><pre>&lt;Header onClick={e =&gt; this.resetGame(e)}/&gt;</pre><pre>&lt;/div&gt; <br>   )<br>}</pre><p>In the first line, we’re calling a render function. Pretty standard stuff in JavaScript. Within that we have a return followed by a parenthesis (semi-weird) and then what looks like… HTML… Is that you? Things are looking odd. Then, within that header, we have an arrow function and… and… okay, this is full-blown weird.</p><p>Or not.</p><p>This is what’s called JSX, a syntax extension of JavaScript that allows us to do our typical JavaScript coding that has the structure of HTML.</p><p>Which brings us to <a href="http://babeljs.io/">Babel</a>.</p><p>In 2015, ES6 became the latest release of the ECMAScript language specification, but up until now, it has not been standardized. Certain browsers still cannot support ES6 functionality, which is a shame, because arrow functions are pretty awesome (especially since they transcend the lexical scope and change the meaning of the ‘this’ value).</p><p>Fortunately, there is a solution. The JavaScript compiler Babel is able to take everything it sees and turn ES6 into code that runs on whatever browser you’re using. That includes the funky stuff, like JSX, spread operators, and arrow functions .</p><p>What this does is give a React application a unique feel that feels surprisingly comfortable. Consider the following HTML:</p><pre>&lt;button type=&quot;button&quot; onclick=&quot;handleClick()&quot;&gt;Click me&lt;/button&gt;</pre><p>…and then imagine this function running in the JavaScript file:</p><pre>function handleClick(e) {<br>  alert(&#39;I just got handled&#39;)<br>}</pre><p>This simple pairing is similar to how React uses what are called Props — short for properties.</p><p>Remember the Russian doll analogy? What’s cool about React is that the parent component (imagine the largest of the dolls) can send down properties to its children, who in turn use these properties in their much smaller component. What ends up happening is each smaller stateless component is used specifically for one use, making it extremely easy to figure out what the point of a specific component is. This is especially important for folks like myself who have to work on ameliorating their disorganized code.</p><p>There is plenty more to learn in React, as I still have yet to tackle Redux, the state manager of the bunch. I’m especially excited about the capabilities of React Native, and how it can build mobile applications for both iOS and Android.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/578/1*GqKCwu0iDD0h3XRn8OB9Kw.png" /></figure><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=2c84318e4f49" width="1" height="1" alt=""><hr><p><a href="https://medium.com/career-change-coder/major-props-first-thoughts-on-react-2c84318e4f49">Major Props: First Thoughts on React</a> was originally published in <a href="https://medium.com/career-change-coder">Career Change Coders</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Learning web development? Feel like you are getting nowhere and that it may never pay off?]]></title>
            <link>https://medium.com/career-change-coder/learning-web-development-feel-like-you-are-getting-nowhere-and-that-it-may-never-pay-off-1a267d7068ca?source=rss----6617cfae16ba---4</link>
            <guid isPermaLink="false">https://medium.com/p/1a267d7068ca</guid>
            <category><![CDATA[entrepreneurship]]></category>
            <category><![CDATA[life-lessons]]></category>
            <category><![CDATA[rick-west]]></category>
            <category><![CDATA[web-development]]></category>
            <category><![CDATA[self-improvement]]></category>
            <dc:creator><![CDATA[Rick West]]></dc:creator>
            <pubDate>Sat, 29 Jul 2017 12:05:11 GMT</pubDate>
            <atom:updated>2018-06-30T22:37:11.668Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*GjGMzfhBJgwVzoi69xT9gQ.jpeg" /></figure><p>I saw this Facebook post crop up on one of the various ‘newbie programming groups’ and i’m pretty sure it’s a feeling that everyone can relate to…</p><blockquote>Do any of you ever just get overwhelmed and discouraged by how much you don’t know, and a feeling that you’ll never get to the point where this all “pays off”?</blockquote><blockquote>I’ve been working on FreeCodeCamp for the past month, and I’m enjoying it, but I also sometimes get this creeping feeling that it’s all a waste of time because I’ll never “be a real developer”, or even have enough knowledge to pretend I’m one. Does this happen to any of you, as well? What do you do to combat it?</blockquote><h4>My response…</h4><p>I think everybody gets this feeling, but you’d be surprised how little you really need to know to get started.</p><p>I work as a junior developer, under a top senior developer with 20 years experience. His favourite thing to tell me is…</p><blockquote>“you don’t need to know everything to be productive”</blockquote><p>He will often be researching things and searching Stack Overflow for solutions. Why?…because you can’t know everything.</p><p>Instead, my advice is, <strong><em>be confident in what you do know</em></strong>. You are never going to feel ready to apply for that job or start that big project. So you might as well stop waiting.</p><p>There are software features, bug fixes, websites to develop that are perfect jobs for a beginner or someone with your current skillset to work on.</p><p>Know only a little html/CSS ?— you can already use a template and build a static site for someone — Know a bit more and you can develop this from scratch.</p><p>Know a little jQuery or JavaScript? — You can add some pretty nice features to these sites.</p><p>Learn a little PHP and you can add a working contact form. Learn more PHP and you can start working on custom Wordpress themes.</p><blockquote>…Learn how to use Google and you can build anything!</blockquote><p>Seriously though, you get the point. You can be productive and useful with even a basic skill level. And you will learn most by jumping in head first and building these things. Stop thinking that you shouldn’t apply for that job, or take on that freelance project. Although you may only have basic skills, you can always bring value to someone!</p><p>Try not to worry about React/Angular/Rails/Laravel or the other next big framework until you have the fundamentals down. These will just confuse you, over complicate things and overwhelm you more. This all comes with experience!</p><p>Confidence comes with building things and getting shit done!</p><blockquote>Focus on what you do know and don’t worry about what you don’t! Keep Going! Build things! You will be surprised what you are capable of!</blockquote><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fupscri.be%2F44c3d9%3Fas_embed%3Dtrue&amp;dntp=1&amp;url=https%3A%2F%2Fupscri.be%2F44c3d9%2F&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=upscri" width="800" height="400" frameborder="0" scrolling="no"><a href="https://medium.com/media/7eb504738cbb03039c147a36d693aa77/href">https://medium.com/media/7eb504738cbb03039c147a36d693aa77/href</a></iframe><p>Thank you for reading! :-) If you enjoyed it, hit that heart ♡ button below. I really appreciate your support and it helps other people see the story.</p><p>I am always happy to hear from like minded people, so please, feel free to say hello on <a href="http://twitter.com/rick_west8">twitter</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=1a267d7068ca" width="1" height="1" alt=""><hr><p><a href="https://medium.com/career-change-coder/learning-web-development-feel-like-you-are-getting-nowhere-and-that-it-may-never-pay-off-1a267d7068ca">Learning web development? Feel like you are getting nowhere and that it may never pay off?</a> was originally published in <a href="https://medium.com/career-change-coder">Career Change Coders</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Frontend, Backend, and the Dinosaur in Between]]></title>
            <link>https://medium.com/career-change-coder/frontend-backend-and-the-dinosaur-in-between-58916ba2e893?source=rss----6617cfae16ba---4</link>
            <guid isPermaLink="false">https://medium.com/p/58916ba2e893</guid>
            <category><![CDATA[nodejs]]></category>
            <category><![CDATA[backend-development]]></category>
            <category><![CDATA[career-change-coders]]></category>
            <category><![CDATA[web-development]]></category>
            <category><![CDATA[javascript]]></category>
            <dc:creator><![CDATA[Jonathan Haines]]></dc:creator>
            <pubDate>Mon, 24 Jul 2017 23:04:08 GMT</pubDate>
            <atom:updated>2017-08-06T07:31:27.181Z</atom:updated>
            <content:encoded><![CDATA[<p>One of the many reasons JavaScript has taken off in recent years is the success of NodeJS, an open-source, cross-platform JavaScript run-time environment for executing JavaScript code server-side. Now, full-stack projects can be completed with this one language alone… as well as about 400 libraries and packages alongside.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/768/1*ebAaXhkizFNnTMNin12A4A.png" /><figcaption>look at all those packages!</figcaption></figure><p>A week before writing this, myself and another coding newbie wanted to build an app that recommended interests based on past likes. We would use the <a href="https://tastedive.com/read/api">TasteDive API</a>, which contains a database of books, movies, and music built upon similarities. Long story short, this would be the biggest project I’ve ever tackled.</p><p><strong>Schemes of Schema</strong></p><p>I didn’t sleep much this past week. Quiet night hours were spent researching how to do specific things like create a schema using Mongoose, then add a sub-schema within that first schema.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/678/1*xUq2G8b6eNfky-Q6p8RzEw.png" /><figcaption>my diabolical schema</figcaption></figure><p>The point of the schema is to hold onto users in a database (living on <a href="https://mlab.com/welcome/">mLab</a>), then having each of those users have a curated list of things they enjoy. If you take a look at the listSchema, after adding a particular movie (let’s say Die Hard) to his/her list, a user could give the date which the film was seen and a rating out of five. <a href="http://www.tuicool.com/articles/7niyym">While that was the initial plan, timing only allowed my partner and I to add names to the database</a>. I’d also like to mention that the userSchema currently has all required fields set to false. When you do as much testing as we have, constantly logging in is a burden that we did not want to deal with.</p><p><strong>Connecting front to back</strong></p><p>When first planned, I didn’t realize the intricacies of connecting the front-end (where all my event handlers and things were living) to the backend (where all my endpoints were living). What we ended up doing was <a href="https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie">creating a cookie</a> that logs a username on the front-end, then is brought to the backend for storing the user in a database. While I’m an advocate for frequent cookie eating, the use of a cookie for this purpose is still a bit new to me, so it ended up causing more of a headache than anything.</p><p><strong>Testing… 1, 2, 3</strong></p><p>Before I make any promises, the current state of this app is ‘in progress’ so while we are using <a href="https://travis-ci.org/">Travis CI</a> to check our tests and <a href="https://dashboard.heroku.com/login">Heroku</a> for deployment, there are still a few bugs that need to be worked out. This means the app is currently only working properly on my machine (UPDATE! The app is currently living <a href="https://whispering-lowlands-15370.herokuapp.com/">here</a>).</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/696/1*GtAcn35X_BByKhOXnOJawQ.png" /></figure><p>Starting this app, I wasn’t too keen on testing. It seemed like a waste of time that I didn’t necessarily have. However, the integration of Mocha and Chai has led me to believe I went about this project all wrong. Testing is important, especially for a big project that has plenty of bells and whistles. The initial planning stage should have included more of a documented chart of the user experience. If I click this button, at which endpoint do I end up? When I update this entry, am I correctly using a PUT request?</p><p>The biggest takeaway from this first seemingly huge app is that the amount that I’ve learned outweighs the amateur look and feel for my code. I know this can be done cleaner.</p><p><strong>The “Finished” Product</strong></p><p>Finished is a strong word, but at least there is a semi-working app now.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*hv4O6aqqdGyC_clxeEqXAQ.png" /><figcaption>Authentication is quite the feat to get working!</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*2txm-7ouIV_aw69KZnB8fw.png" /><figcaption>Movies, books, or music can be added to a personal library.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*DEeualm0PFl-RwWFZIp2Vg.png" /><figcaption>Then from that library, similar titles that you may also enjoy. Not too much functionality, but it’s a long road ahead.</figcaption></figure><h4>Thank you for reading! :) If you enjoyed this story and are interested in others like it then please recommend, share and follow the <a href="http://medium.com/career-change-coder">Career Change Coders</a> publication. Your support means a lot to our community.</h4><h4>If you are currently on your own journey and would like to share your story and experience with others, in a similar position , then please follow our <a href="https://medium.com/career-change-coder/career-change-coder-whats-it-all-about-how-can-you-get-involved-5db6dd248fa1">guidelines on contributing to our publication</a>.</h4><h4>Career Change Coders are now on Slack. Please <a href="https://careerchangecoders.herokuapp.com/">join our team</a> and help our community grow bigger and better.</h4><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=58916ba2e893" width="1" height="1" alt=""><hr><p><a href="https://medium.com/career-change-coder/frontend-backend-and-the-dinosaur-in-between-58916ba2e893">Frontend, Backend, and the Dinosaur in Between</a> was originally published in <a href="https://medium.com/career-change-coder">Career Change Coders</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Terminal & GitHub — Let’s make it REALLY simple!]]></title>
            <link>https://medium.com/career-change-coder/command-line-terminal-github-lets-make-it-really-simple-b47280341354?source=rss----6617cfae16ba---4</link>
            <guid isPermaLink="false">https://medium.com/p/b47280341354</guid>
            <category><![CDATA[web-development]]></category>
            <category><![CDATA[david-lower]]></category>
            <category><![CDATA[git]]></category>
            <category><![CDATA[learning-to-code]]></category>
            <category><![CDATA[programming]]></category>
            <dc:creator><![CDATA[David Lower]]></dc:creator>
            <pubDate>Sun, 23 Jul 2017 22:01:07 GMT</pubDate>
            <atom:updated>2017-08-09T13:55:28.571Z</atom:updated>
            <content:encoded><![CDATA[<h4>Controlling GitHub with terminal — uncomplicating the beast.</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*DkUwCbK1lKD3BjDIScvTkw.jpeg" /></figure><pre>This grey box indicates what you should write when executing commands in terminal/command-line.</pre><pre>ALWAYS write exactly what you see in this grey box. Hit enter to execute the command.</pre><h4><strong>1 Basic ‘chain of command’.</strong></h4><p>This is what you do to update your files on your computer (local) to GitHub (host). <em>These commands assume you have already set up a repository (repo)</em>. Section 3 covers, creating a repo.</p><ol><li>git status</li><li>git add</li><li>git commit</li><li>git push</li></ol><p>This is the basic chain of command you will use every time you update your files to GitHub.</p><pre>git status</pre><p>This asks terminal what is the current state of play with all your files in your repo. It will <em>highlight everything that has changed in red</em>. Usually, this is divided into two sections — changes made to existing files and new files created. If you have deleted files this will also show.</p><pre>git add .</pre><p>This will add ALL updates made to ALL files and will also add ALL new files created. That is what the full-stop does — basically ALL. You can additionally just add the file name instead of the full-stop to add individual files. For example…</p><pre>git add index.html </pre><p>Once you complete this command and performed another git status, <em>everything will turn green</em> to indicate files/changes have been added. Important to note, although they have been added they still need a final confirm action.</p><p><em>[for those interested, but not important for this blog piece, there are two other related commands “git add -A” and “git add -u”. I’ll let you explore the </em><a href="https://stackoverflow.com/questions/572549/difference-between-git-add-a-and-git-add?rq=1"><em>differences here</em></a><em>]</em>.</p><pre>git commit -m “<em>write your own message</em>” </pre><p>This is the confirmation. Everything has been added and you have told terminal to send the updates to your repo on Github. The commit is basically you saying ‘yep I commit to this action — confirm’. Notice it is good practice and mandatory to write a message, this is the -m part, (m) for message. Always include the message inside of quotation marks. The message is basically communication with others who may also be working on the same file.</p><pre>git push</pre><p>This is your final command. Everything is ready and you have confirmed. Now to just press the send button and off it goes — your repo is now fully up to date.</p><p><strong><em>Git status is just a visual helper and is not expressly needed to update your repo to GitHub. Steps 2–4 are needed every time, however.</em></strong></p><h4><strong>2 Navigating within terminal</strong>.</h4><p>Here are the commands to search and locate your repository files.</p><ol><li>pwd</li><li>ls</li><li>ls -a</li><li>cd</li><li>..</li></ol><pre>pwd</pre><p><em>=print working directory</em>. In other words, tell me where I am. It will list the hierarchal file tree including the directory you are in.</p><pre>ls </pre><p><em>=list</em>. This command will list all the visible files in that directory. Does NOT show hidden files.</p><pre>ls -a </pre><p><em>=list and list all hidden files</em>. Will show all invisible files as well. By default, invisible files are not shown in terminal.</p><pre>cd your/file/location </pre><p><em>cd=call directory</em>. This is basically the command telling terminal I would like to go to this directory. It <strong>does not</strong> work just writing your repo name. It is not like spotlight or search. You have to write the entire hierarchal tree or file pathway. By default, terminal will always start you in the very root file of your computer system. This is defined by this symbol ‘~’.</p><p>So an example… I called my repo ‘pigs-can-fly’. For some reason, I put it in loads of other files. Let’s say this is the tree pathway to get to my repo ~/documents/my-files/pigs/pig-pics/another-pointless-file/pigs-can-fly. This is the full path and so, therefore, this is the full command</p><pre>cd documents/my-files/pigs/pig-pics/another-pointless-file/pigs-can-fly</pre><p>I don’t need to write ‘~’ because I will automatically start in that repository. Unfortunately, you cannot just write</p><pre>cd pigs-can-fly</pre><p>-</p><pre>cd </pre><p>and</p><pre>..</pre><p>These two commands will navigate you between repositories. Say I am in ‘pig-pics’ and I type cd I will go straight back to the root file ‘~’. If I type .. I will go back one directory — so I’ll end up in ‘pigs’.</p><p>That is navigating with terminal.</p><h4><strong>3 Setting up a repository</strong>.</h4><p>This is performed via GitHub.</p><p>On GitHub go to Profile Page&gt;Repositories Tab&gt;NEW (green button)&gt;Name the Repository&gt;Add a README file (good practice)&gt;choose whether to add .gitignore file. DONE.</p><p><em>[README file is basically a log or diary of what you are doing or making. .gitignore is a file that tells your repo to ignore other certain files. </em><a href="https://git-scm.com/docs/gitignore"><em>Read more here</em></a><em>.]</em></p><p>Once you have set up your repo, open it, and then press the green clone button. Copy URL inside.</p><p>Now we need to link GitHub to your computer. We don’t have to create any files on your computer. Simply open terminal and type this command.</p><pre>git clone “url just copied”</pre><p>URL goes inside quotations and job done. Terminal will create a file with the same name as your repo. <strong>Important to note</strong> this file will be placed in your master or root file on your computer (usually this file is named after you). If you want the repo to be saved in another location make sure you are in that directory before you perform the clone command. So if I want my ‘pigs-can-fly’ repo to be saved in the ‘another-pointless-file’. I have to make sure I have navigated to ‘another-pointless-file’ first.</p><p>NOW, WHAT IF… you already have a project on your computer that you want to upload to GitHub? How do you do this on terminal?</p><p>First, make a repo on GitHub and copy that URL. These are the commands to familiarise yourself with.</p><ol><li>mkdir</li><li>git init</li><li>git remote add origin</li><li>git push origin master</li></ol><pre>mkdir name-you-will-give-repo</pre><p><em>Mkdir = make directory</em>. Give a name to the repo you want to create. In my case…</p><pre>mkdir pigs-can-fly</pre><p>YOU DO NOT need to do this step if you already have a file or project started that you want to add.</p><p>Once created, you will then need to transform the repository into a git repository. Going a bit gangster we put ‘git in it’. Type the command.</p><pre>git init</pre><p>Then you run through the chain of command mentioned at the beginning. Status, add and commit (exactly as before). The ‘push’ part is slightly different here.</p><pre>git remote add origin &quot;url of repo created in GitHub&quot;</pre><p>This command is basically saying, ‘go to GitHub and add the origin file at this URL. After this your files on your computer will now be connected with the repo on GitHub.</p><pre>git push -u origin master</pre><p>This is the last command, push. Slightly different than before because you have to specify where you are pushing to. In this case, you are pushing to the master branch of your repo. Repos can have many different branches, but when you have just created a repo it will always default to add it to the master branch.</p><p><em>[NOTE these last two steps mentioned only need to be performed once in the initial setup of a repo. Once you have synced your files with GitHub, you then revert back to the chain of command as highlighted at the beginning.]</em></p><h4><strong>4 Adding files with terminal</strong>.</h4><p>This is really simple.</p><ol><li>touch</li></ol><p>Using the touch command we can create any file within our repo without having to leave terminal. If I want to make an index.html file I type this command.</p><pre>touch index.html</pre><p>You can then do an ‘ls’ command to see the file you just created. You can create any file, for example, stylesheet.css, README file and even a .gitignore.</p><h4><strong>5 Final conclusions</strong>.</h4><p>Now it is fully possible within some text-editors to have GitHub integration. I use Atom and within that, I can use a few shortcut keys to instantly add, commit and push my changes to GitHub. I never need to open terminal. The package is called <a href="https://atom.io/packages/git-plus">Git-plus</a>.</p><p>I would however strongly recommend that you get used to using terminal, especially if you are serious about back-end dev.</p><p>To keep this piece really simple, which was the aim, I have omitted merging, forking, and conflicts within repos. I have also not explained the .gitignore files.</p><p>To be honest at an early stage when just beginning with GitHub you are unlikely to need anything more advanced than this.</p><h4>Resources.</h4><p>Finally, you should check out this <a href="https://youtu.be/Fxe8BW8QWa0">youtube series</a>. Probably the best, most concise introduction to terminal I have come across. It really is very good.</p><p>Another youtube based tutorial — more user-friendly, but longer, is by Travis Neilson at DevTips. His <a href="https://youtu.be/1h9_cB9mPT8">series on GitHub</a> is solid.</p><p>This article is also very well written. <a href="https://www.texniq.de/en/web-engineering-i/create-local-git-repo-and-push-to-github">Setting up a repo from local to Github</a>.</p><p>All the best everyone and I will see you again next Sunday.</p><h4>Join us on <a href="https://www.facebook.com/groups/1808933362696140/">Facebook</a> &amp; <a href="https://careerchangecoders.herokuapp.com/">Slack</a>.</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*89nvsOL_9Dr5xbcwU522Xw.png" /></figure><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=b47280341354" width="1" height="1" alt=""><hr><p><a href="https://medium.com/career-change-coder/command-line-terminal-github-lets-make-it-really-simple-b47280341354">Terminal &amp; GitHub — Let’s make it REALLY simple!</a> was originally published in <a href="https://medium.com/career-change-coder">Career Change Coders</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>