<?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: Sonia</title>
    <description>The latest articles on DEV Community by Sonia (@itsmesoniajs).</description>
    <link>https://dev.to/itsmesoniajs</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%2F374598%2F18f98099-4025-457d-90a0-4d18bc159b2e.jpg</url>
      <title>DEV Community: Sonia</title>
      <link>https://dev.to/itsmesoniajs</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/itsmesoniajs"/>
    <language>en</language>
    <item>
      <title>Mockups for Portfolio Website: How to add project screenshots onto digital devices for FREE</title>
      <dc:creator>Sonia</dc:creator>
      <pubDate>Wed, 13 Jan 2021 21:26:15 +0000</pubDate>
      <link>https://dev.to/itsmesoniajs/mockups-for-portfolio-website-how-to-add-screenshots-of-your-projects-onto-digital-devices-for-free-10an</link>
      <guid>https://dev.to/itsmesoniajs/mockups-for-portfolio-website-how-to-add-screenshots-of-your-projects-onto-digital-devices-for-free-10an</guid>
      <description>&lt;p&gt;Hello friends!&lt;/p&gt;

&lt;p&gt;I'm in a particularly good mood this evening after I finally discovered an even EASIER way to mockup projects without Photoshop or Figma.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/TFBqG1K15zTVkTb2cx/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/TFBqG1K15zTVkTb2cx/giphy.gif"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(No shade to Figma, but I like things done quickly sometimes and the options on there can be overwhelming when I don't use it often enough!)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/sRIXt1e9dQRjEjxnMk/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/sRIXt1e9dQRjEjxnMk/giphy.gif"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Mockups are models or replicas of well... anything really. BUT in the world of UX, UI and software development: &lt;/p&gt;

&lt;p&gt;A mockup is a model of a design or device, used largely for product presentational purposes. It's a way for designers, engineers and you (yes, you!) to show off what your design will actually look like when it's launched out into the real world. &lt;/p&gt;

&lt;p&gt;You may have heard of Figma, Placeit, Artboard.Studio,&lt;br&gt;
Vexels, WoFox, MockupsJar aaaand others that the industry &lt;em&gt;swears by&lt;/em&gt; to Generate Mockups, but I personally like how easy &lt;a href="smartmockups.com"&gt;smartmockups&lt;/a&gt; is to use.&lt;/p&gt;

&lt;p&gt;Here's a working example of one of my creations:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0dKKplxr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://www.i.imgur.com/oBm3K4X.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0dKKplxr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://www.i.imgur.com/oBm3K4X.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  le instructions
&lt;/h1&gt;

&lt;ol&gt;
&lt;li&gt;Take a screenshot of your project in Mac and iPhone format (Chrome has a toggle device toolbar to switch between devices in the inspector panel)&lt;/li&gt;
&lt;li&gt;Search on smartmockups.com for the type of device you'd like (there's a lot of free options!)&lt;/li&gt;
&lt;li&gt;Upload your photos and arrange as required.&lt;/li&gt;
&lt;li&gt;Download their premium (paid) and non-premium (FREE!) versions of the image.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;And voila!&lt;/p&gt;

</description>
      <category>ux</category>
      <category>ui</category>
      <category>html</category>
      <category>css</category>
    </item>
    <item>
      <title>Colt Steele's The Web Developer Bootcamp 2021- HTML5 Forms and Form Validation </title>
      <dc:creator>Sonia</dc:creator>
      <pubDate>Tue, 12 Jan 2021 17:34:56 +0000</pubDate>
      <link>https://dev.to/itsmesoniajs/colt-steele-s-the-web-developer-bootcamp-2021-html5-forms-and-form-validation-31c4</link>
      <guid>https://dev.to/itsmesoniajs/colt-steele-s-the-web-developer-bootcamp-2021-html5-forms-and-form-validation-31c4</guid>
      <description>&lt;p&gt;I've graduated from HTML to CSS in Colt Steele's &lt;a href="https://www.udemy.com/course/the-web-developer-bootcamp/" rel="noopener noreferrer"&gt;'The Web Developer Bootcamp 2021' &lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;A comprehensive course he recently launched at the beginning of the new year, the online dev community and the adroit Udemy community have been buzzing over the complete overhaul.. and frankly? I can see why. &lt;/p&gt;

&lt;p&gt;Colt is an in-person instructor in the Seattle Bay area, and me being a bootcamp grad and software development teaching assistant, I was curious to see how his online material faired. I'll be detailing my key learnings for each section on dev.to and would be interested to hear your thoughts! #begentle&lt;/p&gt;

&lt;p&gt;Colt's course boasts a humble 63 hours on-demand video, 47 articles, 122 downloadable resources, 62 coding exercises, and the standard certificate of completion.&lt;/p&gt;

&lt;p&gt;As most of us already are well aware, 63 hours of on-demand videos and tutorials doesn't necessarily equate to exactly 63 hours of studying. This is a behemoth course. I can't speak for everyone, but it takes perhaps a day or two to understand a 25 minute video introducing a new concept. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/1jl173guBKkbvC03rQ/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/1jl173guBKkbvC03rQ/giphy.gif"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And that's perfectly okay! Everyone learns at their own pace, and I'm the pedantic type that needs to understand every nut and bolt before I can move onto the next topic.&lt;/p&gt;

&lt;p&gt;I enrolled in Colt's course for a number of reasons, but largely to revise topics I was already comfortable with in lockdown, while learning old concepts that I wasn't very comfortable with yet (Hello, JavaScript, my old friend!) &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%2Fexternal-preview.redd.it%2FN_bB0Oszfuks9wLTax6viC4Hh9FzHgpMcpYiuUHoQQU.jpg%3Fauto%3Dwebp%26s%3D22d6a707521ffee7ea809ec405a10477ee7bd2b8" 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%2Fexternal-preview.redd.it%2FN_bB0Oszfuks9wLTax6viC4Hh9FzHgpMcpYiuUHoQQU.jpg%3Fauto%3Dwebp%26s%3D22d6a707521ffee7ea809ec405a10477ee7bd2b8"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I began taking notes on the course on &lt;a href="https://github.com/soniacweb/colt-webdevbootcamp-notes" rel="noopener noreferrer"&gt;github&lt;/a&gt; - feel free to check it out, I'll endeavour to commit to it regularly.  &lt;/p&gt;

&lt;h1&gt;HTML Forms&lt;/h1&gt;

&lt;p&gt;I completed the HTML portion of the course in one sitting- 10% of the course done! *pats self on back *&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/MzId7vT7YOUzm/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/MzId7vT7YOUzm/giphy.gif"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;BUT I came to the embarrassing realisation I hadn't paid much attention to forms aside from acknowledging we all use them in practically every app we've come across to input personal information. &lt;/p&gt;

&lt;p&gt;The verbatim definition taken from MDN:&lt;/p&gt;

&lt;p&gt;"The HTML &lt;code&gt;&amp;lt;form&amp;gt;&lt;/code&gt; element represents a document section containing interactive controls for submitting information."&lt;/p&gt;

&lt;p&gt;Forms are a collection of HTML elements for users to input values. They are for information collecting. &lt;/p&gt;

&lt;h1&gt;HTML form tags:&lt;/h1&gt;

&lt;p&gt;The &lt;code&gt;&amp;lt;form&amp;gt;&lt;/code&gt; element is the container tag for a range of input elements, such as: text fields, checkboxes, radio buttons, submit buttons, etc.&lt;/p&gt;

&lt;p&gt;A simple search can be from a form- it fires across a HTTP request to a server to retrieve results for the search.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The &lt;code&gt;action attribute&lt;/code&gt;- specifies WHERE (usually servers) the form data should be sent.&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The &lt;code&gt;method attribute&lt;/code&gt; specifies which &lt;code&gt;HTTP method&lt;/code&gt; is being used, eg the &lt;code&gt;GET&lt;/code&gt; method.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;&amp;lt;form action="/query" method="get"&amp;gt;&amp;lt;/form&amp;gt;&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The &lt;code&gt;label&lt;/code&gt; tag is considered important for accessibility. It comes with the &lt;code&gt;for&lt;/code&gt; attribute, which needs to match the &lt;code&gt;id&lt;/code&gt; attribute of the input.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;&amp;lt;label for="inputID"&amp;gt;Your Name&amp;lt;/label&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;Common input types&lt;/h1&gt;

&lt;p&gt;&lt;code&gt;Type&lt;/code&gt; is where the magic happens- specifying a `type' can dramatically alter the input's behaviour and appearance. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;&amp;lt;input type="text"&amp;gt;&amp;lt;/input&amp;gt;&lt;/code&gt;

&lt;ul&gt;
&lt;li&gt;types include: 

&lt;ul&gt;
&lt;li&gt;time&lt;/li&gt;
&lt;li&gt;text&lt;/li&gt;
&lt;li&gt;password&lt;/li&gt;
&lt;li&gt;color&lt;/li&gt;
&lt;li&gt;number&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;The &lt;code&gt;placeholder&lt;/code&gt; attribute - this is the initial text specifying (and prompting) the user in what they should include in the input. &lt;/p&gt;

&lt;p&gt;Here's a fairly basic, ugly form for you to admire: &lt;/p&gt;

&lt;p&gt;{% codepen &lt;a href="https://codepen.io/soniaweb/pen/BaLqWra" rel="noopener noreferrer"&gt;https://codepen.io/soniaweb/pen/BaLqWra&lt;/a&gt; %}&lt;/p&gt;

&lt;h1&gt;HTML5 Form Validations&lt;/h1&gt;

&lt;p&gt;HTML5 has some built in browser validations on the frontend that we can make work to our advantage.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The &lt;code&gt;required&lt;/code&gt; attribute: this is a boolean attribute. When present, it marks the input field as mandatory to complete. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;minlength&lt;/code&gt;, &lt;code&gt;maxlength&lt;/code&gt; attributes - defines the minimum/maximum number of characters permitted before submission.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;min&lt;/code&gt;, &lt;code&gt;max&lt;/code&gt; attributes - specifies the min/max values in an input&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;type="email"&lt;/code&gt; - expects a certain format/pattern - &lt;br&gt;
defines a field for an e-mail address and automatically validates assuming it is a correctly formatted email address. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;type="url"&lt;/code&gt; - expects a url formatted/patterned input before validation.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And that about wraps it up without boring everyone- I often overlooked the importance of forms and thanks to lockdown revision, I possess an appreciation for them now. Hopefully it's the start of a beautiful friendship.&lt;/p&gt;

&lt;p&gt;Further Resources:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form" rel="noopener noreferrer"&gt;https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.tutorialspoint.com/html/html_forms.htm" rel="noopener noreferrer"&gt;https://www.tutorialspoint.com/html/html_forms.htm&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.youtube.com/watch?v=fNcJuPIZ2WE" rel="noopener noreferrer"&gt;https://www.youtube.com/watch?v=fNcJuPIZ2WE&lt;/a&gt;&lt;/p&gt;

</description>
      <category>html</category>
      <category>webdev</category>
      <category>womenintech</category>
    </item>
  </channel>
</rss>
