<?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: solveyourstrife</title>
    <description>The latest articles on DEV Community by solveyourstrife (@solveyourstrife).</description>
    <link>https://dev.to/solveyourstrife</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%2F567035%2F939f8816-7e5b-4664-9551-ec5c32b56e58.jpg</url>
      <title>DEV Community: solveyourstrife</title>
      <link>https://dev.to/solveyourstrife</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/solveyourstrife"/>
    <language>en</language>
    <item>
      <title>Monoliths vs Microservices</title>
      <dc:creator>solveyourstrife</dc:creator>
      <pubDate>Tue, 04 May 2021 19:58:10 +0000</pubDate>
      <link>https://dev.to/solveyourstrife/monoliths-vs-microservices-38p</link>
      <guid>https://dev.to/solveyourstrife/monoliths-vs-microservices-38p</guid>
      <description>&lt;p&gt;When it comes to server architecture, which is the better choice? Monoliths or microservices? I think to answer that question, I will have to dive into each first.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--c-TDogVq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g4dwi3y2crlbmbuo5z92.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--c-TDogVq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g4dwi3y2crlbmbuo5z92.png" alt="image"&gt;&lt;/a&gt;  &lt;/p&gt;

&lt;h3&gt;
  
  
  Monoliths
&lt;/h3&gt;

&lt;p&gt;The monolith service architecture was a staple in the past, but of course due to tech advancements it is becoming out of touch. A monolith would host everything in one system - database, user interface, etc.  And while this did allow for environments to have a wide variety of versatility, it was also extremely bulky and hard to change or fix if things went wrong.&lt;/p&gt;

&lt;h3&gt;
  
  
  So now onto the new wave... Microservices
&lt;/h3&gt;

&lt;p&gt;Microservices utilize oriented API's that gives the new age of technology much more flexibility than monoliths offer. Microservices split up tasks into their own separate operations, that not only speeds up functions but makes it easier to run. &lt;/p&gt;

&lt;p&gt;Some other advantages of microservices include&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Easier to organize and maintain applications&lt;/li&gt;
&lt;li&gt;Improve organization&lt;/li&gt;
&lt;li&gt;Improve productivity, flexibility and scalability&lt;/li&gt;
&lt;li&gt;Allow for autonomous &amp;amp; cross-functional teams&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Overall
&lt;/h3&gt;

&lt;p&gt;Utilizing microservices today is the correct choice in my opinion.  Not only does it make maintaining work so much easier, it allows for code updates to be more reliable. That is crucial, especially when working on such large scale code repositories and systems.  &lt;/p&gt;

&lt;h4&gt;
  
  
  Check out this &lt;a href="https://youtu.be/ZfA3rzfsS78"&gt;video&lt;/a&gt; where I talk through the differences!
&lt;/h4&gt;

</description>
      <category>webdev</category>
      <category>microservices</category>
      <category>monoliths</category>
    </item>
    <item>
      <title>But for real, what are web components?</title>
      <dc:creator>solveyourstrife</dc:creator>
      <pubDate>Tue, 04 May 2021 18:46:12 +0000</pubDate>
      <link>https://dev.to/solveyourstrife/but-for-real-what-are-web-components-4he2</link>
      <guid>https://dev.to/solveyourstrife/but-for-real-what-are-web-components-4he2</guid>
      <description>&lt;p&gt;If you are here, I am just going to assume that you do not know what web components are.  Otherwise, why would you be reading this?&lt;/p&gt;

&lt;h2&gt;
  
  
  An easy, breezy, beautiful definition
&lt;/h2&gt;

&lt;p&gt;Basically web components are a group of features that provide a standard model for the web, allowing encapsulation and interoperability of HTML elements.  Easy right?&lt;/p&gt;

&lt;p&gt;There are four browser standards that work together to compose the model:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; elements&lt;/li&gt;
&lt;li&gt;custom elements&lt;/li&gt;
&lt;li&gt;shadow DOM&lt;/li&gt;
&lt;li&gt;javascript modules&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Read more into each of these &lt;a href="https://dev.to/bennypowers/lets-build-web-components-part-1-the-standards-3e85"&gt;here&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Why utilize web components?
&lt;/h2&gt;

&lt;p&gt;One of the biggest advantages of web components is that it is open source.  Open source is when the source code for a software is free and available for all.  It can from there be changed or redistributed.&lt;/p&gt;

&lt;p&gt;Another great aspect of web components is that they are custom.  With applications using so many different environments - from JavaScript, Python, or even HTML - web components are able to be used in all due to their functionality that is separated from the specific code.&lt;/p&gt;

&lt;h2&gt;
  
  
  They can make business devOps easier!
&lt;/h2&gt;

&lt;p&gt;For developers when they are working on a website or framework and find themselves repeating components, web components can come in handy.  Instead of creating the component every time, the web components allow for it to be created only once, and then shared across the company.  These can include headers, footers, menus, and other web aspects that need to be continually reused.&lt;/p&gt;

&lt;h2&gt;
  
  
  Examples of real life web components being used
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--w0HzyL8M--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1yfmjr9qi7v1e6p7zfzq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--w0HzyL8M--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1yfmjr9qi7v1e6p7zfzq.png" alt="image"&gt;&lt;/a&gt;&lt;br&gt;
 This image shows the web component for the header when you inspect the twitter home page.  You can learn about that &lt;a href="https://www.webcomponents.org/element/@polymer/app-layout"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--VIDkuDsn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/juf5e1p1xmlydu1r1h7d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VIDkuDsn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/juf5e1p1xmlydu1r1h7d.png" alt="image"&gt;&lt;/a&gt;&lt;br&gt;
Here is an example of an svg web component being used on YouTube.  It basically lets the user define their own icons, and you can read more about it &lt;a href="https://www.webcomponents.org/element/@polymer/iron-iconset-svg"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--F7ukpUhz--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xniee6finv2tsn7lgg2y.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--F7ukpUhz--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xniee6finv2tsn7lgg2y.png" alt="image"&gt;&lt;/a&gt;&lt;br&gt;
A great place to find out about how you can utilize web components in Adobe is right on Adobe in the first place!  &lt;a href="https://opensource.adobe.com/spectrum-web-components/"&gt;This&lt;/a&gt; adobe site shows all of the open source code available for Adobe products.&lt;/p&gt;

&lt;p&gt;If you would like a video to explain web components to you, check out this &lt;a href="https://youtu.be/ml6ddXNRxgs"&gt;video&lt;/a&gt;!&lt;/p&gt;

</description>
      <category>webcomponents</category>
      <category>a11y</category>
      <category>html</category>
    </item>
    <item>
      <title>GitLab vs GitHub - The Ultimate Showdown!</title>
      <dc:creator>solveyourstrife</dc:creator>
      <pubDate>Mon, 22 Feb 2021 02:38:19 +0000</pubDate>
      <link>https://dev.to/solveyourstrife/gitlab-vs-github-the-ultimate-showdown-5052</link>
      <guid>https://dev.to/solveyourstrife/gitlab-vs-github-the-ultimate-showdown-5052</guid>
      <description>&lt;p&gt;Looking for the best hosting platform for your git creations?  You may have the instinct to run to GitHub, but let me just stop you and introduce you to the one you could refer to as "the one who got away" if you make that choice: GitLab.  A web-based DevOps tool, GitLab is the lesser known of the two.  However, GitLab has the potential to be a better choice for feature-based programmers, as it is an open source Git management system.&lt;/p&gt;

&lt;p&gt;In this post, I will cover how to create your own GitLab instance using reclaim.cloud, a cloud service that allows users access to development environments, and only pay for what you use.&lt;/p&gt;

&lt;h2&gt;
  
  
  Setting up Reclaim.cloud
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Create an account on &lt;a href="https://reclaim.cloud/"&gt;reclaim.cloud&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;In order to gain access to DevOps, you will have to upgrade to a professional account (and preload some money for access too)&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Install GitLab Environment
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Go to the applications tab on the homepage of reclaim.cloud.  Click on DevOps Lab- GitLab server.  To download and deploy, type in your account's email address.  They will send a link to start the process.
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The installation process takes a bit of time, so while that is working its magic, get yourself a snack.  Reclaim.cloud will send another email once the installation process is completed and is ready to be deployed!&lt;/p&gt;

&lt;h2&gt;
  
  
  Setting Up Your Server
&lt;/h2&gt;

&lt;p&gt;Reclaim.cloud is great in terms of user customization of the server.  To do so, click on the green gear icon next to the GitLab tab.  Then a ton of configurations for your server will show up! (as seen below)&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Tij7mPZi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qgq1kv86umzvrdyky2a6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Tij7mPZi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qgq1kv86umzvrdyky2a6.png" alt="image"&gt;&lt;/a&gt;&lt;br&gt;
One configuration you should edit for your environment is to increase the cloudlet numbers to ensure that enough resources are available to run.  To ensure that GitLab has enough CPU and RAM to run without failure, the number of cloudlets should be set at the maximum - 32.&lt;/p&gt;

&lt;h2&gt;
  
  
  Launch GitLab!
&lt;/h2&gt;

&lt;p&gt;In order to launch, all that is needed is to enter your personal domain name into a search engine, or press the "Open in Browser" button.  It will give you a standard user and password that can be easily changed to your preferred credentials on the dashboard. &lt;br&gt;
 Once you sign in with your credentials, GitLab should be up and ready for your use!&lt;/p&gt;

&lt;h2&gt;
  
  
  Why is GitLab better for the corporate world?
&lt;/h2&gt;

&lt;p&gt;Authentication Levels&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;GitLab offers a setting that where you can set people's access permission according to their role on the team.  It also offers a issue tracker without given total access to the code.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Customization&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;When an admin in a GitLab environment, you are able to have complete control over the features and characteristics of the project repo.  The amount of customization is unlike anything found in GitHub, especially when regarding analytics, issues, packages and tracking.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Continuous Integration aka CI&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;To me this is one of the biggest perks of using GitLab.  CI is CRUCIAL when it comes to development - it is a savior when regarding pull requests and their possibility to break the code.  GitLab is unique as it comes with its own, FREE CI.  When comparing to competitors like GitHub that require the purchase of an outside CI, this is a huge selling point for developers to use GitLab.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  So what is my opinion?
&lt;/h2&gt;

&lt;p&gt;Personally, I have not had any experience using GitLab during my education experience.  In past classes, we have utilized GitHub for team programming projects, and while I do not dislike it, it is not always the easiest platform to use for large projects.  What I really liked about GitLab as I learned about it was the customization and CI that it offered - it seems to be more tailored to corporate-level functions where DevOps and developers can better function with the aspects offered by their environment.  I would say that for small or personal projects to take advantage of GitHub, and use GitLab for large-scale and professional uses.&lt;/p&gt;

&lt;h2&gt;
  
  
  Check out my &lt;a href="https://youtu.be/O0Lyw-Z3PIE"&gt;YouTube video&lt;/a&gt; for more explanation and a walkthrough of setting up a GitLab instance!
&lt;/h2&gt;

</description>
      <category>reclaimcloud</category>
      <category>ci</category>
      <category>github</category>
      <category>gitlab</category>
    </item>
    <item>
      <title>How to audit a website for accessibility.</title>
      <dc:creator>solveyourstrife</dc:creator>
      <pubDate>Sun, 14 Feb 2021 22:29:14 +0000</pubDate>
      <link>https://dev.to/solveyourstrife/how-to-audit-a-website-for-accessibility-9cp</link>
      <guid>https://dev.to/solveyourstrife/how-to-audit-a-website-for-accessibility-9cp</guid>
      <description>&lt;p&gt;When building and designing a website, accessibility is a crucial aspect that can sometimes go overlooked.  When certain web aspects are not developed with the intentions to be accessible to all, this may drive potential users away.  Luckily, in today's world there are websites that utilize AI and other recognition tools that will give feedback on the accessibility of a website.  In this post I will be covering three of these tools, and the results of their audit of the same website - CHAARG, which is a national health and fitness club for female co-eds.&lt;/p&gt;

&lt;h2&gt;
  
  
  Web.dev
&lt;/h2&gt;

&lt;p&gt;The process of running an audit on &lt;a href="https://web.dev"&gt;web.dev&lt;/a&gt; is incredibly easy.  All that is really required of you is to copy/paste your URL into the "test your link" field.  Enter, and BAM! - you have your audit. The areas that are tested are performance, accessibility, best practices, and SEO (search engine optimization).  CHAARG scored a 10, 90, 57, and 83 respectively.  The biggest problem is obviously in the website's performace.  Some of the suggestions that were given were to remove unused CSS and JavaScript code and to eliminate render-blocking resources.&lt;/p&gt;

&lt;h2&gt;
  
  
  Lighthouse
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://chrome.google.com/webstore/detail/lighthouse/blipmdconlkpinefehnmjammfjpmpbjk?hl=en"&gt;Lighthouse&lt;/a&gt; is a Chrome extension that when on a website and activated, it runs an accessibility audit.  These results were not much different from those from web.dev.  Every aspect had a rating almost exactly the same.  The feedback from Lighthouse that seemed most critical to tend to for accessibility was to fix preload key requests - or prioritze gathering resources needed in later requests - and to ensure that text is still visible to the users when it is loading.&lt;/p&gt;

&lt;h2&gt;
  
  
  Wave
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://chrome.google.com/webstore/detail/wave-evaluation-tool/jbbplnpkjmmeebjpijfedlgcdilocofh"&gt;Wave&lt;/a&gt; is another Chrome extension that I used.  This site also gives information on a website with the same categories as web.dev and Lighthouse.  One thing that I appreciated about this interface was that there is a separate tab solely for errors, and it categorizes them by level of importance.  I also really liked how this auditing platform shows the website in review, and has little icons that when hovered over on show a summary of the issue. A main suggestion here was to do with webfont loads (just as Lighthouse suggested), where a CSS font can be implemented in order to show some text on the screen as it is loading.&lt;/p&gt;

&lt;h2&gt;
  
  
  Check out this &lt;a href="https://youtu.be/dlB8KG2D_c4"&gt;YouTube video&lt;/a&gt; where I explain these accessibility audits!
&lt;/h2&gt;

</description>
      <category>ally</category>
      <category>webdev</category>
      <category>lighthouse</category>
      <category>wave</category>
    </item>
    <item>
      <title>Implenting VueJS is Easier Than You Think!</title>
      <dc:creator>solveyourstrife</dc:creator>
      <pubDate>Thu, 11 Feb 2021 00:53:51 +0000</pubDate>
      <link>https://dev.to/solveyourstrife/implenting-vuejs-is-easier-than-you-think-4n6o</link>
      <guid>https://dev.to/solveyourstrife/implenting-vuejs-is-easier-than-you-think-4n6o</guid>
      <description>&lt;h2&gt;
  
  
  Um... but what is VueJS??
&lt;/h2&gt;

&lt;p&gt;VueJS is an open-source framework of JavaScript that you can build a user interface or a single page app!  I am ~not the greatest~ at coding in JavaScript.  Like I know the BASICS.  When I decided to implement VueJS into my previously existing resume project, I expected it to be very difficult.  But, its so easy!  All you have to do is include the script (src) into the HTML code from a Vue library that you can search and find online!&lt;/p&gt;

&lt;h2&gt;
  
  
  So then how do you use it in a resume format?
&lt;/h2&gt;

&lt;p&gt;I used VueJS to create a little get to know me visual.  I wanted to take a little more fun approach to this, as I previously made a real resume on Code Pen as well with HTML and CSS.  The first thing I did was define and create the sections that I would need - name, education, some fun facts, video, and a photo.  Vue makes these easy to implement: once they are defined, then you can recall in the HTML loop.  Using bullet points was also not too hard - &lt;/p&gt;
&lt;li&gt; is used to do this puts them in a bullet format automatically!  Creating this while using Vue was much more straightforward than I thought it would be.
&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;Overall, I should not have been as intimidated with the idea of learning VueJS as I was.  As someone who knows the very basics of JavaScript (and I mean basicssss) I was just afraid that it was going to take forever to grasp.  But alas, it was not!  Honestly, spending a couple of minutes to look into the basic syntax and finding a library, and you will be up &amp;amp; at it using Vue!  So go try it out.  For more of an explanation of the this, watch this &lt;a href="https://youtu.be/E4aGnrzwAYU"&gt;video&lt;/a&gt; OR just look at the &lt;a href="https://codepen.io/solveyourstrife/pen/poNEXeX"&gt;code itself&lt;/a&gt; here!&lt;/p&gt;


&lt;/li&gt;

</description>
    </item>
    <item>
      <title>Who is Alaina Strife??</title>
      <dc:creator>solveyourstrife</dc:creator>
      <pubDate>Mon, 01 Feb 2021 02:53:34 +0000</pubDate>
      <link>https://dev.to/solveyourstrife/who-is-alaina-strife-np0</link>
      <guid>https://dev.to/solveyourstrife/who-is-alaina-strife-np0</guid>
      <description>&lt;p&gt;Hello fellow tech friends! My name is Alaina Ann Strife (including the middle name to show how unoriginal I am) and I am currently a junior. Thankful I'm a junior because HOPEFULLY all of this COVID shiz will end soon if people just ya know, listen to medical and federal guidelines. But maybe I am too hopeful. Anyway, I am an IST - Design &amp;amp; Development major here at PSU with a minor in Security Risk Analysis. This upcoming summer I will be an IT intern at Merck, not sure what I am working on yet.  Last summer I interned at Trane, and although the company atmosphere was great, its not too riveting coding for air conditioners.&lt;/p&gt;

&lt;p&gt;I am from a ~super~ small town in New York near Ithaca called Horseheads.  Yes, its really called Horseheads.  My friends here like to change it every time they mention it to a different animal and body part - like "Beavertail" or "Monkeyfeet." Its a really pretty area though with lots of vineyards and waterfalls so I recommend visiting sometime!&lt;/p&gt;

&lt;p&gt;I absolutely love Penn State, and cannot imagine anywhere else that I would belong right now during my college years.  I will be BIG sad this time next year when they will be kicking me out soon and I will have to be... an adult. Gross. I am a really active person and enjoy working out a lot. I am also on a rules &amp;amp; regulation committee for THON, which I LOVE!&lt;/p&gt;

&lt;p&gt;For the future, I hope to be working in a job in the tech field, although I am not sure quite exactly what. While I am a huge lover of coding, developing, and software, I just simply do not want to do that for my whole adult career. If I were to choose exactly what to do, that would be to do a couple of years as a software developer, then to transition into a project lead or manager. I really enjoy working and leading teams and I have a pretty creative side to me. That is ideal. I am also not sure what kind of industry, but after this upcoming internship, I hope to have a better understanding.&lt;/p&gt;

&lt;p&gt;On my YouTube channel this semester, I hope to be able to provide you with helpful and fun content that will show you how to do different projects in software and coding, as well as some of the things in tech that interest me. Check out my SHOCKING video below, I hope you enjoy it!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://youtu.be/zWK3W0SkIOo"&gt;https://youtu.be/zWK3W0SkIOo&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
