<?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: patrickbreen</title>
    <description>The latest articles on DEV Community by patrickbreen (@patrickbreen).</description>
    <link>https://dev.to/patrickbreen</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%2F475834%2F73c96697-e7cf-49ed-849c-c6a0187940bd.png</url>
      <title>DEV Community: patrickbreen</title>
      <link>https://dev.to/patrickbreen</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/patrickbreen"/>
    <language>en</language>
    <item>
      <title>AWS Devops Pro Certification</title>
      <dc:creator>patrickbreen</dc:creator>
      <pubDate>Wed, 06 Jan 2021 17:51:53 +0000</pubDate>
      <link>https://dev.to/patrickbreen/aws-devops-pro-certification-4ea4</link>
      <guid>https://dev.to/patrickbreen/aws-devops-pro-certification-4ea4</guid>
      <description>&lt;p&gt;I passed the AWS Devops Pro certification examination back in early December, and I though I'd write a short blog post on my thoughts. I never looked up my score (just saw the 'pass'), but I thought that the exam was easier than I was expecting. The minimum passing score was 80%. The exam is 75 multiple choice questions in 170 minutes. I finished the exam with about 30 minutes left and I was pretty sure I passed, so I just submitted instead of taking any time to review answered questions.&lt;/p&gt;

&lt;p&gt;That isn't to say that it is an easy test. It is very mentally taxing to go through the technical reading and weighing of 'best' answers for 75 questions. You need to have a good conceptual grasp of SDLC, CICD, and AWS services and best practices.&lt;/p&gt;

&lt;p&gt;I used Stephane Maarek's Udemy course and Jon Bonso's practice tests as study material. I also built about 3 toy applications during my study time. I have only about 8 months of AWS experience (at my full time job), and I had all 3 associate certifications while having that experience.&lt;/p&gt;

&lt;p&gt;I think that studying for this certification is great for intermediate level devops practitioners getting into AWS/cloud operations. It gives you a good level-set on AWS concepts and best practices. If you're completely new to IT this is probably too much, and if you're already very experienced, you also won't get much. Furthermore, this certification, and really any multiple choice test will not teach you practical dev/devops skills. It is very important to be building toy projects in order to develop new skills in a new domain, or to develop more advanced skills in a domain you already have experience in.&lt;/p&gt;

&lt;p&gt;I've failed to stick to the 1 blog post per month, so I may do 2 this month. I'm currently working on a Velociraptor project, and I want to learn Terraform (as another way to deploy IaaS to an AWS backend), and get more advanced building with AWS Cloudwatch and other AWS platforms. These 3 builder projects should be done in the next 2 months or so.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>devops</category>
    </item>
    <item>
      <title>Public Health Data Pipeline with CDK CI/CD</title>
      <dc:creator>patrickbreen</dc:creator>
      <pubDate>Sat, 26 Sep 2020 21:53:33 +0000</pubDate>
      <link>https://dev.to/patrickbreen/acg-september-challenge-3n8d</link>
      <guid>https://dev.to/patrickbreen/acg-september-challenge-3n8d</guid>
      <description>&lt;h3&gt;
  
  
  Introduction
&lt;/h3&gt;

&lt;p&gt;Hello, I'm new to AWS, and as part of my learning I wanted to do some small devops projects. I thought I might as well share the project via blog too.&lt;/p&gt;

&lt;p&gt;I decided I would follow along with the acloudguru challenge &lt;a href="https://acloudguru.com/blog/engineering/cloudguruchallenge-python-aws-etl"&gt;https://acloudguru.com/blog/engineering/cloudguruchallenge-python-aws-etl&lt;/a&gt;. Every month is a new challenge. A description of the challenge is given, and then you're free to implement it in AWS. One of the specific things I'm trying to learn and get familiar with is CI/CD pipelines such as AWS &lt;code&gt;codepipeline&lt;/code&gt;. This month's challenge is a covid data tracker that tracks the number of infections, deaths, and persons recovered in the United States. One of the notable pieces of this project is that there is lots of automation behind a seemingly simple end product. There is code that automatically keeps the data in the chart as fresh as possible, and code that keeps the entire project &lt;em&gt;itself&lt;/em&gt; continuously deployed with the latest version of the code (more on that later). Here is a picure of the dashboard that I will generate the code for in the rest of this article:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ox-ilWzN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/3tac4sz14ubo2q0989we.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ox-ilWzN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/3tac4sz14ubo2q0989we.JPG" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  CDK, Cloud Development Kit, keeping this project continuously up-to-date
&lt;/h3&gt;

&lt;p&gt;In late 2019 AWS launched Cloud Development Kit (CDK) (&lt;a href="https://aws.amazon.com/cdk/"&gt;https://aws.amazon.com/cdk/&lt;/a&gt;) which is the newest, and perhaps best way of pro grammatically declaring cloud components. These components can be infrastructure, code, or, deployment pipelines.&lt;/p&gt;

&lt;p&gt;This is my third small CDK development project, and it's still rough since I'm learning. There are a few things that I would have done differently, including renaming things, but I think that this project is close enough to blog-ready for my standards.&lt;/p&gt;

&lt;p&gt;All of the code can be found in my public repository on github (&lt;a href="https://github.com/patrickbreen/ACGChallenge2"&gt;https://github.com/patrickbreen/ACGChallenge2&lt;/a&gt;). If you scroll to the bottom of that page, you'll find the directions to deploy and access this project:&lt;/p&gt;

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

&lt;p&gt;At the time of publishing this article, you should be able to copy and paste the URL to load the dashboard that I'm hosting in my AWS account (&lt;a href="https://cdk-s3-static-website-blog-pb-2.s3.amazonaws.com/dashboard.html"&gt;https://cdk-s3-static-website-blog-pb-2.s3.amazonaws.com/dashboard.html&lt;/a&gt;). If it doesn't work, weeks or months from now, it may be because I've removed this deployment. The dashboard uses charts.js to read data from my database in AWS. Fresh data is loaded into my AWS database from The New York Times, and John Hopkins University data sources each day. That means that my chart always stays no more than about a day behind the latest covid data.&lt;/p&gt;

&lt;h3&gt;
  
  
  How it works
&lt;/h3&gt;

&lt;p&gt;Here is a high level architecture description of the project.&lt;/p&gt;

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

&lt;p&gt;Everything is configured within in the code repository itself. If you were to clone this repository into a repository of your own, you would only need to change the &lt;code&gt;CODECOMMIT_REPO_NAME&lt;/code&gt; variable in &lt;code&gt;app.py&lt;/code&gt; to the name of your repository. Then, deploy the pipeline with the following terminal command: &lt;code&gt;cdk deploy PipelineDeployingInfraStack&lt;/code&gt;. You will wait for it to run for a minute, then select (y) to confirm that you want to create and deploy the pipeline. This is the only manual step required! After running that one command, a pipeline is created. You can watch this pipeline work through the process of building and deploying the rest of the infrastructure and code.&lt;/p&gt;

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

&lt;p&gt;Once everything is green, the infrastructure is deployed. Any further change to your codecommit repository will automatically trigger a new build and deployment.&lt;/p&gt;

&lt;h3&gt;
  
  
  The future of this blog
&lt;/h3&gt;

&lt;p&gt;There is a lot of explanation needed to fully explain each of the concepts presented here, many of which I haven't mentioned in any detail. This is my first blog article, and I plan on doing about one per month, and I will improve on balancing effective communication while staying concise as I continue with more articles.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>devops</category>
    </item>
  </channel>
</rss>
