<?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: michaelzwhang</title>
    <description>The latest articles on DEV Community by michaelzwhang (@michaelzwhang).</description>
    <link>https://dev.to/michaelzwhang</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%2F701171%2F498e4cbe-c29a-4bc6-a7ac-5f919b8a89af.png</url>
      <title>DEV Community: michaelzwhang</title>
      <link>https://dev.to/michaelzwhang</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/michaelzwhang"/>
    <language>en</language>
    <item>
      <title>The Friendship App</title>
      <dc:creator>michaelzwhang</dc:creator>
      <pubDate>Sat, 27 Nov 2021 23:03:12 +0000</pubDate>
      <link>https://dev.to/michaelzwhang/the-friendship-app-1b3f</link>
      <guid>https://dev.to/michaelzwhang/the-friendship-app-1b3f</guid>
      <description>&lt;p&gt;If I could build an app - the app that I would want built is a really sophisticated people matching app. The purpose of this app would be to connect people with similar interests and backgrounds together. With the use of sophisticated AI and match-making technologies, ideally the people that we would want to have connected to each other would have similar backgrounds, interests, et cetera. With the main target of users being aimed at the young adult generation - specifically those in college or recent graduates. I think that because most of the matchmaking apps are mainly focused on dating, that it would be nice to have one that would be focused on purely making and creating friendships. &lt;/p&gt;

&lt;p&gt;The usability of this app would be quite simple, it would be accessible through whatever smart mobile device that you would expect to carry, and downloadable in the app store. When using the app, it would temporarily use your location and match you with people in the area based off of the information you listed as being your interests. Steps to verify who you say you are could be done through a facial recognition system that users would have to certify through when first signing up to the app and every so often. &lt;/p&gt;

&lt;p&gt;If money was no concern and time was no concern, I would assemble my life skills to master a specific craft in tech - whether it be in the inner workings of cybersecurity or innovative things such as web or application development. I strongly believe that any master of a specific trade within tech can make a big impact on the world if they are able to manifest and put their skills on the table for good and productivity. Personally, for me, I've been studying in cybersecurity for 4 years at Penn State. So, as I'm already familiar with this as opposed to other things, I would want to further develop my skills within this trade. I think that being a part of a groundbreaking company or an organization that is changing the way we look at cybersecurity would be something fascinating to do - a company with work that puts users' steps ahead of threat actors as opposed to it being the other way around.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Blog: Slot Composition</title>
      <dc:creator>michaelzwhang</dc:creator>
      <pubDate>Sat, 27 Nov 2021 22:43:00 +0000</pubDate>
      <link>https://dev.to/michaelzwhang/blog-slot-composition-2i3j</link>
      <guid>https://dev.to/michaelzwhang/blog-slot-composition-2i3j</guid>
      <description>&lt;p&gt;Slot Composition Defined:&lt;br&gt;
Essentially what slot composition is, is when a user passes code through elements. Examples of what this code could be includes things such as a header, icon, et cetera. It essentially is everything and anything that goes within the makings of a card that can be interconnected with each other.&lt;/p&gt;

&lt;p&gt;Using  Components:&lt;br&gt;
There are different ways in which we can utilize slot composition within the web components we work on. &lt;br&gt;
    An example of this is simple as:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;slot name = "Header"&amp;gt;&amp;lt;p&amp;gt;None&amp;lt;/p&amp;gt;&amp;lt;/slot&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;What this does is, it essentially identifies and uses the naming convention to name the elements that are being passed through the header that you are using.&lt;/p&gt;

&lt;p&gt;Example of Slot Composition:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;user-card&amp;gt;
  #shadow-root
     &amp;lt;div&amp;gt;Name:
          &amp;gt;slot name="username"&amp;gt;&amp;lt;/slow&amp;gt;
     &amp;lt;/div&amp;gt;
     &amp;lt;div&amp;gt;Birthday:
        &amp;lt;slot name="birthday"&amp;gt;&amp;lt;/slot&amp;gt;
     &amp;lt;/div&amp;gt;
&amp;lt;span slot="username"&amp;gt;Jon Smith&amp;lt;/span&amp;gt;
&amp;lt;span slot="birthday"&amp;gt;01.01.2001&amp;lt;/span&amp;gt;
&amp;lt;/user-card&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Source: &lt;br&gt;
&lt;a href="https://javascript.info/slots-composition"&gt;https://javascript.info/slots-composition&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Considerations for Web Components</title>
      <dc:creator>michaelzwhang</dc:creator>
      <pubDate>Sat, 27 Nov 2021 22:24:46 +0000</pubDate>
      <link>https://dev.to/michaelzwhang/considerations-for-web-components-2egm</link>
      <guid>https://dev.to/michaelzwhang/considerations-for-web-components-2egm</guid>
      <description>&lt;p&gt;General:&lt;br&gt;
When designing a web component card there are some key elements that need to be included:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Header&lt;/li&gt;
&lt;li&gt;Icon&lt;/li&gt;
&lt;li&gt;Banner&lt;/li&gt;
&lt;li&gt;Body&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The header will contain the icon, as well as any additional titles or subtitles that may need to be included. The icon itself will be represented by an SVG file. The banner of the card includes a colored background for the header, subheader, and the icon to rest on. The body contains any images or texts that may need to be included.&lt;/p&gt;

&lt;p&gt;For our group, because it's a team of 4, the plan would be for each one of the team members to handle an element of the task. Any members that finish early, can assist other members in the progress and completion of their work in order to ensure a successful development process.&lt;/p&gt;

&lt;p&gt;Unfortunately, I do not have much previous experience with web development prior to having taken this class, so there is a lot to be learned with each project and task that we've been assigned to work on. Getting through the button task has really helped me become more familiar with how the development of web components go and what I can expect in this line of work.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>CTA Button: The Easy Button</title>
      <dc:creator>michaelzwhang</dc:creator>
      <pubDate>Sat, 27 Nov 2021 22:06:32 +0000</pubDate>
      <link>https://dev.to/michaelzwhang/cta-button-the-easy-button-31pe</link>
      <guid>https://dev.to/michaelzwhang/cta-button-the-easy-button-31pe</guid>
      <description>&lt;p&gt;Despite the fact that the task was to develop a simple CTA button - there is a lot that is involved when developing one on JavaScript. Within each process of the design, there are many considerations that need to be taken into account in order to come out with a successful end product. My team worked on a button that would be rendered and operate off a page on the web.&lt;/p&gt;

&lt;p&gt;Through this task, we have come across some successes and obstacles. One of the easiest successes that we took as a team, was the fact that the design process for the button was straight forward and stream lined in an easy to do way. We simply started out on similar terms with the open-wc boilerplate that we had previously worked on. We also knew that the design template was going to be based off of Staple's infamous "That was easy" button. This allowed us to have an idea and sense of what we were aiming on creating as a team.&lt;/p&gt;

&lt;p&gt;As mentioned, obstacles did come however. Initially when we first began the task, we did not have a grasp and understanding on how to properly make changes and edits to the styles that had already been built to the open-wc boilerplate in which we had started on. We thought that we would have to do things the old-fashioned way and make implementations of constructors in a certain manner, but using CSS was going to be enough for the styling of our application.&lt;/p&gt;

&lt;p&gt;Overall, there are some key things that I could take away from this assignment from the get go. One of the primary takeaways was that the way the development process is for web components is drastically different from the processes we see being utilized within the Python and Java programming worlds. Identifying the many states and characteristics of the CTA button was something that required thinking beyond the keyboard. Extra time allows for the developers to consider the endless attributes and characteristics that can be added -- so ultimately time was also something I noted as a beneficial thing to have on your side.&lt;/p&gt;

&lt;p&gt;Repository:&lt;br&gt;
&lt;a href="https://github.com/Viable-Slime/Button"&gt;https://github.com/Viable-Slime/Button&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Boilerplates</title>
      <dc:creator>michaelzwhang</dc:creator>
      <pubDate>Sat, 27 Nov 2021 20:35:37 +0000</pubDate>
      <link>https://dev.to/michaelzwhang/boilerplates-46la</link>
      <guid>https://dev.to/michaelzwhang/boilerplates-46la</guid>
      <description>&lt;p&gt;There are several similarities that can be identified among the four boilerplates that we're looking at in class - React, Stencil.js, Vue.js, and Angular. The components within each seem to be a commonality for these frameworks - they all contain and utilize CSS, HTML, and JavaScript files. Additionally, they all are heavily reliant on many dependencies. Between VueJS and Angular however - they are only a handful of files that can be found in both, such as package.json. Both also involve an index.html file.&lt;/p&gt;

&lt;p&gt;In my personal opinion, between VueJS and Angular, I believe that VueJS is the best pick if you're just getting started. Because of the fact that the Angular boilerplate has more complexities and a lot more to it. If I were assigned to have a web application built tomorrow - VueJS would be the one that I would have to pick. VueJS involves these visual components which are easy to pick up and integrate into your work.&lt;/p&gt;

&lt;p&gt;Viable Slime Organization Repo:&lt;br&gt;
&lt;a href="https://github.com/Viable-Slime/BoilerPlate"&gt;https://github.com/Viable-Slime/BoilerPlate&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Angular Repo:&lt;br&gt;
&lt;a href="https://github.com/jbutko/AngularJS-Boilerplate"&gt;https://github.com/jbutko/AngularJS-Boilerplate&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Installing: open-wc</title>
      <dc:creator>michaelzwhang</dc:creator>
      <pubDate>Sat, 27 Nov 2021 20:17:28 +0000</pubDate>
      <link>https://dev.to/michaelzwhang/installing-open-wc-1lc5</link>
      <guid>https://dev.to/michaelzwhang/installing-open-wc-1lc5</guid>
      <description>&lt;p&gt;To begin the process, you would have to install the most recent version of Node.js (&lt;a href="https://nodejs.org/en/"&gt;https://nodejs.org/en/&lt;/a&gt;). The instructions should come along with the Node.js setup pop-up. This will install npm with Node.&lt;/p&gt;

&lt;p&gt;From here, you can install yarn. This of which may be done by entering the following into the Windows Cmd Prompt:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm install --global yarn
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now identify and move to the folder you are going to be using for your Cmd Prompt and type in:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm init @open-wc
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Wait patiently for everything to setup on its own. Once it's ready, options will appear on the screen. Make selections to: scaffold a new project, web component, linting, no (to typescript), the name of your web component ("hello-world"), review the file location (click yes to confirm it looks good), and then finally make a selection to "Yes, with yarn" for the dependencies to be installed.&lt;/p&gt;

&lt;p&gt;Once this is in order, you should be all done!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Hello class!</title>
      <dc:creator>michaelzwhang</dc:creator>
      <pubDate>Tue, 07 Sep 2021 18:11:32 +0000</pubDate>
      <link>https://dev.to/michaelzwhang/hello-class-50dj</link>
      <guid>https://dev.to/michaelzwhang/hello-class-50dj</guid>
      <description>&lt;p&gt;My name is Michael and I am a senior at Penn State University. Currently I am majoring in Cybersecurity Analytics &amp;amp; Operations and minoring in Information Science &amp;amp; Technology. &lt;/p&gt;

&lt;p&gt;This past summer and overlapping into the first week of the semester, I had the opportunity to intern at CrowdStrike, where I was working as a threat intelligence analyst. Though I am not so sure how much web component work I will do in my future career, I am optimistic and excited to learn in this class and discover where I will be able to apply this knowledge in the future.&lt;/p&gt;

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