<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Isaac Weber</title>
    <description>The latest articles on Forem by Isaac Weber (@ikey2244).</description>
    <link>https://forem.com/ikey2244</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F162844%2Fb9a9c47c-f990-427b-b59b-8992821c4356.jpeg</url>
      <title>Forem: Isaac Weber</title>
      <link>https://forem.com/ikey2244</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/ikey2244"/>
    <language>en</language>
    <item>
      <title>How To Deploy Apollo Server To Elastic Beanstalk</title>
      <dc:creator>Isaac Weber</dc:creator>
      <pubDate>Thu, 09 Jan 2020 16:39:16 +0000</pubDate>
      <link>https://forem.com/ikey2244/how-to-deploy-apollo-server-to-elastic-beanstalk-ode</link>
      <guid>https://forem.com/ikey2244/how-to-deploy-apollo-server-to-elastic-beanstalk-ode</guid>
      <description>&lt;p&gt;Deploying an application to Elastic Beanstalk was pretty tricky for me at first. It's pretty simple but somehow I messed it up so many times. Here is a guide to get you started so you don't make the same mistakes I did. &lt;/p&gt;

&lt;h2&gt;
  
  
  First things first
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;clone or download this repo &lt;a href="https://github.com/ikey2244/apollo-server-elastic-beanstalk.git"&gt;https://github.com/ikey2244/apollo-server-elastic-beanstalk.git&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;navigate to wherever you downloaded it&lt;/li&gt;
&lt;li&gt;click on the apollo-server-elastic-beanstalk folder&lt;/li&gt;
&lt;li&gt;highlight everything, right click and create a zip called application.zip&lt;/li&gt;
&lt;li&gt;we will be using this zip later so just hang on to it for now&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--cLHvFakr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/d1u3ler75cnz90g4haqx.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cLHvFakr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/d1u3ler75cnz90g4haqx.gif" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Getting Started with Elastic Beanstalk
&lt;/h2&gt;

&lt;p&gt;Sign into your AWS console &lt;a href="https://aws.amazon.com/"&gt;https://aws.amazon.com/&lt;/a&gt;. Or go to &lt;a href="https://portal.aws.amazon.com/billing/signup#/start"&gt;https://portal.aws.amazon.com/billing/signup#/start&lt;/a&gt; if you haven't made an account&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;dislaimer: AWS makes you put in a credit card in order to make an account. It's free but you have to monitor your usage. It's very easy to wrack up charges.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Once you've signed in or created your account you will be greeted with this page. Go ahead and search for Elastic Beanstalk. Click the "Elastic Beanstalk" from the suggestions list&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xaBVhNrN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/ri8idymlymo3mumfyc94.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xaBVhNrN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/ri8idymlymo3mumfyc94.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Click the blue "Get Started" button&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--rhjsVaaA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/y81g6zwqvzee0pkiouir.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--rhjsVaaA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/y81g6zwqvzee0pkiouir.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is where we will configure our Elastic Beanstalk environment and application.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--K1gy-Fcc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/x1gv9raed1hg664yynwa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--K1gy-Fcc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/x1gv9raed1hg664yynwa.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Go ahead and do the following:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Application name&lt;/strong&gt;: apollo-server&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Platform&lt;/strong&gt;: Node.js&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Upload your code: click "upload" button&lt;/strong&gt;
a window will pop up that looks like this:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--aofe0gRE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/xkyf090n95o2n1b4yyhn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--aofe0gRE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/xkyf090n95o2n1b4yyhn.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Choose the zip file called application.zip that we created earlier&lt;/li&gt;
&lt;li&gt;Click "Upload" button&lt;/li&gt;
&lt;li&gt;Finally click the "Create Application" button&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;After following those steps you should see something like this:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Hx9EnDJ8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/r0vc5o2vdacwmquorpmt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Hx9EnDJ8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/r0vc5o2vdacwmquorpmt.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now we wait...&lt;/p&gt;

&lt;h2&gt;
  
  
  Finishing up
&lt;/h2&gt;

&lt;p&gt;If followed each step correctly you should see something like this. Success!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--bNFPq9wh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/2qvf99uyow026n5mjvym.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bNFPq9wh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/2qvf99uyow026n5mjvym.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Click on the URL that was generated at the top and see your new application in all of its glory!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--HKULeSzM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/hmysdb2bascoll13k72i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--HKULeSzM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/hmysdb2bascoll13k72i.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is a pretty simple setup. Stay tuned for a more complicated example. :)&lt;/p&gt;

</description>
      <category>deployment</category>
      <category>aws</category>
      <category>beginners</category>
      <category>graphql</category>
    </item>
    <item>
      <title>Beginner's guide to a developer work environment (Part 2)</title>
      <dc:creator>Isaac Weber</dc:creator>
      <pubDate>Tue, 18 Jun 2019 19:06:34 +0000</pubDate>
      <link>https://forem.com/ikey2244/beginner-s-guide-to-a-developer-work-environment-part-2-22ga</link>
      <guid>https://forem.com/ikey2244/beginner-s-guide-to-a-developer-work-environment-part-2-22ga</guid>
      <description>&lt;p&gt;Finally getting around to writing the part 2! Sorry for the delay my friends. Here is a link to part 1 if you haven’t read that yet: &lt;a href="https://dev.to/ikey2244/beginner-s-guide-to-a-developer-work-environment-part-1-ibk"&gt;https://dev.to/ikey2244/beginner-s-guide-to-a-developer-work-environment-part-1-ibk&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here is how I actually use the tools from part 1 in my day to day.  &lt;/p&gt;

&lt;h3&gt;
  
  
  1. Xcode
&lt;/h3&gt;

&lt;p&gt;How often I use it: Never&lt;/p&gt;

&lt;p&gt;Only installed this to make sure our macs are set up correctly for development. If you are doing an IOS development this is what you would interact with.&lt;/p&gt;

&lt;p&gt;Common Workflow: None&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Homebrew
&lt;/h3&gt;

&lt;p&gt;How often I use it: Occasionally&lt;/p&gt;

&lt;p&gt;You don't have to use Homebrew. It's just a nice thing to have. It makes it really easy to install applications and tools etc.&lt;/p&gt;

&lt;p&gt;I sometimes will use Homebrew to run servers/databases in the background. For instance I might have a MongoDB database running with Homebrew. That might look something like this. &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Installed mongoDB&lt;/li&gt;
&lt;li&gt;run command &lt;code&gt;brew services start mongodb&lt;/code&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;that's pretty much it.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. ZSH(Oh-my-zsh)
&lt;/h3&gt;

&lt;p&gt;How often I use it: Everyday&lt;/p&gt;

&lt;p&gt;So technically I use this everyday but really if you are using you Iterm you are using ZSH. Once again ZSH just offers a nice way to interact with your terminal. Tab completion/suggestions etc.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Iterm
&lt;/h3&gt;

&lt;p&gt;How often I use it: Everyday&lt;/p&gt;

&lt;p&gt;Common commands I use daily: &lt;/p&gt;

&lt;p&gt;&lt;code&gt;mkdir&lt;/code&gt; creates a new folder&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt; &lt;code&gt;mkdir code&lt;/code&gt; creates a new folder called "code"&lt;/p&gt;

&lt;p&gt;&lt;code&gt;cd&lt;/code&gt; stands for "change directory". &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt; You just created a new folder called "code". In order to get inside that folder you have to type &lt;code&gt;cd code&lt;/code&gt; and hit enter. You then will be taken inside that directory.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;..&lt;/code&gt; allows you to move up in the in the directory. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt; you are in a directory called &lt;code&gt;code/my-sick-project&lt;/code&gt;. Now you just want to be inside the &lt;code&gt;code&lt;/code&gt; directory. By hitting &lt;code&gt;..&lt;/code&gt; you will move up in the directory and thus be in the &lt;code&gt;code&lt;/code&gt; folder.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;ls&lt;/code&gt; lists everything within a directory/folder.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;touch your-file-name&lt;/code&gt; creates a new file. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt; &lt;code&gt;touch index.html&lt;/code&gt; creates a new html file called index.html in your project.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;clear&lt;/code&gt; to clear the console (just cleans up what you've done previously)&lt;/p&gt;

&lt;p&gt;⌘ + d to add another window to terminal.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Side note:&lt;/strong&gt; When you first open your terminal you will most likely see a symbol that looks like this ~ this just indicates that you are in the home directory of your computer. If you run the command &lt;code&gt;pwd&lt;/code&gt; in your terminal you will see directory you are currently in. This can be helpful if you get lost.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Common Workflow:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open Iterm&lt;/li&gt;
&lt;li&gt;run command &lt;code&gt;mkdir new-project&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;cd&lt;/code&gt; into that project by typing &lt;code&gt;cd new-project&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;touch index.html&lt;/code&gt; to create a new index.html file in the project.&lt;/li&gt;
&lt;li&gt;run command &lt;code&gt;code .&lt;/code&gt; (this opens VS code. We will get to that later).&lt;/li&gt;
&lt;/ol&gt;

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

&lt;p&gt;Hitting ctrl + r in your terminal will pull up a search for all your previous commands you ran! It's extremely useful if you forget what command to run. let's say you only remember the first part of a command. For instance you remembered the &lt;code&gt;touch&lt;/code&gt; but don't know what to do next. Hit Ctrl + r in your terminal and type &lt;code&gt;touch&lt;/code&gt; this will bring up the last time you typed that command and show you what you did.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Visual Studio Code
&lt;/h3&gt;

&lt;p&gt;How often I use it: Everyday&lt;/p&gt;

&lt;p&gt;In the Iterm section I mentioned running this command &lt;code&gt;code .&lt;/code&gt; By running this command in a directory VS code will open and you can start editing files. This is very useful when creating a new project!&lt;/p&gt;

&lt;p&gt;Here is how you make that work:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open VS code.&lt;/li&gt;
&lt;li&gt;Press ⌘ + ⇧(shift key) + p: this opens the command palette&lt;/li&gt;
&lt;li&gt;In the command palette type "shell command" it will show something like this&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0SZmsi_v--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/8i3rw5jbb9jgc0u992my.png" alt=""&gt;
&lt;/li&gt;
&lt;li&gt;Press enter on this option&lt;/li&gt;
&lt;li&gt;That's it!&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Now go into a project you created in Iterm or create a new directory(this would be good practice) and run the command &lt;code&gt;code .&lt;/code&gt;VS code should open and you should see the name of your project on the left hand side in the file explorer. &lt;/p&gt;

&lt;p&gt;Link to further information about this: &lt;a href="https://code.visualstudio.com/docs/setup/mac"&gt;https://code.visualstudio.com/docs/setup/mac&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As you can imagine programming would be really hard if you had to do everything manually. Luckily VS code gives us a ton of hotkeys and shortcuts to make our lives easier! Let's check it out.&lt;/p&gt;

&lt;p&gt;I used to use Atom(another code editor like VS code). I still love Atom but VS code has captured my heart. Relearning hotkeys for VS code would be a pain. Fortunately VS code has an extension called "Atom Keymap" that pulls all the hotkeys from Atom and sets them for VS code. Brilliant!&lt;/p&gt;

&lt;p&gt;You don't actually need this but if you want to use my hotkeys then you will need this extension:&lt;a href="https://marketplace.visualstudio.com/items?itemName=ms-vscode.atom-keybindings"&gt;https://marketplace.visualstudio.com/items?itemName=ms-vscode.atom-keybindings&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;Install by going clicking on this icon. &lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--qVZJyak0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/43b7mz46dlm4zaporg6u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--qVZJyak0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/43b7mz46dlm4zaporg6u.png" alt=""&gt;&lt;/a&gt; and search for Atom Keymap. Hit install button and you should have it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Common hotkeys I use everyday:&lt;/strong&gt; &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;copy ⌘ + c&lt;/li&gt;
&lt;li&gt;paste ⌘ + v&lt;/li&gt;
&lt;li&gt;cut ⌘ + x&lt;/li&gt;
&lt;li&gt;delete single line of code ⌘ + ⇧(shift key) + k&lt;/li&gt;
&lt;li&gt;duplicate highlighted code ⌘ + ⇧(shift key) + d&lt;/li&gt;
&lt;li&gt;Hold ⌘ command key and click to have multiple cursors.&lt;a href="https://code.visualstudio.com/docs/getstarted/tips-and-tricks#_editing-hacks"&gt;https://code.visualstudio.com/docs/getstarted/tips-and-tricks#_editing-hacks&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;undo ⌘ + z &lt;/li&gt;
&lt;li&gt;redo ⌘ + ⇧&lt;/li&gt;
&lt;li&gt;search for a file in your project ⌘ + p&lt;/li&gt;
&lt;li&gt;⌘ + right-arrow end of line&lt;/li&gt;
&lt;li&gt;⌘ + left-arrow beginning of line&lt;/li&gt;
&lt;li&gt;⌘ + top-arrow 1st line of code&lt;/li&gt;
&lt;li&gt;⌘ + down-arrow last line of code&lt;/li&gt;
&lt;li&gt;while holding ⌘ + ⇧(shift key) + arrow key will highlight the line of code corresponding to the direction.&lt;/li&gt;
&lt;li&gt;Jump between words. hold alt key while using arrows to jump to each word.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Needless to say there are a lot of hotkeys. Hopefully this list will get you up and running. For a full list checkout the documentation in the Atom Keybindings extension.&lt;/p&gt;

&lt;h4&gt;
  
  
  Make it pretty
&lt;/h4&gt;

&lt;p&gt;VS code out of the box is pretty ugly. Let's make it pretty!!&lt;/p&gt;

&lt;p&gt;I really love the Palenight theme&lt;br&gt;
&lt;a href="https://marketplace.visualstudio.com/items?itemName=whizkydee.material-palenight-theme"&gt;https://marketplace.visualstudio.com/items?itemName=whizkydee.material-palenight-theme&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Install it&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;click icon &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--qVZJyak0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/43b7mz46dlm4zaporg6u.png" alt=""&gt;
&lt;/li&gt;
&lt;li&gt;search for Palenight theme&lt;/li&gt;
&lt;li&gt;Install&lt;/li&gt;
&lt;li&gt;reload&lt;/li&gt;
&lt;li&gt;be amazing&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;There are a lot of different themes. Make it your own! Being comfortable with your editor is really important.&lt;/p&gt;

&lt;p&gt;That's all folks!! Hopefully that helped some new comers. Please let me know if you see any errors or have any critiques. I welcome all correction. :) Remember everyone is a beginner at something so don't ever feel bad about not knowing something. Ask questions and fail often. That's the only way to get better. &lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>beginners</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Beginner's guide to a developer work environment (Part 1)</title>
      <dc:creator>Isaac Weber</dc:creator>
      <pubDate>Wed, 05 Jun 2019 22:04:16 +0000</pubDate>
      <link>https://forem.com/ikey2244/beginner-s-guide-to-a-developer-work-environment-part-1-ibk</link>
      <guid>https://forem.com/ikey2244/beginner-s-guide-to-a-developer-work-environment-part-1-ibk</guid>
      <description>&lt;p&gt;When I first got into programming I had zero idea how professional developers worked. My idea of coding something was to open &lt;a href="https://codepen.io/"&gt;https://codepen.io/&lt;/a&gt; and start hacking away. This helped me get something up quick but I knew it was unsustainable. I constantly was asking myself "what are developers using in the real world?" Too intimidated by all the tools out there I resorted back to my comfortable world of online editors. It wasn't until I joined a coding bootcamp where I was initiated into a real workflow.&lt;/p&gt;

&lt;p&gt;I know how daunting it can be to open a terminal or editor and have no freaking clue what to do next. So this is my attempt at making it easier for beginners to get started with tools used by professional developers.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Xcode(MacOS)
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Description:
&lt;/h4&gt;

&lt;p&gt;In order to get a proper development environment set up on your computer you will need Xcode. I don't do much with Xcode this is just required to get started.&lt;/p&gt;

&lt;h4&gt;
  
  
  Steps:
&lt;/h4&gt;

&lt;ol&gt;
&lt;li&gt;Install Xcode through the mac app&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://itunes.apple.com/us/app/xcode/id497799835?mt=12"&gt;https://itunes.apple.com/us/app/xcode/id497799835?mt=12&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Iterm2(MacOS)
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Description:
&lt;/h4&gt;

&lt;p&gt;Iterm2 is a replacement for the standard terminal in MacOS. Here is a list of all features that Iterm gives you over just a regular terminal.&lt;br&gt;
&lt;a href="https://www.iterm2.com/features.html"&gt;https://www.iterm2.com/features.html&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Steps:
&lt;/h4&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Install Iterm2&lt;br&gt;
&lt;a href="https://www.iterm2.com/"&gt;https://www.iterm2.com/&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Keep this open we'll come back and start entering some commands!&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;
  
  
  3. Homebrew(MacOs)
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://brew.sh/"&gt;https://brew.sh/&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Description:
&lt;/h4&gt;

&lt;p&gt;Homebrew allows you to install packages through the terminal(Iterm2).&lt;/p&gt;
&lt;h3&gt;
  
  
  Steps:
&lt;/h3&gt;

&lt;p&gt;1.) Install Homebrew&lt;/p&gt;

&lt;p&gt;paste into Iterm2:&lt;br&gt;
&lt;code&gt;/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"&lt;br&gt;
&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;2.) confirm Homebrew installation worked&lt;/p&gt;

&lt;p&gt;paste into Iterm2:&lt;br&gt;
&lt;code&gt;brew --version&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;should return something like&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Homebrew 2.1.4
Homebrew/homebrew-core (git revision 59240; last commit 2019-05-31)
Homebrew/homebrew-cask (git revision a6dcf; last commit 2019-05-30)
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;h3&gt;
  
  
  4. Zsh(oh-my-zsh)(MacOs or Windows)
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://ohmyz.sh/"&gt;https://ohmyz.sh/&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Description:
&lt;/h4&gt;

&lt;p&gt;Zsh is a shell that has a lot of features that make our lives as programmers easier.&lt;/p&gt;

&lt;p&gt;oh-my-zsh gives you the ability to install themes and plugins for the zsh shell! &lt;/p&gt;

&lt;p&gt;Some of the most notable&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Automatic cd: Just type the name of the directory&lt;/li&gt;
&lt;li&gt;Spelling correction and approximate completion: If you make a minormistake typing a directory name, ZSH will fix it for you&lt;/li&gt;
&lt;li&gt;Plugin and theme support: ZSH includes many different plugin frameworks&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Full Feature list: &lt;a href="https://github.com/hmml/awesome-zsh"&gt;https://github.com/hmml/awesome-zsh&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;1.) Install zsh with Homebrew&lt;/p&gt;

&lt;p&gt;paste into Iterm2:&lt;br&gt;
&lt;code&gt;brew install zsh zsh-completions&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;2.) Set Zsh as your default shell&lt;/p&gt;

&lt;p&gt;paste into Iterm2:&lt;br&gt;
this requires you to enter the password. It's going to be the same one you use to login to your computer.&lt;br&gt;
&lt;code&gt;chsh -s /bin/zsh&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;3.) Install Oh-my-zsh&lt;/p&gt;

&lt;p&gt;paste into Iterm2:&lt;br&gt;
&lt;code&gt;sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"&lt;/code&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Visual Studio Code(MacOs or Windows)
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Description:
&lt;/h4&gt;

&lt;p&gt;Visual Studio code is a code editor. There are a lot of great options out there for code editors(Atom, brackets, Sublime etc.) All these are great choices but I am going to stick with VS code for this tutorial. &lt;/p&gt;

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

&lt;p&gt;1.) install vs code&lt;br&gt;
&lt;a href="https://code.visualstudio.com/Download"&gt;https://code.visualstudio.com/Download&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  review
&lt;/h3&gt;

&lt;p&gt;After following these steps you should have:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Xcode installed which sets your computer for a development environment&lt;/li&gt;
&lt;li&gt;Iterm installed which gives you a better terminal than the mac default&lt;/li&gt;
&lt;li&gt;Homebrew installed which makes it easy to install packages across the web&lt;/li&gt;
&lt;li&gt;Zsh(oh-my-zsh) installed which makes your terminal super user friendly and pretty&lt;/li&gt;
&lt;li&gt;Vs code installed which gives you the ability to edit your code in a very intuitive way.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I hope this helped anyone struggling like I was when first getting into programming. In part 2 I will show how I am actually using these tools in the real world. &lt;/p&gt;

&lt;h3&gt;
  
  
  Disclaimer
&lt;/h3&gt;

&lt;p&gt;Please let me know if you are having any issues. A development environment can be tricky to set up sometimes. Also please correct any mistakes I have made. Thanks :) &lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>beginners</category>
      <category>programming</category>
    </item>
    <item>
      <title>Quickly Alias Git Commands</title>
      <dc:creator>Isaac Weber</dc:creator>
      <pubDate>Thu, 16 May 2019 15:35:26 +0000</pubDate>
      <link>https://forem.com/ikey2244/quickly-alias-git-commands-2jlj</link>
      <guid>https://forem.com/ikey2244/quickly-alias-git-commands-2jlj</guid>
      <description>&lt;p&gt;Typing Git commands over and over can get real tedious. Let's make it easier! &lt;/p&gt;

&lt;p&gt;Run this command in your shell with your own alias name and the corresponding git command&lt;/p&gt;

&lt;p&gt;&lt;code&gt;git config --global alias.{alias-name} {git command}&lt;/code&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Examples:
&lt;/h4&gt;

&lt;p&gt;&lt;code&gt;git config --global alias.show-remote 'remote show origin'&lt;/code&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;command is now &lt;code&gt;git show-remote&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;instead of:&lt;br&gt;
&lt;code&gt;git remote show origin&lt;/code&gt;&lt;/p&gt;

&lt;h5&gt;
  
  
  You can even combine commands!
&lt;/h5&gt;

&lt;p&gt;&lt;code&gt;git config --global alias.add-commit '!git add -A &amp;amp;&amp;amp; git commit'&lt;/code&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;command is now &lt;code&gt;git add-commit -m 'My commit message'&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;instead of:&lt;br&gt;
&lt;code&gt;git add .&lt;/code&gt;git commit -m 'my commit message'` &lt;/p&gt;

&lt;p&gt;Aliases can save you a lot of time! I'm always misspelling git commands but with aliases that is a thing of the past. &lt;/p&gt;

&lt;p&gt;To see all your aliases run this command:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;nano ~/.gitconfig&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Near the bottom you'll see something like this&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--MV__hbhK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/jaluetce5mss7kqtsnvv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--MV__hbhK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/jaluetce5mss7kqtsnvv.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Disclaimer
&lt;/h4&gt;

&lt;p&gt;With great power comes great responsibility. Use this command wisely! Make sure you know exactly what the command is doing before you alias or combine them. &lt;/p&gt;

&lt;p&gt;Thanks 😁&lt;/p&gt;

</description>
      <category>git</category>
      <category>webdev</category>
      <category>shell</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
