<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Austin</title>
    <description>The latest articles on DEV Community by Austin (@snappydevlpr).</description>
    <link>https://dev.to/snappydevlpr</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%2F207989%2F067e1e1f-7439-4b75-9c83-5879152efc52.jpeg</url>
      <title>DEV Community: Austin</title>
      <link>https://dev.to/snappydevlpr</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/snappydevlpr"/>
    <language>en</language>
    <item>
      <title>VS Code &amp; Web Dev</title>
      <dc:creator>Austin</dc:creator>
      <pubDate>Thu, 23 Jul 2020 02:15:15 +0000</pubDate>
      <link>https://dev.to/snappydevlpr/vs-code-web-dev-2f9k</link>
      <guid>https://dev.to/snappydevlpr/vs-code-web-dev-2f9k</guid>
      <description>&lt;p&gt;There are many different text editors out there but by far one of my favorites is VS Code. It's an incredibly lightweight option with the added benefit of being open source makes it a great choice for new developers or experienced professionals. In this article, we are going to talk about some great extensions to use, and how to install if you don't already have it. &lt;/p&gt;

&lt;h2&gt;
  
  
  Extensions
&lt;/h2&gt;

&lt;p&gt;An extension is a way to add features and functionality to VS Code examples include languages, debuggers, and tools.&lt;/p&gt;

&lt;h3&gt;
  
  
  Beautify
&lt;/h3&gt;

&lt;p&gt;While programming my main goal is to get the program, feature, or product running quickly (yes, of course after I seek to find ways to optimize) and with that formating usually falls to the wayside. One of my favorite extensions is to help me quickly format is Beautify.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fzc21am3s2547tgosjd3z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fzc21am3s2547tgosjd3z.png" alt="Alt Text"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Beautify is a great way to format the HTML, JS, and more.&lt;/p&gt;

&lt;h3&gt;
  
  
  Better Comments
&lt;/h3&gt;

&lt;p&gt;The next one I use quite often is Better Comments. I am an incredibly visual person when it comes to learning. The Better Comments extension will help you create more human-friendly comments in your code. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fchj8p5fpapxinwu4d5bs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fchj8p5fpapxinwu4d5bs.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;With this extension, you will be able to categorize your annotations into:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Alerts&lt;/li&gt;
&lt;li&gt;Queries&lt;/li&gt;
&lt;li&gt;TODOs&lt;/li&gt;
&lt;li&gt;Highlights&lt;/li&gt;
&lt;li&gt;Commented out code can also be styled to make it clear the code shouldn't be there&lt;/li&gt;
&lt;li&gt;Any other comment styles you'd like can be specified in the settings&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Chrome Debugger
&lt;/h3&gt;

&lt;p&gt;Lastly probably the most needed extension is incorporating a debugger. The one that I use for Web development is Google Chrome Debugger.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fzdacl0t5y1uozhafjiii.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fzdacl0t5y1uozhafjiii.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The benefits here allows you to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Setting breakpoints, including in source files when source maps are enabled&lt;/li&gt;
&lt;li&gt;Stepping, including with the buttons on the Chrome page
The Locals pane&lt;/li&gt;
&lt;li&gt;Debugging eval scripts, script tags, and scripts that are added dynamically&lt;/li&gt;
&lt;li&gt;Watches&lt;/li&gt;
&lt;li&gt;Console&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you thought any of these extensions are great or would like to try Visual Studio Code here is the link to download: &lt;a href="https://code.visualstudio.com/download" rel="noopener noreferrer"&gt;https://code.visualstudio.com/download&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Already using Visual Studio Code, put your favorite extension in the comments below! Thanks for reading follow for more!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>vscode</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Angular Component Building Blocks</title>
      <dc:creator>Austin</dc:creator>
      <pubDate>Sat, 13 Jun 2020 18:24:47 +0000</pubDate>
      <link>https://dev.to/snappydevlpr/angular-component-building-blocks-41lp</link>
      <guid>https://dev.to/snappydevlpr/angular-component-building-blocks-41lp</guid>
      <description>&lt;p&gt;This is a continuation of my Angular series, in the last article we talked about how to set up Angular on our device and how to create a new project. &lt;/p&gt;

&lt;p&gt;(Find the first article here: &lt;a href="https://dev.to/amsuarez/getting-started-with-angular-4p37"&gt;https://dev.to/amsuarez/getting-started-with-angular-4p37&lt;/a&gt;) &lt;/p&gt;

&lt;p&gt;In this post we are going to talk about the role components play in Angular and how to display data on to an HTML file.&lt;/p&gt;

&lt;h2&gt;
  
  
  What are Angular Components
&lt;/h2&gt;

&lt;p&gt;Angular components form the data structure for your application. Each component has a set of files that are automatically created when components are generated. These files include two main files that we will focus on are the HTML and the TypeScript file located in our App component. &lt;/p&gt;

&lt;p&gt;app.component.ts&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import { Component } from '@angular/core';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  title = 'tutorial';
  projects = ["HTML Basics", "CSS Fundamentals", "Angular Foundation"];
}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;app.component.html&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;div&amp;gt;
&amp;lt;/div&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;You may wonder why the HTML document is incredibly simplistic that is because in Angular components can embed into other html documents. In simple terms this component is just part of the public HTML index.html document.&lt;/p&gt;

&lt;p&gt;In fact to illustrate this lets look at the larger HTML document (index.html)&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;!doctype html&amp;gt;
&amp;lt;html lang="en"&amp;gt;
&amp;lt;head&amp;gt;
  &amp;lt;meta charset="utf-8"&amp;gt;
  &amp;lt;title&amp;gt;Tutorial&amp;lt;/title&amp;gt;
  &amp;lt;base href="/"&amp;gt;
  &amp;lt;meta name="viewport" content="width=device-width, initial-scale=1"&amp;gt;
  &amp;lt;link rel="icon" type="image/x-icon" href="favicon.ico"&amp;gt;
&amp;lt;/head&amp;gt;
&amp;lt;body&amp;gt;
  &amp;lt;app-root&amp;gt;&amp;lt;/app-root&amp;gt;
&amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;Here we can see familiar tags for HTML such as head, body, and document declaration. Among these common elements is the app-root element. This is our entry point for components, in this case the app.component.html will take its place when the project is ran.&lt;/p&gt;

&lt;h2&gt;
  
  
  Displaying Data
&lt;/h2&gt;

&lt;p&gt;Now that we have that basic understanding of Angular components, let's dive into using them to display data. To do this we are going to use a concept called interpolation allowing us to refer to expressions into text. To do this we will utilize a double bracket as such &lt;code&gt;{{}}&lt;/code&gt; with the variable in between.&lt;/p&gt;

&lt;p&gt;app.component.ts&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import { Component } from '@angular/core';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  title = 'My Site';
  projects = ["HTML Basics", "CSS Fundamentals", "Angular Foundation"];
}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;app.component.html&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;div&amp;gt;
 {{title}}
&amp;lt;/div&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;This works great in regards to single data variables but when it comes to lists there is an optimal option that will reduce the code we right. &lt;/p&gt;

&lt;p&gt;Lastly we are going to demonstrate how to use ngFor directives for an easy way to display lists of data.&lt;/p&gt;

&lt;p&gt;app.component.ts&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import { Component } from '@angular/core';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  title = 'My Site';
  projects = ["HTML Basics", "CSS Fundamentals", "Angular Foundation"];
}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;app.component.html&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;div&amp;gt;
 {{title}}
 &amp;lt;p *ngFor="let project of projects"&amp;gt;{{project}} &amp;lt;/p&amp;gt;
&amp;lt;/div&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;Well that's it for this lesson! Hopefully you found value in it and if you want more follow/react/comment to show support!&lt;/p&gt;

</description>
      <category>angular</category>
      <category>beginners</category>
      <category>webdev</category>
    </item>
    <item>
      <title>CSS Basics</title>
      <dc:creator>Austin</dc:creator>
      <pubDate>Sat, 13 Jun 2020 15:05:23 +0000</pubDate>
      <link>https://dev.to/snappydevlpr/css-basics-1l04</link>
      <guid>https://dev.to/snappydevlpr/css-basics-1l04</guid>
      <description>&lt;p&gt;CSS (cascading style sheets) is one simple way from going to a plain boring website to a professional looking masterpiece.&lt;/p&gt;

&lt;p&gt;Sounds interesting right, but where do we start? &lt;/p&gt;

&lt;h2&gt;
  
  
  Basics
&lt;/h2&gt;

&lt;p&gt;CSS helps you selectively stylize HTML elements. In this article we will talk about structure of a CSS rule-set and what selector types there are. &lt;/p&gt;

&lt;p&gt;One example of this is styling an element:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;p {
  color: red;
}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;Let's break this down into parts and discover whats happening. In this CSS format we see that we are referring to the HTML "p" or paragraph tag. This part of the CSS is known as the selector and within brackets "{ }" we see the declaration setting the color to red.&lt;/p&gt;

&lt;p&gt;Putting all this information together it will turn all paragraph elements in an HTML page red. &lt;/p&gt;

&lt;h2&gt;
  
  
  Selectors
&lt;/h2&gt;

&lt;p&gt;Now that we have an idea how the structure of a simple CSS rule-set what other selectors can we use to identify HTML elements you want to style. &lt;/p&gt;

&lt;p&gt;Simple Selectors these are the items based on name, class, and id.&lt;/p&gt;

&lt;p&gt;Combinator Selectors which will allow for more than one selector&lt;/p&gt;

&lt;p&gt;You can use a Combinator selector with any of the following.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; descendant selector (space) &lt;/li&gt;
Here the p element is in a div element and only p elements in the div element will take on the color of red.

&lt;li&gt; child selector (&amp;gt;) &lt;/li&gt;
Here the p element is in a div element and only p elements directly in the div element will take on the color of red.


&lt;li&gt; adjacent sibling selector (+) &lt;/li&gt;

Here all elements that are the adjacent siblings of a specified element is stylized.


&lt;li&gt; general sibling selector (~) &lt;/li&gt;

Lastly in the general sibling selector all elements that are siblings of a specified element is stylized.

&lt;/ul&gt;



&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;div p {
 color: red;
}

div &amp;gt; p {
 color: red;
}

div + p {
 color: red;
}

div ~ p {
 color: red;
}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;That's all for this post! Follow/React for more articles on basic web development.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>webdev</category>
      <category>css</category>
    </item>
    <item>
      <title>HTML Basics Part ✌️</title>
      <dc:creator>Austin</dc:creator>
      <pubDate>Sat, 13 Jun 2020 02:44:12 +0000</pubDate>
      <link>https://dev.to/snappydevlpr/html-basics-part-ii-4ah6</link>
      <guid>https://dev.to/snappydevlpr/html-basics-part-ii-4ah6</guid>
      <description>&lt;p&gt;If you haven't read the previous article on getting started with HTML check out Part 1 here: &lt;/p&gt;

&lt;p&gt;Since we last left off we ended up with a document that looks like this:&lt;a href="https://dev.to/amsuarez/html-basics-part-ii-4ah6"&gt;https://dev.to/amsuarez/html-basics-part-ii-4ah6&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;!DOCTYPE html&amp;gt; 
&amp;lt;html lang="eng"&amp;gt;
 &amp;lt;head&amp;gt; 
 &amp;lt;/head&amp;gt;
 &amp;lt;body&amp;gt;
 &amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;Today we are going to over the basics on creating content within the body. The three we are going to be covering to day are heading tags, paragraph, and comment tags. &lt;/p&gt;

&lt;h2&gt;
  
  
  Heading Tags
&lt;/h2&gt;

&lt;p&gt;Heading tags are a great way to define importance in a document. Heading tags exist for 1 - 6 each heading level will have its own default styling. It is important to understand that you can restyle these tags in css but using appropriate tags is important. Screen readers recognize these levels, users can skim through the document based on the levels, and search engines can use them for indexing.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;!DOCTYPE html&amp;gt; 
&amp;lt;html lang="eng"&amp;gt;
 &amp;lt;head&amp;gt; 
 &amp;lt;/head&amp;gt;
 &amp;lt;body&amp;gt;
  &amp;lt;h1&amp;gt;My Website&amp;lt;/h1&amp;gt;
  &amp;lt;h2&amp;gt;My Projects&amp;lt;/h2&amp;gt;
 &amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;h2&gt;
  
  
  Paragraph
&lt;/h2&gt;

&lt;p&gt;Paragraphs are general areas to hold text. You can use it for a lot of text or even just a couple of words.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;!DOCTYPE html&amp;gt; 
&amp;lt;html lang="eng"&amp;gt;
 &amp;lt;head&amp;gt; 
 &amp;lt;/head&amp;gt;
 &amp;lt;body&amp;gt;
  &amp;lt;h1&amp;gt;My Website&amp;lt;/h1&amp;gt;
  &amp;lt;h2&amp;gt;My Projects&amp;lt;/h2&amp;gt;
  &amp;lt;p&amp;gt;I write a blog about HTML&amp;lt;/p&amp;gt;
 &amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;h2&gt;
  
  
  Comments
&lt;/h2&gt;

&lt;p&gt;Lastly is for this article we will showcase how to write comments. Comments are not displayed in the browsers. They are useful to explain your code and ideas to others reading and most of the time for yourself. The comment tag is shown as &amp;lt;!-- --&amp;gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;!DOCTYPE html&amp;gt; 
&amp;lt;html lang="eng"&amp;gt;
 &amp;lt;head&amp;gt; 
 &amp;lt;/head&amp;gt;
 &amp;lt;body&amp;gt;
  &amp;lt;h1&amp;gt;My Website&amp;lt;/h1&amp;gt;
  &amp;lt;h2&amp;gt;My Projects&amp;lt;/h2&amp;gt;
  &amp;lt;!-- Here I will write about my projects. --&amp;gt;
  &amp;lt;p&amp;gt;I write a blog about HTML&amp;lt;/p&amp;gt;
 &amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;That's it for this article hopefully you enjoyed it! &lt;br&gt;
Follow and like for future web dev basics and advanced tips.  &lt;/p&gt;

</description>
      <category>html</category>
      <category>beginners</category>
      <category>webdev</category>
    </item>
    <item>
      <title>HTML Basics Part I</title>
      <dc:creator>Austin</dc:creator>
      <pubDate>Fri, 12 Jun 2020 14:33:13 +0000</pubDate>
      <link>https://dev.to/snappydevlpr/html-basics-part-i-38c4</link>
      <guid>https://dev.to/snappydevlpr/html-basics-part-i-38c4</guid>
      <description>&lt;p&gt;Hyper Text Markup Language or HTML is the skeleton of any web page. It is incredibly easy to get started and an important first step of learning to make a website. &lt;/p&gt;

&lt;h1&gt;
  
  
  The Basics
&lt;/h1&gt;

&lt;p&gt;HTML consists of an elements that tell a Web browser how to structure a website. In this article we are going to cover four basic elements to build a page quickly.&lt;/p&gt;

&lt;h3&gt;
  
  
  DOCTYPE &amp;amp; HTML
&lt;/h3&gt;

&lt;p&gt;An element begins with the &amp;lt; and ends with &amp;gt; character. The first element to an HTML page consist of the an element is declaration that tells the file what to expect. Now using HTML files without declaring DOCTYPE may work but may result in the browser being forced into quirks mode.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Quirks mode is a technique used by some web browsers for the sake
of maintaining backward compatibility designed for old web browsers.
src: https://en.wikipedia.org/wiki/Quirks_mode
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;The html tag is the start of the document and will contain all HTML tags with the exception of doctype. Here you should also display the language of the web page.&lt;/p&gt;

&lt;p&gt;To start your document with DOCTYPE and an html element type the following.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;!DOCTYPE html&amp;gt; 
&amp;lt;html lang="eng"&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;This declaration will let the browser know that the document is HTML5.&lt;/p&gt;

&lt;h3&gt;
  
  
  Head
&lt;/h3&gt;

&lt;p&gt;The next common element known as head is used to house metadata for the website. Common things to place in head include page title, style, character, and scripts.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;!DOCTYPE html&amp;gt; 
&amp;lt;html lang="eng"&amp;gt;
 &amp;lt;head&amp;gt; 
 &amp;lt;/head&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;h3&gt;
  
  
  Body
&lt;/h3&gt;

&lt;p&gt;Last of the elements we are covering today is body. In this element tag is going to consist of everything that appears on your webpage. Here you would place text, images, and more.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;!DOCTYPE html&amp;gt; 
&amp;lt;html lang="eng"&amp;gt;
 &amp;lt;head&amp;gt; 
 &amp;lt;/head&amp;gt;
 &amp;lt;body&amp;gt;
 &amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;Now that we have built our basic file let's add on more element tag to display text. We are going to add the paragraph tag in the body element. We will discuss further on what the paragraph element is in later articles.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;!DOCTYPE html&amp;gt; 
&amp;lt;html lang="eng"&amp;gt;
 &amp;lt;head&amp;gt; 
 &amp;lt;/head&amp;gt;
 &amp;lt;body&amp;gt;
  &amp;lt;p&amp;gt;Hello World&amp;lt;/p&amp;gt;
 &amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;Now when we open this file in the web browser we will see the text "Hello World" being displayed. &lt;/p&gt;

&lt;p&gt;Follow and like for more articles on web dev basics.&lt;/p&gt;

</description>
      <category>html</category>
      <category>webdev</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Getting Started with Angular</title>
      <dc:creator>Austin</dc:creator>
      <pubDate>Fri, 12 Jun 2020 02:33:57 +0000</pubDate>
      <link>https://dev.to/snappydevlpr/getting-started-with-angular-4p37</link>
      <guid>https://dev.to/snappydevlpr/getting-started-with-angular-4p37</guid>
      <description>&lt;h1&gt;
  
  
  What is Angular?
&lt;/h1&gt;

&lt;p&gt;Angular is an open source web application framework lead by Google and by community developers.&lt;/p&gt;

&lt;p&gt;It is based on TypeScript which is a strict syntactical superset of JavaScript which adds optional static typing to the language. While Typescript needs to be compiled it does offer a benefit in prototyping.&lt;/p&gt;

&lt;h2&gt;
  
  
  Getting Started
&lt;/h2&gt;

&lt;p&gt;To use the Angular framework you should be familiar with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;JavaScript&lt;/li&gt;
&lt;li&gt;HTML&lt;/li&gt;
&lt;li&gt;CSS&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Another important thing to understand is that Angular apps require libraries that are available as npm packages. &lt;/p&gt;

&lt;h3&gt;
  
  
  Step 1: Install the Angular CLI 👨‍💻
&lt;/h3&gt;

&lt;p&gt;To install the CLI using npm, open the terminal and enter&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npm install -g @angular/cli&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 2: Create a workspace and initial application 👷‍♂️
&lt;/h3&gt;

&lt;p&gt;To create a new workspace and initial starter app:&lt;/p&gt;

&lt;p&gt;Run the CLI command ng new and provide the name my-application, as shown here:&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;ng new my-application&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;Angular will now get to work building the application. The client will create all folders and files necessary.&lt;/p&gt;

&lt;p&gt;To run type:&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;ng serve&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;This will run the application through localhost:4200/&lt;/p&gt;

&lt;p&gt;Follow and like for the next article on "Angular Building Blocks"&lt;/p&gt;

</description>
      <category>angular</category>
      <category>beginners</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Jewels 💎 and Stones ⛰</title>
      <dc:creator>Austin</dc:creator>
      <pubDate>Fri, 03 Apr 2020 01:28:48 +0000</pubDate>
      <link>https://dev.to/snappydevlpr/jewels-and-stones-5aj0</link>
      <guid>https://dev.to/snappydevlpr/jewels-and-stones-5aj0</guid>
      <description>&lt;p&gt;Here is a rocking problem that shows how to deal with arrays. &lt;/p&gt;

&lt;p&gt;You're given strings J representing the types of stones that are jewels, and S representing the stones you have.  Each character in S is a type of stone you have.  You want to know how many of the stones you have are also jewels.&lt;/p&gt;

&lt;p&gt;The letters in J are guaranteed distinct, and all characters in J and S are letters. Letters are case sensitive, so "a" is considered a different type of stone from "A".&lt;/p&gt;

&lt;h3&gt;
  
  
  Example 1:
&lt;/h3&gt;

&lt;p&gt;Input: J = "aA", S = "aAAbbbb"&lt;br&gt;
Output: 3&lt;/p&gt;
&lt;h3&gt;
  
  
  Example 2:
&lt;/h3&gt;

&lt;p&gt;Input: J = "z", S = "ZZ"&lt;br&gt;
Output: 0&lt;/p&gt;
&lt;h2&gt;
  
  
  Brute Force 👊
&lt;/h2&gt;

&lt;p&gt;Looking at a brute force method I would use a double for loop which would increase my BigO notation to the length of S multiplied by length J. Here I would have to iterate through the stones multiple times for each jewel I am referencing.&lt;/p&gt;


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


&lt;h2&gt;
  
  
  An Optimal Solution
&lt;/h2&gt;

&lt;p&gt;Looking at this problem what comes to mind is using some sort of hashmap or set. Today I'm going to be switching it up and using C++. In C++ there is a structure you can take advantage of known as an unordered_set. This will let us store unique values in a container based on a key 🔑. Looking at this problem here I can make the jewels my unordered set and search them quickly. This will also allow me to decrease my time complexity to the length of S plus by length J.&lt;/p&gt;


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


&lt;p&gt;There are a couple of other ways to solve this problem so put your solution down below! Thanks for reading, like and follow for more! 🙃&lt;/p&gt;

</description>
      <category>career</category>
      <category>beginners</category>
      <category>programing</category>
      <category>interview</category>
    </item>
    <item>
      <title>Single Number</title>
      <dc:creator>Austin</dc:creator>
      <pubDate>Thu, 02 Apr 2020 03:34:56 +0000</pubDate>
      <link>https://dev.to/snappydevlpr/single-number-27pk</link>
      <guid>https://dev.to/snappydevlpr/single-number-27pk</guid>
      <description>&lt;p&gt;Here is a simple problem dealing with arrays. &lt;/p&gt;

&lt;p&gt;Given a non-empty array of integers, every element appears twice except for one. Find that single one.&lt;/p&gt;

&lt;h3&gt;
  
  
  Example 1:
&lt;/h3&gt;

&lt;p&gt;Input: [2,2,1]&lt;br&gt;
Output: 1&lt;/p&gt;
&lt;h3&gt;
  
  
  Example 2:
&lt;/h3&gt;

&lt;p&gt;Input: [4,1,2,1,2]&lt;br&gt;
Output: 4&lt;/p&gt;

&lt;p&gt;There are a couple of ways on how to deal with this problem the easiest approach, in my opinion, is to use a dictionary.&lt;/p&gt;
&lt;h2&gt;
  
  
  Using a Dictionary:
&lt;/h2&gt;

&lt;p&gt;Dictionaries allow you to store key-value pairs allowing us to store a number and the count of times you see the number. Now there are a couple of ways to implement a dictionary if you want to create your own but here I am going to use the built-in one. Using this method allows for an O(n) BigO notation but does use memory.&lt;/p&gt;


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


&lt;h2&gt;
  
  
  2 For Loop solution:
&lt;/h2&gt;

&lt;p&gt;One way to do it without using much extra memory is to use a double for loop to go through the array. Going through the array once you find a duplicate you can change the digit to undefined. If you pass through the list without finding a duplicate you can return it. Note this will destroy the integrity of the list as you are changing values.&lt;/p&gt;


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


&lt;p&gt;There are a couple of other ways to solve this problem so put your solution down below! Thanks for reading, like and follow for more! 🙃&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>programming</category>
      <category>interview</category>
      <category>career</category>
    </item>
    <item>
      <title>Rotting Oranges 🍊</title>
      <dc:creator>Austin</dc:creator>
      <pubDate>Wed, 01 Apr 2020 03:24:44 +0000</pubDate>
      <link>https://dev.to/snappydevlpr/rotting-oranges-5hjc</link>
      <guid>https://dev.to/snappydevlpr/rotting-oranges-5hjc</guid>
      <description>&lt;p&gt;This is a great problem looking at how to deal with grid problems.&lt;/p&gt;

&lt;p&gt;In a given grid, each cell can have one of three values:&lt;/p&gt;

&lt;p&gt;the value 0 representing an empty cell;&lt;br&gt;
the value 1 representing a fresh orange;&lt;br&gt;
the value 2 representing a rotten orange.&lt;/p&gt;

&lt;p&gt;Every minute, any fresh orange that is adjacent (4-directionally) to a rotten orange becomes rotten.&lt;/p&gt;

&lt;p&gt;Return the minimum number of minutes that must elapse until no cell has a fresh orange.  If this is impossible, return -1 instead.&lt;/p&gt;
&lt;h3&gt;
  
  
  Example 1:
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--7MkKq0PY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://assets.leetcode.com/uploads/2019/02/16/oranges.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7MkKq0PY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://assets.leetcode.com/uploads/2019/02/16/oranges.png" alt="problem for image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Input: [[2,1,1],[1,1,0],[0,1,1]]&lt;br&gt;
Output: 4&lt;/p&gt;
&lt;h3&gt;
  
  
  Example 2:
&lt;/h3&gt;

&lt;p&gt;Input: [[2,1,1],[0,1,1],[1,0,1]]&lt;br&gt;
Output: -1&lt;br&gt;
Explanation:  The orange in the bottom left corner (row 2, column 0) is never rotten, because rotting only happens 4-directionally.&lt;/p&gt;
&lt;h3&gt;
  
  
  Example 3:
&lt;/h3&gt;

&lt;p&gt;Input: [[0,2]]&lt;br&gt;
Output: 0&lt;br&gt;
Explanation:  Since there are already no fresh oranges at minute 0, the answer is just 0.&lt;/p&gt;

&lt;p&gt;Since this problem deals with a grid you can already start thinking of two different techniques. Either you utilize a depth-first or breadth-first method. &lt;/p&gt;
&lt;h3&gt;
  
  
  Solution 🙌
&lt;/h3&gt;

&lt;p&gt;Looking at this I utilized a queue in a breadth-first traversal to solve this problem. First I iterate through the grid and add all rotten oranges to a list, this will give me a starting point. After I have gotten all initial rotten oranges I go through each rotten orange and convert it's neighbors to rotten if an orange exists. With a list of neighbors that have turned rotten, I add them to my rotten list with a counter denoting the "minute" that it turned. I use this minute each time I add a new set of neighbors to the rotten list.&lt;/p&gt;


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


&lt;p&gt;Hope you liked this post, please follow and clap for more! Throw your implementations in the comments below! 🙏&lt;/p&gt;

</description>
      <category>codenewbie</category>
      <category>beginners</category>
      <category>career</category>
      <category>interview</category>
    </item>
    <item>
      <title>Container With Most Water 💧 </title>
      <dc:creator>Austin</dc:creator>
      <pubDate>Tue, 31 Mar 2020 01:20:05 +0000</pubDate>
      <link>https://dev.to/snappydevlpr/container-with-most-water-1eok</link>
      <guid>https://dev.to/snappydevlpr/container-with-most-water-1eok</guid>
      <description>&lt;p&gt;Here is a fun problem dealing with arrays.&lt;/p&gt;

&lt;p&gt;Given n non-negative integers a1, a2, ..., a(n), where each represents a point at coordinate (i, ai). n vertical lines are drawn such that the two endpoints of line i is at (i, ai) and (i, 0). Find two lines, which together with x-axis forms a container, such that the container contains the most water.&lt;/p&gt;

&lt;p&gt;Note: You may not slant the container and n is at least 2.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--psoZhAiF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://s3-lc-upload.s3.amazonaws.com/uploads/2018/07/17/question_11.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--psoZhAiF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://s3-lc-upload.s3.amazonaws.com/uploads/2018/07/17/question_11.jpg" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The above vertical lines are represented by an array [1,8,6,2,5,4,8,3,7]. In this case, the max area of water (blue section) the container can contain is 49.&lt;/p&gt;

&lt;p&gt;Example:&lt;br&gt;
Input: [1,8,6,2,5,4,8,3,7]&lt;br&gt;
Output: 49&lt;/p&gt;

&lt;p&gt;Looking at this problem there are two ways I would attack it. The first being a brute force approach and iterating through possible combinations of walls to find the boundary that holds the most water.&lt;/p&gt;
&lt;h2&gt;
  
  
  Brute Force Approach 👊
&lt;/h2&gt;

&lt;p&gt;Looking at a double for loop approach, the most important factor for this problem is the smallest wall. Iterating with two indices you can pick the smallest wall and multiply that wall by the distance between the two indices. &lt;/p&gt;


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


&lt;h2&gt;
  
  
  Two pointer approach:
&lt;/h2&gt;

&lt;p&gt;Looking to see how we can improve upon this process we can two different pointers to yield us a better BigO notation of O(n).&lt;/p&gt;


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


&lt;p&gt;Hope you liked this post, please follow and clap for more! Throw your implementations in the comments below! 🙏&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>career</category>
      <category>interview</category>
      <category>codenewbie</category>
    </item>
    <item>
      <title>Two Sum Problem</title>
      <dc:creator>Austin</dc:creator>
      <pubDate>Mon, 30 Mar 2020 19:43:57 +0000</pubDate>
      <link>https://dev.to/snappydevlpr/two-sum-problem-l4e</link>
      <guid>https://dev.to/snappydevlpr/two-sum-problem-l4e</guid>
      <description>&lt;p&gt;Here is a classic problem that has been given on plenty of interviews.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Given an array of integers, return indices of the two numbers such that they add up to a specific target.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;You may assume that each input would have exactly one solution, and you may not use the same element twice.&lt;br&gt;
Given nums = [2, 7, 11, 15], target = 9,&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Because nums[0] + nums[1] = 2 + 7 = 9,&lt;br&gt;
return [0, 1].&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Now there are a couple of ways to solve this problem. The first way you might think is to look at it and approach it through a brute force method.&lt;/p&gt;
&lt;h2&gt;
  
  
  Brute Force Method 👊
&lt;/h2&gt;

&lt;p&gt;I see that I need two different indexes so I could use two for loops and propagate through this list comparing every possible combination to see if I have a pair that hits the target.&lt;/p&gt;


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

&lt;p&gt;Code for two for loops a brute force method to solve this problem&lt;br&gt;
In this scenario, we are going to loop through the array with both for loops allowing you to compare every single possible combination. This is obviously not the most efficient way as it will yield a big O of (n²) due to both for loops. In the event that there is a long list of numbers it can be less likely that your code will pass in the given time it needs.&lt;/p&gt;
&lt;h2&gt;
  
  
  Dictionary Approach:
&lt;/h2&gt;

&lt;p&gt;Now looking at how to better improve this solution there is one data structure called a dictionary that will definitely assist us. A dictionary makes use of a key-value pair, this is can be extremely useful given that the search of a Dictionary is big o(1).&lt;/p&gt;


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


&lt;p&gt;Code for two sum problem dictionary creation then search for pair&lt;br&gt;
Here we are building a dictionary with the key being the number and the value being the index the number exists. Creating a dictionary allows us to search for the value as we go. In our next for loop as we search for the other number to complete the sum that hits the target we only have to iterate through the array ones at a time giving us a big-O (n). That being said all though we were able to reduce the big-O in time by not using a double for loop we increased the space complexity from the creation of the dictionary.&lt;/p&gt;
&lt;h2&gt;
  
  
  Better Dictionary Approach:
&lt;/h2&gt;

&lt;p&gt;Now how can we make this a bit more efficient? Well, we can remove the need to have a separate loop for creating the dictionary by using a if-else block.&lt;/p&gt;


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


&lt;p&gt;Code for two sum problem dictionary creation and search for pair&lt;br&gt;
Hope you liked this post, please follow and clap for more! 🙃&lt;/p&gt;

</description>
      <category>codenewbie</category>
      <category>career</category>
      <category>interview</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
