<?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: CurtFarley</title>
    <description>The latest articles on DEV Community by CurtFarley (@curtfarley).</description>
    <link>https://dev.to/curtfarley</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%2F875423%2F36f059ec-436d-4e2d-996d-623f23cf50f2.JPG</url>
      <title>DEV Community: CurtFarley</title>
      <link>https://dev.to/curtfarley</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/curtfarley"/>
    <language>en</language>
    <item>
      <title>More new tech skills - Docker up to the plate. Pt 3 - with AWS ECS</title>
      <dc:creator>CurtFarley</dc:creator>
      <pubDate>Tue, 04 Oct 2022 21:33:27 +0000</pubDate>
      <link>https://dev.to/curtfarley/more-new-tech-skills-docker-up-to-the-plate-pt-3-with-aws-ecs-46m5</link>
      <guid>https://dev.to/curtfarley/more-new-tech-skills-docker-up-to-the-plate-pt-3-with-aws-ecs-46m5</guid>
      <description>&lt;p&gt;Welcome, thanks for coming back!&lt;/p&gt;

&lt;p&gt;Well, this was an interesting exercise. I'll be honest, I only mostly understood what I was doing in this AWS Workshop. I really try to understand what's happening &amp;amp; how/why &amp;amp; not just push buttons when I do hands-on lessons, but sometimes I just don't get it 100%&lt;br&gt;
&lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;a href="https://catalog.us-east-1.prod.workshops.aws/workshops/8c9036a7-7564-434c-b558-3588754e21f5/en-US" rel="noopener noreferrer"&gt;
      catalog.us-east-1.prod.workshops.aws
    &lt;/a&gt;
&lt;/div&gt;


&lt;p&gt;The other thing that made it interesting were the mistakes in it. I found 2, there is a problem with the NAT Gateway/Internet GW setup. The CloudFormation stack sets them both up, but I had to redo the route tables to use the IGW instead of the NAT GW to get the website to work. It's also completely possible I missed some bit of config I needed to do to make the NATGW work.&lt;br&gt;
The other is a problem with the whole thing not building the appropriate EC2 instances for the 'Cats' half of the website. I could have missed something though. I went back over the instructions twice more to see if I did, to no effect. I didn't have time to dig into that one to figure out what the exact problem was though.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--7tqBC6MS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yi9omv3358apy4d72604.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7tqBC6MS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yi9omv3358apy4d72604.gif" alt="Image description" width="200" height="200"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I should go back and redo this workshop, not only to figure out the problem, but to make sure I fully understand everything that is going on. I had to tear it all down due to time constraints so I wouldn't get charged for all the running objects in my free tier account. It would be nice if they had AWS Sandboxes to run these in - if you're at an AWS event, they do - but outside of that you use your own account.&lt;/p&gt;

&lt;p&gt;This is the first AWS workshop I've done (outside of an event), &amp;amp; overall it's a good experience. Although they have this listed as a 300 level workshop, it's not so complicated that having only basic knowledge or experience with Docker is a hinderance. I think they mark it as 300 due to the extended logging &amp;amp; setup with Firelens. That was completely new to me (not surprising, who can keep up...) but per AWS "You can use FireLens for Amazon ECS to use task definition parameters to route logs to an AWS service or AWS Partner Network (APN) destination for log storage and analytics." So it's a seemingly dedicated log utility for ECS.&lt;/p&gt;

&lt;p&gt;The one thing that is, irritating, is that for ECS, the intro level workshop (Amazon ECS Basic Workshop) is in Japanese only. Since I only know how to count to 10 in Japanese &amp;amp; a few other words, &amp;amp; I can't read Kanji at all, probably not gonna get too far with that one. Hopefully, AWS adds an English version of it.&lt;/p&gt;

&lt;p&gt;Thanks for reading. I think there will be 1 more blog in this series, but I have to sit down &amp;amp; do some work first. Gonna give Docker-Compose a spin. So stay tuned to see how that works out.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--iuOjjd2m--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/owkfxa6qsmq0vftf7f54.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--iuOjjd2m--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/owkfxa6qsmq0vftf7f54.gif" alt="Image description" width="370" height="300"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>docker</category>
      <category>aws</category>
      <category>architecture</category>
      <category>devjournal</category>
    </item>
    <item>
      <title>More new tech skills - Docker up to the plate. Pt 2</title>
      <dc:creator>CurtFarley</dc:creator>
      <pubDate>Tue, 04 Oct 2022 19:09:59 +0000</pubDate>
      <link>https://dev.to/curtfarley/more-new-tech-skills-docker-up-to-the-plate-pt-2-cb6</link>
      <guid>https://dev.to/curtfarley/more-new-tech-skills-docker-up-to-the-plate-pt-2-cb6</guid>
      <description>&lt;p&gt;Ahh, you're back. Good to see you again. What's that? You're anxious to hear more of the tale? Oh, ok - let's get going then, no reason to delay. Where was I.. ahh yes, videos.&lt;/p&gt;

&lt;p&gt;That was round 1 of watching that particular set of videos, over the next couple of days I watched them at least 1 more time. Now I felt ready to sit down &amp;amp; work with containers.&lt;/p&gt;

&lt;p&gt;Got the Ubuntu laptop out, set my iPad to the side with Chucks Docker video ready to go &amp;amp; started off. Following along with the video - mostly - I did not use the Linode cloud service, I did everything from my own laptop. That meant, of course, I had to do a bit of Googling &amp;amp; reading on how to install Docker on Ubuntu, which was pretty easy. &lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
      &lt;div class="c-embed__cover"&gt;
        &lt;a href="https://www.simplilearn.com/tutorials/docker-tutorial/how-to-install-docker-on-ubuntu" class="c-link s:max-w-50 align-middle" rel="noopener noreferrer"&gt;
          &lt;img alt="" src="https://res.cloudinary.com/practicaldev/image/fetch/s--cHsmKkxH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://www.simplilearn.com/logo.png" height="200" class="m-0" width="200"&gt;
        &lt;/a&gt;
      &lt;/div&gt;
    &lt;div class="c-embed__body"&gt;
      &lt;h2 class="fs-xl lh-tight"&gt;
        &lt;a href="https://www.simplilearn.com/tutorials/docker-tutorial/how-to-install-docker-on-ubuntu" rel="noopener noreferrer" class="c-link"&gt;
          How to Install Docker on Ubuntu: A Step-By-Step Guide [Updated]
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;p class="truncate-at-3"&gt;
          Struggling to Install Docker on Ubuntu? Know how to get Docker installed on Ubuntu in this step-by-step guide.
        &lt;/p&gt;
      &lt;div class="color-secondary fs-s flex items-center"&gt;
          &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://res.cloudinary.com/practicaldev/image/fetch/s--PDv7kqyt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://www.simplilearn.com/static/frontend/images/favicon.png" width="16" height="16"&gt;
        simplilearn.com
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;After the setup, I just followed along with NetworkChuck. Using Docker itself was fast, smooth &amp;amp; quite frankly fun! I did have to quickly learn a bit about Linux firewalls as I couldn't get the demo website that I deployed to load from any device on the network outside of my localhost. But hey, it's a learning opportunity &amp;amp; those are always valuable. Once I had that configured, everything worked as expected.&lt;/p&gt;

&lt;p&gt;So what was my take-away? Well, I know how to install Docker on Linux, I can deploy &amp;amp; configure containers, I know how to manage/view those containers, &amp;amp; I understand the concepts of how Docker works &amp;amp; why it's so fast (hint: 1 kernel shared with the host OS &amp;amp; the container itself). I also picked up how I can manage the local Linux firewall.&lt;/p&gt;

&lt;p&gt;So for the first 3-ish hours I've spent with Docker, I feel rather successful. This isn't the last of my walk with Docker, I'll have 1, maybe 2 more posts to finish off my tale.&lt;/p&gt;

&lt;p&gt;Thanks for taking the time to read this. See ya next post! &lt;/p&gt;

</description>
      <category>beginners</category>
      <category>docker</category>
      <category>architecture</category>
      <category>devjournal</category>
    </item>
    <item>
      <title>More new tech skills - Docker up to the plate. Pt 1</title>
      <dc:creator>CurtFarley</dc:creator>
      <pubDate>Tue, 04 Oct 2022 15:25:33 +0000</pubDate>
      <link>https://dev.to/curtfarley/more-new-tech-skills-docker-up-to-the-plate-pt-1-1l38</link>
      <guid>https://dev.to/curtfarley/more-new-tech-skills-docker-up-to-the-plate-pt-1-1l38</guid>
      <description>&lt;p&gt;This is definitely &lt;strong&gt;NOT&lt;/strong&gt; a tutorial - there are 100's of other places to learn Docker, by people much more knowledgeable than myself.&lt;br&gt;
No, this is the tale of a 3 hour tour... No, wait, this is the tale of the whale that swallowed... No, still not it. Ahhh, this is how my dive into the Docker pool transpired. Which took slightly longer than 3 hours. &lt;/p&gt;

&lt;p&gt;I had heard of Docker (&amp;amp; Kubernetes, that will be a different post) but hadn't paid it much attention. I had a list of other things that I thought I needed to learn first. But seeing Docker or K8s on more &amp;amp; more job descriptions gave me pause. Maybe I should seriously look into this, maybe it could be a quick hit to add to my resume to help with new job opportunities, maybe it's kinda neat...&lt;/p&gt;

&lt;p&gt;As I've discovered, it &lt;strong&gt;IS&lt;/strong&gt; neat. I think it also fits the need for a resume quick hit for a current technology. While I will not be an expert, I can now speak with some level of knowledge on the core concepts of Docker. If you're familiar with 'traditional' virtualization, the leap to Docker is actually pretty easy.&lt;/p&gt;

&lt;p&gt;Enough rambling, how about some actual "what had happened was..."&lt;br&gt;
My current go-to video learning creator is NetworkChuck on YouTube. So that's where I started at 11pm laying in bed one night (TMI?). I watched his "&lt;em&gt;You need to learn Docker RIGHT NOW!&lt;/em&gt;" video first. The next night "&lt;em&gt;Docker networking is CRAZY!! (you NEED to learn it)&lt;/em&gt;" &amp;amp; "&lt;em&gt;you need to learn Kubernetes RIGHT NOW!!&lt;/em&gt;" - I know, I said this was a different post, but I gotta start here...&lt;/p&gt;

&lt;p&gt;At this point, I'm hooked. Now I just need to sit down in front of my laptop &amp;amp; start banging on some keys.  For that - check out Part 2 of this series.&lt;/p&gt;

&lt;p&gt;Links:&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/bKFMS5C4CG0"&gt;
&lt;/iframe&gt;
&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/eGz9DS-aIeY"&gt;
&lt;/iframe&gt;
&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/7bA0gTroJjw"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>docker</category>
      <category>beginners</category>
      <category>architecture</category>
      <category>devjournal</category>
    </item>
    <item>
      <title>Cloud Resume Challenge, Days 7-11 (maybe, I lost count). The hard part...</title>
      <dc:creator>CurtFarley</dc:creator>
      <pubDate>Thu, 23 Jun 2022 21:30:08 +0000</pubDate>
      <link>https://dev.to/curtfarley/cloud-resume-challenge-days-7-11-maybe-i-lost-count-the-hard-part-3046</link>
      <guid>https://dev.to/curtfarley/cloud-resume-challenge-days-7-11-maybe-i-lost-count-the-hard-part-3046</guid>
      <description>&lt;p&gt;Holy crap this was the hardest part yet. Lambda, API Gateway, more Python, and I'll admit - stolen Javascript.&lt;/p&gt;

&lt;p&gt;I'm not sure exactly how many days I spent on this, but I know it was several.  Not full, 8-hr days, but 2-3 hrs each day for sure.&lt;/p&gt;

&lt;p&gt;Here's my blueprint for this phase of work:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--UOgJ5JHp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/t7tt4aj54mqk7pi1xamk.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--UOgJ5JHp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/t7tt4aj54mqk7pi1xamk.jpg" alt="blueprint:" width="880" height="660"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There are so many things going on here (even though it doesn't look like it from high up) that I got flustered to start. I knew that I had working Python code to update my table, but how do I get it working in Lambda? Not knowing anything, and knowing I knew nothing, I do what I always do - fire up the Lambda GUI and start pressing buttons. :-) That of course, got me exactly what I expected - a big fat error. Fine, time to start looking at documentation, Stack Overflow, other people's GitHub repositories - anywhere I could find clues as to how to make this thing sing.&lt;/p&gt;

&lt;p&gt;To help myself, I ended up simplifying my code to start. Instead of using 2 Python functions in Lambda, I just used 1 and then by reverse engineering someone else's code, I got my output to be what I wanted/needed. That was easily the thing I spent the most time on, by a lot. 4 or 5 days reading &amp;amp; testing &amp;amp; re-writing &amp;amp; failing &amp;amp; starting over...  The final hurdle was a syntax error - spent several hours trying to figure out why - the code worked 100% in VSCode, but failed in Lambda. Turns out, just needed to indent 2 lines of code on the Lambda side- sheesh... That solution came within 5 minutes of me posting my problem on Stack Overflow - shoulda led with that.  People there are freaking geniuses!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1 part down, 2 to go - moving on/back to API Gateway.&lt;/strong&gt;&lt;br&gt;
Once that was solved, it was pretty much downhill from there. I finished the API Gateway testing - I must diverge - I created the API Gateway earlier, after I had 1 iteration of Lambda working so I could start testing it. But, that didn't work, and I went back to Lambda to do more tinkering. So - I have my API Gateway built, my Lambda is 100% tested &amp;amp; working from inside Lambda, time to get it working via the API.&lt;/p&gt;

&lt;p&gt;The API was really easy to get working - seems like that's normal &amp;amp; not just because the Lambda part was so difficult. I mean, I literally spent 10 minutes getting it working (once Lambda was correct) - my problem there was permissions. I had set the API to only respond to an AWS IAM authenticator - WRONG... Turned that off and BAM! API is good to go. Tested from inside the API GUI (best I can describe it) and from a cool little plugin for VSCode called &lt;a href="https://www.thunderclient.com/%20%"&gt;Thunder Client&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2 parts down, 1 to go - moving on to Javascript.&lt;/strong&gt; &lt;br&gt;
I'll be honest here, I 100% stole/borrowed the JS from someone else -the same person who I modeled my resume after to be exact. Links to him are in my first post. The code itself is simple enough, call the API to kick off the Lambda, which updates the counter &amp;amp; returns the current count, then reference the JS to show the count on the webpage. That really doesn't sound simple now that I type it out... Short version here - JS works as desired, no fuss no muss. &lt;/p&gt;

&lt;p&gt;Now, while I fully understand WHAT the JS is doing, and I kinda understand some of the syntax, I don't fully understand all the syntax. For that, I need to do some reading, but I felt no reason to re-invent the wheel here (seems like I said that elsewhere) so that's why I didn't write the JS from scratch. It would take me longer to understand enough of it to write from scratch, then to understand the WHY of what little bit of code there is.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What's next?&lt;/strong&gt;&lt;br&gt;
Now that I have a fully functional website - &amp;amp; I'll be honest, I'm proud of what I've done. It's not super fancy like some of those who have completed the challenge, but it fits me. Clean, simple, efficient code, &amp;amp; has given me a ton of exposure to AWS.&lt;/p&gt;

&lt;p&gt;The next phase of the challenge is to automate this sucker. General premise is to "re-do" this challenge using IaC - AWS SAM or Terraform for example. While I used the GUI &amp;amp; manually created a working website, being able to write IaC to do the same thing is  the way it's done out there, so I need to understand &amp;amp; be able to do it - even if it's just a simple website.&lt;/p&gt;

&lt;p&gt;I'll probably start reading about AWS SAM next week, maybe even tomorrow. But I have a nice little vacation coming up in 2 weeks and my main goal was to have my website 100% done before then. So the IaC work may be delayed a bit. Stay tuned for more posts as that work starts &amp;amp; progresses.&lt;/p&gt;

&lt;p&gt;Until then, This is the way. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--tmzf7O03--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/089ovjjpqlvbpre7adpt.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--tmzf7O03--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/089ovjjpqlvbpre7adpt.jpg" alt="mando" width="200" height="261"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>aws</category>
      <category>showdev</category>
      <category>cloudresumechallenge</category>
    </item>
    <item>
      <title>Cloud Resume Challenge, Days 6-7 - Code, Code, AWS</title>
      <dc:creator>CurtFarley</dc:creator>
      <pubDate>Fri, 17 Jun 2022 19:00:37 +0000</pubDate>
      <link>https://dev.to/curtfarley/cloud-resume-challenge-days-6-7-code-code-aws-3kdc</link>
      <guid>https://dev.to/curtfarley/cloud-resume-challenge-days-6-7-code-code-aws-3kdc</guid>
      <description>&lt;p&gt;Hello there. (If you don't get the reference, I'm not sure we can be friends...)&lt;/p&gt;

&lt;p&gt;A short follow up to my last post, got my resume page mostly ready. Still not 100% done, have the visitor counter to complete (this post starts the tale of that journey), but complete enough to release it to be free.  You can find it here: &lt;a href="https://cfresume.curtisfarley.net/"&gt;Resume&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;So this part of the project had me: write Python code to write a value to a DynamoDB table, setup a Lambda function to then use that code, and configure IAM permissions so that Lambda could interact with DynamoDB. And this is just the first half of the back-end.. sheesh....&lt;/p&gt;

&lt;p&gt;As an infrastructure guy, this is now starting to get into my wheelhouse. But not particularly easy for me - all new stuff this is. A lot to learn, mostly by trial and error. But I can report that I was successful in getting it done and working even!&lt;/p&gt;

&lt;p&gt;While I had been trying to learn Python prior to this, that fell to the wayside due to a slight shift in priority (studying for AWS Networking exam). I knew I wouldn't be writing code from scratch, there's no need to reinvent the wheel here. But I'd still need to figure out the how/what/why of the specific code snippet that I chose to model from. So that's what I did.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Time for the fun to start:&lt;/strong&gt;&lt;br&gt;
After some Googling, I found some code that I thought would work and would be simple enough that I could reverse engineer, modify, &amp;amp; test to fit my environment. Not unexpectedly, just changing variables and names to match my environment didn't work. At all. Time to hit the documentation, for Python, for VS Code, &amp;amp; for AWS. I learned I needed to do more setup and config for VS Code to get it to work with AWS and Python. &lt;br&gt;
I learned (by doing this time, previously just theory for the Solutions Architect exam) how to create and apply IAM policies and roles to Lambda. &lt;br&gt;
I learned syntax for Python to interact with DynamoDB. &lt;br&gt;
And I learned a little bit about Lambda, specifically that you (apparently) need to deploy your function before you can actually test it. Frustrating when the AWS documentation I read and the 3 or 4 videos I watched, none of them ever said to deploy to test - they just hit the 'test' button and whoomp, there it is....&lt;/p&gt;

&lt;p&gt;After getting my code to write a value into my table, I tackled the change to update/increment the value rather than just write one. Wasn't too bad honestly, just a simple keyword change from 'set' to 'add'. There's probably a hundred other little things that I could/should say, but I'm trying to not get too long winded and I feel I'm close to that limit.&lt;/p&gt;

&lt;p&gt;I will share this photo of how I'm 'blueprinting' the current goal/task at hand. I do find this to be quite helpful.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--GKp5CRZ3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/72pdfcgrl4erg1e5cqov.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--GKp5CRZ3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/72pdfcgrl4erg1e5cqov.jpg" alt="Goal 1" width="880" height="660"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In summary, all tasks for this goal are complete. My next goal is setup &amp;amp; test an API Gateway to talk to Lambda, starting on that soon.&lt;/p&gt;

&lt;p&gt;As always, turn around, don't drown &amp;amp; keep it between the white lines....&lt;/p&gt;

</description>
      <category>cloudresumechallenge</category>
      <category>aws</category>
      <category>showdev</category>
    </item>
    <item>
      <title>Cloud Resume Challenge, Days 4-5</title>
      <dc:creator>CurtFarley</dc:creator>
      <pubDate>Mon, 13 Jun 2022 18:18:05 +0000</pubDate>
      <link>https://dev.to/curtfarley/cloud-resume-challenge-days-4-5-4cp6</link>
      <guid>https://dev.to/curtfarley/cloud-resume-challenge-days-4-5-4cp6</guid>
      <description>&lt;p&gt;Front end 99.9% completed now. Still have a little permissions problem when trying to download a copy of my actual resume - so not quite ready to let it loose in the wild yet.&lt;/p&gt;

&lt;p&gt;One thing I learned - AWS Cloudfront and Route53 'A' records do not play well together unless the SSL cert the Cloudfront distribution uses has only 1 hostname in it. Or maybe, the order of the names in the cert matter.... ie: the simple solution is - don't use/create a SAN (subject alternate name) certificate&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--dqLgcdwW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3zjcgosagyiuyifzyr54.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--dqLgcdwW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3zjcgosagyiuyifzyr54.png" alt="Resume Challenge Front End" width="781" height="312"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Resources used to complete this phase of the project:&lt;/p&gt;

&lt;p&gt;FontAwesome for the icons I used in my resume.&lt;br&gt;
&lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
      &lt;div class="c-embed__cover"&gt;
        &lt;a href="https://fontawesome.com/" class="c-link s:max-w-50 align-middle" rel="noopener noreferrer"&gt;
          &lt;img alt="" src="https://res.cloudinary.com/practicaldev/image/fetch/s--Kmq2LPnZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://img.fortawesome.com/349cfdf6/fontawesome-open-graph.png" height="462" class="m-0" width="880"&gt;
        &lt;/a&gt;
      &lt;/div&gt;
    &lt;div class="c-embed__body"&gt;
      &lt;h2 class="fs-xl lh-tight"&gt;
        &lt;a href="https://fontawesome.com/" rel="noopener noreferrer" class="c-link"&gt;
          Font Awesome
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;p class="truncate-at-3"&gt;
          The world’s most popular and easiest to use icon set just got an upgrade. More icons. More styles. More Options.
        &lt;/p&gt;
      &lt;div class="color-secondary fs-s flex items-center"&gt;
          &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://res.cloudinary.com/practicaldev/image/fetch/s--BHidN4n3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://fontawesome.com/favicon.ico" width="32" height="32"&gt;
        fontawesome.com
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;W3 Schools for a couple of HTML and CSS lessons.&lt;br&gt;
&lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;a href="https://www.w3schools.com" rel="noopener noreferrer"&gt;
      w3schools.com
    &lt;/a&gt;
&lt;/div&gt;


&lt;p&gt;Diagrams.net for the drawing above.&lt;br&gt;
&lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;a href="https://app.diagrams.net/" rel="noopener noreferrer"&gt;
      app.diagrams.net
    &lt;/a&gt;
&lt;/div&gt;


&lt;p&gt;And this Github repo for YUI information, since that was already in use in the HTML code I used.&lt;br&gt;
&lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;a href="https://yui.github.io/yui2/docs/yui_2.9.0_full/" rel="noopener noreferrer"&gt;
      yui.github.io
    &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>cloudresumechalleng</category>
      <category>aws</category>
      <category>showdev</category>
    </item>
    <item>
      <title>Cloud Resume Challenge - Days 1-3 (up, up &amp; away)</title>
      <dc:creator>CurtFarley</dc:creator>
      <pubDate>Fri, 10 Jun 2022 20:38:04 +0000</pubDate>
      <link>https://dev.to/curtfarley/cloud-resume-challenge-days-1-3-up-up-away-3nf2</link>
      <guid>https://dev.to/curtfarley/cloud-resume-challenge-days-1-3-up-up-away-3nf2</guid>
      <description>&lt;p&gt;Day 1: I can't do this....  After deciding to jump into the challenge, I knock out the domain registration easy peasy with AWS &amp;amp; Route53. So far, so good.&lt;/p&gt;

&lt;p&gt;Next, I start looking at webpage templates since I know that will be one of the hardest things for me to knock out.  I'm not a web coder/designer/site builder, so this is way out of my comfort zone.  As I start to look for templates, cause I'm not gonna re-invent the wheel, don't have the time nor the skillset, I find some free ones that look really nice. That's when the panic steps in....&lt;/p&gt;

&lt;p&gt;I know it's as simple as changing the content, and at a basic HTML level, no problem - I can reverse engineer that with the knowledge I picked up 20-some years ago (sheesh....). Where I panic is seeing the challenge suggest/recommend using CSS and JavaScript and then not knowing what that really means or how it's used in the page code. I mean, I know that CSS is style stuff and JavaScript does stuff - but that wasn't a thing way back when - so I have ZERO experience with that. &lt;em&gt;(what have I started, how do I do this, I don't ..., I can't...)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;By this time, it's late, I'm tired and hungry and I call it a day.&lt;/p&gt;

&lt;p&gt;Day 2: After a rough night of poor sleep due to brain churn over this challenge, I put on my big boy shorts (I work from home, no pants for me!) and sit down to re-evaluate. I decide that the templates I liked really aren't for me - too flashy, not my style, wouldn't be able to explain the code nor how it works if I had to.... So I decide to borrow a simpler design from someone who has already completed the challenge. His &lt;a href="https://www.dsresume.com/"&gt;page&lt;/a&gt; is simple, informative, looks nice, and is the kind of page you'd expect from an engineer and not a web designer. I also decide to side-bar with someone from work to help me understand CSS enough to know what's going on with the content.&lt;/p&gt;

&lt;p&gt;I spend several hours going through this new page layout. Doing some Googling to learn about YUI formatting/syntax, editing code to see what's what, learning how to use &lt;a href="https://fontawesome.com/"&gt;FontAwesome&lt;/a&gt; for icons, and trying to shoehorn in code snippets from a completely different webpage layout that's using a completely different - well, everything.... Felt like I was in a self-directed 8hr HTML/CSS Webpage building workshop.&lt;/p&gt;

&lt;p&gt;By the end of the day, I'd made some serious progress in my resume web page layout and content. I'm feeling much, much better about this - dare I say happy even! &lt;em&gt;(although that's likely to change when I get to the Python and Lambda parts in a few days)&lt;/em&gt; I have a page with working links, with a layout I like, and a lot of content changed to reflect my own info.  Just need to finish off the integration of the different layout, then this part is done.  My task list for the next day - finish web page code, setup this blog, and work on S3 bucket for the static web page.&lt;/p&gt;

&lt;p&gt;Day 3: Off to a slower start, stupid work getting in the way.... But had my meeting with someone who actually worked with CSS, so learned a good bit from him about how CSS works and understanding the syntax for the file. Then more work. Then back to the integration, which partially works - gonna need more time and maybe some help with that. Since I was at a wall with the integration, moved on to the blog part of the day - which - as you can see - is going smoothly. Which brings you up to date to this exact point in time. &lt;/p&gt;

&lt;p&gt;Before calling it a day, I'll probably edit some more content &amp;amp; play around with re-doing the S3 bucket based on info I found elsewhere for a project to setup a static S3 website. I feel the need to get a little more accomplished today since I'm on another roll..&lt;/p&gt;

&lt;p&gt;Wherever you are, whatever you do - enjoy it!&lt;/p&gt;

</description>
      <category>aws</category>
      <category>cloudresumechallenge</category>
      <category>showdev</category>
    </item>
    <item>
      <title>First Ever Blog Post</title>
      <dc:creator>CurtFarley</dc:creator>
      <pubDate>Fri, 10 Jun 2022 18:38:10 +0000</pubDate>
      <link>https://dev.to/curtfarley/first-ever-blog-post-3a74</link>
      <guid>https://dev.to/curtfarley/first-ever-blog-post-3a74</guid>
      <description>&lt;p&gt;I've never blogged before, just not my thing, but I'll jump off the deep end and see what happens.&lt;/p&gt;

&lt;p&gt;I'm not a writer, never really enjoyed it, oddly enough though, I'm pretty good at it. I'm more of an analytical thinker and doer. I mean, I can write something down to get a point across or explain how to do something, but creative writing is unknown to me. I'm a - hand me a task and I'll get it done in the most efficient, simple way I know how - kind of guy.  KISS for all you old engineers out there.&lt;/p&gt;

&lt;p&gt;Although for you poor souls who are kind enough to follow me, you may get everything from a step-by-step blueprint to a stream of unintelligible thoughts that resemble a summoning spell (too bad I don't know Latin). And once the original purpose of this blog is fulfilled, may never see another post again. Guess it depends on how much I come to enjoy it and what things I think are interesting enough to write about.&lt;/p&gt;

&lt;p&gt;Now for this original purpose I spoke of. I've recently stumbled across this thing called the Cloud Resume Challenge.  It's a bit old now, originally conceived in 2020 by Forrest Brazeal. I won't go into the details here, follow the link to see for yourself what it's about.  Anyways, part of the challenge is to create a blog and post about your progress. So here it is, my blog. Probably won't be fancy (not the creative type remember), but I'll try and make it fun and informative as I write about my trials and tribulations moving forward. Definitely won't be a daily thing, but I will try my best to post something once a week so you know how it's going.&lt;/p&gt;

&lt;p&gt;Should probably call this entry good and move on. Just wanted to introduce myself a bit, and give the basis for this blog, that's done, so see you next time.&lt;/p&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
      &lt;div class="c-embed__cover"&gt;
        &lt;a href="https://cloudresumechallenge.dev/docs/the-challenge/" class="c-link s:max-w-50 align-middle" rel="noopener noreferrer"&gt;
          &lt;img alt="" src="https://res.cloudinary.com/practicaldev/image/fetch/s--HBoS89AQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cloudresumechallenge.dev/images/resume.png" height="988" class="m-0" width="880"&gt;
        &lt;/a&gt;
      &lt;/div&gt;
    &lt;div class="c-embed__body"&gt;
      &lt;h2 class="fs-xl lh-tight"&gt;
        &lt;a href="https://cloudresumechallenge.dev/docs/the-challenge/" rel="noopener noreferrer" class="c-link"&gt;
          Take the challenge | The Cloud Resume Challenge
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;p class="truncate-at-3"&gt;
          Free for anyone to try. AWS, Azure, or GCP - you make the choice!
        &lt;/p&gt;
      &lt;div class="color-secondary fs-s flex items-center"&gt;
          &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://res.cloudinary.com/practicaldev/image/fetch/s--piaFnp4x--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cloudresumechallenge.dev/favicons/favicon-32x32.png" width="617" height="604"&gt;
        cloudresumechallenge.dev
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
      <category>beginners</category>
      <category>cloudresumechallenge</category>
      <category>aws</category>
    </item>
  </channel>
</rss>
