<?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: Dylan Landry</title>
    <description>The latest articles on DEV Community by Dylan Landry (@dyllandry).</description>
    <link>https://dev.to/dyllandry</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%2F194933%2F86740647-047c-4347-8236-43d300815544.jpeg</url>
      <title>DEV Community: Dylan Landry</title>
      <link>https://dev.to/dyllandry</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/dyllandry"/>
    <language>en</language>
    <item>
      <title>Why Curiosity is Dangerous</title>
      <dc:creator>Dylan Landry</dc:creator>
      <pubDate>Sat, 27 Jul 2019 20:29:23 +0000</pubDate>
      <link>https://dev.to/dyllandry/why-curiosity-is-dangerous-4a08</link>
      <guid>https://dev.to/dyllandry/why-curiosity-is-dangerous-4a08</guid>
      <description>&lt;p&gt;Nitrogen is a necessary element for plant growth. Nitrogen forms amino acids, which forms plant protein, which forms plant tissues such as chlorophyll, which is imperative for photosynthesis.&lt;/p&gt;

&lt;p&gt;Nitrogen can kill plants, too. Excess quantities fuel the proliferation of larger foliage and leaves, which redirects energy originally purposed for flower growth. Without adequate flowering, plants will not reproduce.&lt;/p&gt;

&lt;p&gt;Curiosity is no different.&lt;/p&gt;

&lt;p&gt;Curiosity is necessary for learning. Consider the scientific method: Question; Hypothesize; Test; Analyze. The very first step demands the curiosity to ask &lt;em&gt;why&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;But curiosity can prevent learning, too. It's oft easier to ask a question than answer one, so before long, questions pile up. Like profuse foliage prevents flowering, asking too many questions betrays finding answers.&lt;/p&gt;




&lt;p&gt;I owe everything I know to curiosity. It's the fuel for my engine, it's what turns my wheels everyday to face what I don't understand. It's very hard for me to approach the unknown, to acknowledge my ignorance. Curiosity pulls me through that.&lt;/p&gt;

&lt;p&gt;Curiosity has also broken me down; put me on the side of the road with conniptions about how &lt;em&gt;I don't know anything&lt;/em&gt; and &lt;em&gt;I should have pursued botany instead&lt;/em&gt;. Plants are easy, plants are simple. They don't have problems like I do.&lt;/p&gt;




&lt;p&gt;The internet brings a wealth of information to our fingertips. That, and the realization of just how little we know. Programming exists on the internet; It is where it operates, where it is taught, and where it is learned.&lt;/p&gt;

&lt;p&gt;And while programming can be so tremendously difficult to learn, it can be so extraordinarily easy to become overwhelmed. Sought answers to seemingly simple questions are quickly obfuscated by torrents of suggested methods, ideologies, best practices, patterns and anti-patterns...&lt;/p&gt;

&lt;p&gt;These people aren't wrong, either. They have reputation, renowned jobs, years of experience. There &lt;em&gt;are&lt;/em&gt; lessons in what they recommend. And so, our backlog of &lt;em&gt;things we don't know but should&lt;/em&gt; grows. And grows.. And grows...&lt;/p&gt;




&lt;p&gt;I find solace in the strange idea that none of us really know anything, or can ever know anything. That is, I mean, &lt;em&gt;anything&lt;/em&gt; in the scope of &lt;em&gt;everything&lt;/em&gt;. Even by the time our peepholes close, we will still be left with questions. &lt;/p&gt;

&lt;p&gt;All we can do is be satisfied with wondering, satisfied by asking questions and only finding some answers, and satisfied looking at the clouds, wondering which looks most like a dog, or butterfly, or dinosaur, but not about whether it will rain.&lt;/p&gt;

&lt;p&gt;...&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;: Ask questions, but not too many. Be satisfied wondering, because you will never know everything. Learn to get smarter, but be happy being dumb.&lt;/p&gt;

</description>
      <category>career</category>
      <category>beginners</category>
      <category>productivity</category>
      <category>inclusion</category>
    </item>
    <item>
      <title>Spendr: Online Banking Prototype</title>
      <dc:creator>Dylan Landry</dc:creator>
      <pubDate>Mon, 22 Jul 2019 17:51:35 +0000</pubDate>
      <link>https://dev.to/dyllandry/spendr-online-banking-prototype-4blg</link>
      <guid>https://dev.to/dyllandry/spendr-online-banking-prototype-4blg</guid>
      <description>&lt;p&gt;This post provides more detail about my Spendr online banking prototype.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Try out the &lt;a href="https://youthful-lamport-5bf629.netlify.com/" rel="noopener noreferrer"&gt;Spendr live demo&lt;/a&gt;.&lt;br&gt;
The source code can be viewed on the &lt;a href="https://github.com/dyllandry/spendr" rel="noopener noreferrer"&gt;Spendr GitHub repository&lt;/a&gt;.&lt;br&gt;
To see the rest of my portfolio, visit &lt;a href="https://dylanlandry.com" rel="noopener noreferrer"&gt;my portfolio website&lt;/a&gt;.&lt;/em&gt;&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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fkizd0o90t16izbw8fati.jpg" 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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fkizd0o90t16izbw8fati.jpg" alt="A screen shot of Dylan's Spendr online banking prototype. It looks very nice."&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This project served one purpose: &lt;strong&gt;Demonstrate for employers my competency with React and Redux&lt;/strong&gt;. I think it achieves that purpose, but I will follow it up with another React project.&lt;/p&gt;

&lt;p&gt;While the subject of the site is a new approach to online banking (one that attempts to reduce spending frequency by requiring explicit approval of each transaction before the transaction is processed) my focus is more on the execution and technique of creating the website.&lt;/p&gt;

&lt;p&gt;I'd like to call attention to a few noteworthy parts:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The visual appearance is clean.&lt;/li&gt;
&lt;li&gt;Information is clearly presented.&lt;/li&gt;
&lt;li&gt;All colours (fonts and backgrounds) meet &lt;a href="https://www.w3.org/TR/UNDERSTANDING-WCAG20/visual-audio-contrast-contrast.html" rel="noopener noreferrer"&gt;W3C (World Wide Web Consortium) WCAG 2.0 (Web Content Accessibility Guidelines) minimum contrast ratio of 4.5:1&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;HTML (hyper text markup language) is structured with necessary W3C ARIA (Accessible Rich Internet Applications) attributes to deliver a screen reader capable experience. See &lt;a href="https://www.youtube.com/watch?v=iAlNIHXWhRM&amp;amp;feature=youtu.be" rel="noopener noreferrer"&gt;video demonstrating screen reader usage&lt;/a&gt;.&lt;/li&gt;
&lt;/ol&gt;


&lt;h2&gt;
  
  
  Visual Appearance
&lt;/h2&gt;

&lt;p&gt;The visual appearance looks nice, in my opinion, and the design is clean and simple, which I think delivers the information well.&lt;/p&gt;


&lt;h2&gt;
  
  
  Accessible Colours
&lt;/h2&gt;

&lt;p&gt;Google now presents contrast information in their widget for picking text colours. Making an accessible web application has become easier.&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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F45drlzj2npa8gfvkt9rf.png" 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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F45drlzj2npa8gfvkt9rf.png" alt="A screenshot of Google's colour picking widget which displays information on whether the picked colour meets contrast ratio guidelines."&gt;&lt;/a&gt;&lt;/p&gt;


&lt;h2&gt;
  
  
  Screen Readers
&lt;/h2&gt;

&lt;p&gt;When I first tried using screen reader software on Spendr I found out it was impossible to understand. After a day of learning to use Google Chrome's Vox screen reader extension, and making plenty of changes to my HTML structure and employed ARIA attributes, I finally created what I think is a screen reader capable site. Below is a video demonstration of myself using a screen reader to navigate the Spendr site.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/iAlNIHXWhRM"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  React and Redux
&lt;/h2&gt;

&lt;p&gt;A lingering question I have regarding Redux is: What state do you &lt;em&gt;leave out&lt;/em&gt; of Redux? &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Current list of transactions: Put in redux.&lt;/li&gt;
&lt;li&gt;Currently detailed transaction: Put in redux.&lt;/li&gt;
&lt;li&gt;Currently focused transaction: Hmm...&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For example, redux doesn't store the entire state of the interface, such as the current DOM (Document Object Model) nodes. It would be ridiculous to store all that information in redux.  Yet, my understanding of redux is that it stores all of your application state. Isn't the state of the interface, even what transaction is currently focused by the browser, part of the state of the application?&lt;/p&gt;

&lt;p&gt;The issue I ran into was in trying to manipulate the DOM, such as focusing specific elements, but not having sufficient information in my Redux state to do what I wanted. I didn't want to put that information into Redux, and so stored it other places. &lt;/p&gt;

&lt;p&gt;But the question remains, what application state (like interface state) do you &lt;em&gt;leave out&lt;/em&gt; of Redux?&lt;/p&gt;

&lt;p&gt;I think I will become better able to answer that question as I gain more experience with React and Redux.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Try out the &lt;a href="https://youthful-lamport-5bf629.netlify.com/" rel="noopener noreferrer"&gt;Spendr live demo&lt;/a&gt;.&lt;br&gt;
The source code can be viewed on the &lt;a href="https://github.com/dyllandry/spendr" rel="noopener noreferrer"&gt;Spendr GitHub repository&lt;/a&gt;.&lt;br&gt;
To see the rest of my portfolio, visit &lt;a href="https://dylanlandry.com" rel="noopener noreferrer"&gt;my portfolio website&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>react</category>
      <category>redux</category>
      <category>a11y</category>
      <category>screenreader</category>
    </item>
  </channel>
</rss>
