<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Learning on Camping Coder</title><link>https://www.campingcoder.com/tags/learning/</link><description>Recent content in Learning on Camping Coder</description><generator>Hugo</generator><language>en-US</language><copyright>All rights reserved</copyright><lastBuildDate>Wed, 16 May 2018 00:00:00 -0500</lastBuildDate><atom:link href="https://www.campingcoder.com/tags/learning/index.xml" rel="self" type="application/rss+xml"/><item><title>Hugo and droppy, Chromebook friends</title><link>https://www.campingcoder.com/2018/05/hugo-and-droppy-chromebook-friends/</link><pubDate>Wed, 16 May 2018 00:00:00 -0500</pubDate><guid>https://www.campingcoder.com/2018/05/hugo-and-droppy-chromebook-friends/</guid><description>&lt;p&gt;&lt;figure class="image-figure"&gt;&lt;img src="https://www.campingcoder.com/post/20180510-droppy.svg" alt="droppy logo" loading="lazy" decoding="async"&gt;&#10; &#10; &#10; &lt;figcaption&gt;droppy logo&lt;/figcaption&gt;&#10; &#10; &#10;&lt;/figure&gt;&#10;&lt;/p&gt;&#10;&lt;p&gt;If you read the post on &lt;a href="https://www.campingcoder.com/2018/02/hugo---gulp--chromebook-awesomeness/" target="_blank" rel="noopener noreferrer"&gt;Hugo + gulp = Chromebook awesomeness&lt;/a&gt; then you know that there are a lot of steps in it, and a lot of parts moving to make the solution work. While it does meet the need I noticed that it&amp;rsquo;s a little much for daily use. That&amp;rsquo;s really where &lt;a href="https://github.com/silverwind/droppy" target="_blank" rel="noopener noreferrer"&gt;droppy&lt;/a&gt; comes into the picture. It runs on Raspberry Pi&amp;rsquo;s, so its light weight, and has a great interface - best of all it has a code editor built right in!&lt;/p&gt;</description></item><item><title>Hugo + SHH - gulp = a new workflow</title><link>https://www.campingcoder.com/2018/05/hugo---shh---gulp--a-new-workflow/</link><pubDate>Thu, 03 May 2018 00:00:00 -0500</pubDate><guid>https://www.campingcoder.com/2018/05/hugo---shh---gulp--a-new-workflow/</guid><description>&lt;p&gt;If you ready the post on &lt;a href="https://www.campingcoder.com/2018/02/hugo---gulp--chromebook-awesomeness/" target="_blank" rel="noopener noreferrer"&gt;Hugo + gulp = Chromebook awesomeness&lt;/a&gt; you&amp;rsquo;ll know that I&amp;rsquo;ve been adjusting my workflow to get Hugo to live reload on Chrome OS. While that solution worked okay, there were a few issues with it.&lt;/p&gt;&#10;&lt;p&gt;First off, the process required that a gulp task be setup to &lt;strong&gt;sync&lt;/strong&gt; the files with the Termux. This isn&amp;rsquo;t a big deal, but as a project grows there&amp;rsquo;s more to sync, which causes the process to slow down. Additionally, it stores a duplicate of the files, which digs into the precious limited space on many Chromebooks.&lt;/p&gt;</description></item><item><title>git stash and pop</title><link>https://www.campingcoder.com/2018/04/git-stash-and-pop/</link><pubDate>Thu, 26 Apr 2018 00:00:00 -0500</pubDate><guid>https://www.campingcoder.com/2018/04/git-stash-and-pop/</guid><description>&lt;p&gt;Sometimes you&amp;rsquo;re in such a rush to write code that you forget to switch branches and only realize later that oops&amp;hellip; wrong branch! What do you do then? Some might even be tempted to &lt;strong&gt;copy&lt;/strong&gt; their code elsewhere, switch branches and then copy it back. Well, there&amp;rsquo;s a better, more &lt;strong&gt;graceful&lt;/strong&gt; way called stash and pop that comes into play. Not only do they give you a way to temporarily store your code on a branch, but they let you move it to other branches as well.&lt;/p&gt;</description></item><item><title>How to use git flow</title><link>https://www.campingcoder.com/2018/04/how-to-use-git-flow/</link><pubDate>Thu, 05 Apr 2018 00:00:00 -0500</pubDate><guid>https://www.campingcoder.com/2018/04/how-to-use-git-flow/</guid><description>&lt;p&gt;git flow is among one of my favorite ways to teach git, and frankly one of my favorite ways to use git. It&amp;rsquo;s a pattern to follow and one of the best parts about git flow is that it makes automation on top of git &lt;em&gt;&lt;strong&gt;very&lt;/strong&gt;&lt;/em&gt; simple. Additionally, most of the graphical user interfaces already have it built in, so you can&amp;rsquo;t lose.&lt;/p&gt;&#10;&lt;h2 id="what-is-it-really"&gt;What is it really?&lt;/h2&gt;&#10;&lt;p&gt;git flow is nothing except a git branching model. If you already read &lt;a href="https://www.campingcoder.com/2018/02/git-branches-simply-explained/" target="_blank" rel="noopener noreferrer"&gt;git branches simply explained&lt;/a&gt; and &lt;a href="https://www.campingcoder.com/2018/03/git-merges-demystified/" target="_blank" rel="noopener noreferrer"&gt;git Merges Demystified&lt;/a&gt; in our git series, then you have all the tools needed to start using git flow. Initially published by Vincent Driessen, the &lt;a href="http://nvie.com/posts/a-successful-git-branching-model/" target="_blank" rel="noopener noreferrer"&gt;git flow model&lt;/a&gt; has been a welcomed pattern for git branching and from there the tie ins to it have been just flowing.&lt;/p&gt;</description></item><item><title>Running Tmux for Termux on a Chromebook</title><link>https://www.campingcoder.com/2018/03/running-tmux-for-termux-on-a-chromebook/</link><pubDate>Thu, 22 Mar 2018 00:00:00 -0500</pubDate><guid>https://www.campingcoder.com/2018/03/running-tmux-for-termux-on-a-chromebook/</guid><description>&lt;p&gt;It&amp;rsquo;s the little things that make writing code much more enjoyable. While I have been extremely happy since &lt;a href="https://www.campingcoder.com/2018/01/resetting-my-chromebook-back-to-stock/" target="_blank" rel="noopener noreferrer"&gt;resetting my Chromebook back to stock&lt;/a&gt;, since I can run all the applications that I need - I really wanted multi window for &lt;a href="https://termux.com/" target="_blank" rel="noopener noreferrer"&gt;Termux&lt;/a&gt;. While Chrome OS will not let you run multiple copies of Termux there is an application called tmux which will allow you to split up the one window into many regions.&lt;/p&gt;</description></item><item><title>Scheduling code deployment with Bitbucket</title><link>https://www.campingcoder.com/2018/03/scheduling-code-deployment-with-bitbucket/</link><pubDate>Thu, 15 Mar 2018 00:00:00 -0500</pubDate><guid>https://www.campingcoder.com/2018/03/scheduling-code-deployment-with-bitbucket/</guid><description>&lt;p&gt;Having a deployment pipeline is an awesome thing, it eliminates the mundane task of deploying changes. Really let&amp;rsquo;s face it, if a task is boring or mundane, then there&amp;rsquo;s likely a chance where a mistake could happen. Sometime though there&amp;rsquo;s a need to re-deploy, or at least deploy code at a certain time, and that&amp;rsquo;s where an overlooked feature in Bitbucket pipeline comes in which is simply called &lt;strong&gt;Schedules&lt;/strong&gt;.&lt;/p&gt;&#10;&lt;p&gt;&lt;figure class="image-figure"&gt;&lt;img src="https://www.campingcoder.com/post/20180315-bitbucket-pipelines-scheduled-runs-2.png" alt="Schedule button" loading="lazy" decoding="async"&gt;&#10; &#10; &#10; &lt;figcaption&gt;Schedule button&lt;/figcaption&gt;&#10; &#10; &#10;&lt;/figure&gt;&#10;&lt;/p&gt;</description></item><item><title>git Merges Demystified</title><link>https://www.campingcoder.com/2018/03/git-merges-demystified/</link><pubDate>Thu, 01 Mar 2018 01:00:00 -0500</pubDate><guid>https://www.campingcoder.com/2018/03/git-merges-demystified/</guid><description>&lt;p&gt;Last time in our git series, we looked into &lt;a href="https://www.campingcoder.com/2018/02/git-branches-simply-explained/" target="_blank" rel="noopener noreferrer"&gt;branching and merging&lt;/a&gt; - setting the ground work for how to merge code when your working by yourself. While that is all well and good, the real power is in collaborating with a team. In this post, we discuss the dreaded merge conflict, what they are, and how to resolve them.&lt;/p&gt;&#10;&lt;h2 id="setting-the-stage"&gt;Setting the stage&lt;/h2&gt;&#10;&lt;p&gt;To explain a merge conflict, it is easier to tell the story of two developers - in out case Dev A and Dev B. They are both awesome developers and always branch from the right branch, check in their code, and write great commit messages. They have both been assigned to different features on our project.&lt;/p&gt;</description></item><item><title>git branches simply explained</title><link>https://www.campingcoder.com/2018/02/git-branches-simply-explained/</link><pubDate>Thu, 22 Feb 2018 01:00:00 -0500</pubDate><guid>https://www.campingcoder.com/2018/02/git-branches-simply-explained/</guid><description>&lt;p&gt;So far in our git series, we&amp;rsquo;ve taken a look at all the steps needed to start using git to track and store your code. We haven&amp;rsquo;t looked into one of the most powerful parts of git which is branches. Branches solves the problem where you might be working on &lt;em&gt;X&lt;/em&gt; at the moment, but &lt;em&gt;Y&lt;/em&gt; needs attention now. Branches additionally help when working with other people on projects. For example, when I first started writing code this seemed so easy and my steps usually included something like:&lt;/p&gt;</description></item><item><title>Hugo + gulp = Chromebook awesomeness</title><link>https://www.campingcoder.com/2018/02/hugo---gulp--chromebook-awesomeness/</link><pubDate>Thu, 15 Feb 2018 00:00:00 -0500</pubDate><guid>https://www.campingcoder.com/2018/02/hugo---gulp--chromebook-awesomeness/</guid><description>&lt;p&gt;One of my favorite things about writing code is that you can learn or fail fast - typically the failures teach you a lot more too. The quick iterations really are fun and when they make your day just an increment better, you get a sense of accomplishment. If you&amp;rsquo;ve read my&#10;&lt;a href="https://www.campingcoder.com/2017/11/running-hugo-on-chromebook/" target="_blank" rel="noopener noreferrer"&gt;initial running Hugo on a Chromebook&lt;/a&gt; post which was followed by the &lt;a href="https://www.campingcoder.com/2018/01/resetting-my-chromebook-back-to-stock/" target="_blank" rel="noopener noreferrer"&gt;Hugo on 100% stock Chromebook&lt;/a&gt; you&amp;rsquo;ll get a sense of how the &lt;em&gt;little&lt;/em&gt; iterations make a difference.&lt;/p&gt;</description></item><item><title>Introducing gisty</title><link>https://www.campingcoder.com/2018/01/introducing-gisty/</link><pubDate>Fri, 19 Jan 2018 00:00:00 -0500</pubDate><guid>https://www.campingcoder.com/2018/01/introducing-gisty/</guid><description>&lt;p&gt;&lt;figure class="image-figure"&gt;&lt;img src="https://www.gistyapp.com/logos/Logo-text-w.svg" alt="gisty logo" loading="lazy" decoding="async"&gt;&#10; &#10; &#10; &lt;figcaption&gt;gisty logo&lt;/figcaption&gt;&#10; &#10; &#10;&lt;/figure&gt;&#10;&lt;/p&gt;&#10;&lt;p&gt;Over the years I&amp;rsquo;ve come to save snippets of code that solve my problems from my projects or the various places on the internet. Doing so has allowed me to be able to quickly reference a block of code from months or years ago. Not only does this save me time, but allows me to continuously update how I&amp;rsquo;m writing code and apply best practices in a consistent manner.&lt;/p&gt;</description></item><item><title>Automated code deployment with Bitbucket and Docker</title><link>https://www.campingcoder.com/2018/01/automated-code-deployment-with-bitbucket-and-docker/</link><pubDate>Thu, 11 Jan 2018 00:00:00 -0500</pubDate><guid>https://www.campingcoder.com/2018/01/automated-code-deployment-with-bitbucket-and-docker/</guid><description>&lt;p&gt;You&amp;rsquo;ve probably heard of Docker, but don&amp;rsquo;t have the time needed to learn or implement it - you probably also want to start automating your builds, because who likes to deploy code? In this post, we&amp;rsquo;ll cover using Docker to deploy code using Bitbucket Pipelines. It will be high level on what docker is and enough to either use someone else&amp;rsquo;s Docker image or build your own - without needing to install Docker on your machine. We will then use that image to deploy our projects source code using Bitbucket Pipelines.&lt;/p&gt;</description></item><item><title>What's a remote in git</title><link>https://www.campingcoder.com/2018/01/whats-a-remote-in-git/</link><pubDate>Thu, 04 Jan 2018 00:00:00 -0500</pubDate><guid>https://www.campingcoder.com/2018/01/whats-a-remote-in-git/</guid><description>&lt;p&gt;&lt;figure class="image-figure"&gt;&lt;img src="https://www.campingcoder.com/post/2017-11-30_Intro-to-git-part-1.png" alt="git logo" loading="lazy" decoding="async"&gt;&#10; &#10; &#10; &lt;figcaption&gt;git logo&lt;/figcaption&gt;&#10; &#10; &#10;&lt;/figure&gt;&#10;&lt;/p&gt;&#10;&lt;p&gt;In the last installment of the Learning git series we took a look at how to start using git to &lt;a href="https://www.campingcoder.com/2017/12/initializing-git/" target="_blank" rel="noopener noreferrer"&gt;version code&lt;/a&gt;. Now that we know how to commit our code, we need to know how to share it, or at least back it up. This is where the remote command comes into play with git.&lt;/p&gt;&#10;&lt;p&gt;In general, a remote is literally a &lt;em&gt;remote&lt;/em&gt; from your current machine. You can set it up a few different ways, but I&amp;rsquo;ll cover the central repository pattern here. With that pattern you can think of a remote as just a big cloud data store -it&amp;rsquo;s more than that, but let&amp;rsquo;s move on for now.&lt;/p&gt;</description></item><item><title>Initializing git</title><link>https://www.campingcoder.com/2017/12/initializing-git/</link><pubDate>Thu, 28 Dec 2017 00:00:00 -0500</pubDate><guid>https://www.campingcoder.com/2017/12/initializing-git/</guid><description>&lt;p&gt;&lt;figure class="image-figure"&gt;&lt;img src="https://www.campingcoder.com/post/2017-11-30_Intro-to-git-part-1.png" alt="git logo" loading="lazy" decoding="async"&gt;&#10; &#10; &#10; &lt;figcaption&gt;git logo&lt;/figcaption&gt;&#10; &#10; &#10;&lt;/figure&gt;&#10;&lt;/p&gt;&#10;&lt;p&gt;Thus far in our Learning git series, we talked about an awful lot of theory and configuration, but haven&amp;rsquo;t actually used git for what git does. In this post we are going to discuss what we need to do in order to start tracking files with git. Additionally, we will review the &lt;em&gt;&lt;strong&gt;scope&lt;/strong&gt;&lt;/em&gt; of git on your files as well.&lt;/p&gt;&#10;&lt;p&gt;Like everything in the git-verse there&amp;rsquo;s more than one way to start using it. We will first look at a few graphical user interfaces, and then move onto the command line. For &lt;em&gt;most&lt;/em&gt; folks the user interface is the route to go while learning git, but the command line really is easy too - it just take a little more when you&amp;rsquo;re learning.&lt;/p&gt;</description></item><item><title>Setting up git</title><link>https://www.campingcoder.com/2017/12/setting-up-git/</link><pubDate>Thu, 21 Dec 2017 05:00:00 -0500</pubDate><guid>https://www.campingcoder.com/2017/12/setting-up-git/</guid><description>&lt;p&gt;&lt;figure class="image-figure"&gt;&lt;img src="https://www.campingcoder.com/post/2017-11-30_Intro-to-git-part-1.png" alt="git logo" loading="lazy" decoding="async"&gt;&#10; &#10; &#10; &lt;figcaption&gt;git logo&lt;/figcaption&gt;&#10; &#10; &#10;&lt;/figure&gt;&#10;&lt;/p&gt;&#10;&lt;p&gt;In the last two post in our Learning git series, we talked about why to use git and the basic pattern you&amp;rsquo;ll find yourself using most often. In this post we are going to walk through the steps needed to get git setup and functioning on both Windows and Chrome OS. It&amp;rsquo;s becoming easier and easier to do this, and hopefully this guide will get you on the right path.&lt;/p&gt;</description></item><item><title>The git cycle</title><link>https://www.campingcoder.com/2017/12/the-git-cycle/</link><pubDate>Thu, 07 Dec 2017 05:00:00 -0500</pubDate><guid>https://www.campingcoder.com/2017/12/the-git-cycle/</guid><description>&lt;p&gt;&lt;figure class="image-figure"&gt;&lt;img src="https://www.campingcoder.com/post/2017-11-30_Intro-to-git-part-1.png" alt="git logo" loading="lazy" decoding="async"&gt;&#10; &#10; &#10; &lt;figcaption&gt;git logo&lt;/figcaption&gt;&#10; &#10; &#10;&lt;/figure&gt;&#10;&lt;/p&gt;&#10;&lt;p&gt;I like rocket ships - one of the best things about living where we do in Florida is that we get to watch the launches from our front porch. So I got to thinking, is git like a rocket ship? I busted out the doodling pad and realized yes it is - even more like one of the new reusable rockets, but that&amp;rsquo;s aside the point.&lt;/p&gt;</description></item><item><title>Intro to git - Part 1</title><link>https://www.campingcoder.com/2017/11/intro-to-git---part-1/</link><pubDate>Thu, 30 Nov 2017 05:00:00 -0500</pubDate><guid>https://www.campingcoder.com/2017/11/intro-to-git---part-1/</guid><description>&lt;p&gt;&lt;figure class="image-figure"&gt;&lt;img src="https://www.campingcoder.com/post/2017-11-30_Intro-to-git-part-1.png" alt="git logo" loading="lazy" decoding="async"&gt;&#10; &#10; &#10; &lt;figcaption&gt;git logo&lt;/figcaption&gt;&#10; &#10; &#10;&lt;/figure&gt;&#10;&lt;/p&gt;&#10;&lt;p&gt;I&amp;rsquo;ve been using git for quite a few years now for version control on my software projects. It&amp;rsquo;s pretty popular and easy to use but I continue to meet programmers who have tried it but just can&amp;rsquo;t seem to grasp it. While it&amp;rsquo;s sad to see a colleague struggling with something, it&amp;rsquo;s worst when you have them &lt;em&gt;&lt;strong&gt;&amp;rsquo;learning&amp;rsquo;&lt;/strong&gt;&lt;/em&gt; on a live project - no one has fun there. I&amp;rsquo;ve been lucky enough to have presented sessions on git in the past at Orlando .Net Code Camp, and figured that having a series of posts breaking down those sessions could have some value.&lt;/p&gt;</description></item><item><title>2017 Tech Nerd Reading list</title><link>https://www.campingcoder.com/2017/11/2017-tech-nerd-reading-list/</link><pubDate>Thu, 23 Nov 2017 07:00:00 -0500</pubDate><guid>https://www.campingcoder.com/2017/11/2017-tech-nerd-reading-list/</guid><description>&lt;p&gt;I had a boss once that told me &amp;ldquo;what gets measured gets improved.&amp;rdquo; - I&amp;rsquo;m sure it originated from someone else like &lt;a href="https://en.wikiquote.org/wiki/Talk:Peter_Drucker" target="_blank" rel="noopener noreferrer"&gt;Peter Drucker&lt;/a&gt;, but it stuck with me. From about that point on, I started keeping a simple list of the books that I read every year. As the year starts to come to a close, I figured that I&amp;rsquo;d post my reading list and simple thoughts on the books. While this is by no means an extensive review, it might help in choosing your next read.&lt;/p&gt;</description></item></channel></rss>