<?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: Andrew Weisbeck</title>
    <description>The latest articles on DEV Community by Andrew Weisbeck (@geauxweisbeck4).</description>
    <link>https://dev.to/geauxweisbeck4</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%2F781299%2F6a722692-9e6d-472a-9513-92ac8ce6eb38.jpeg</url>
      <title>DEV Community: Andrew Weisbeck</title>
      <link>https://dev.to/geauxweisbeck4</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/geauxweisbeck4"/>
    <language>en</language>
    <item>
      <title>Cool Algorithms Pt. 1 - Russian Peasant Multiplication</title>
      <dc:creator>Andrew Weisbeck</dc:creator>
      <pubDate>Sun, 14 May 2023 10:22:56 +0000</pubDate>
      <link>https://dev.to/geauxweisbeck4/cool-algorithms-pt-1-russian-peasant-multiplication-66a</link>
      <guid>https://dev.to/geauxweisbeck4/cool-algorithms-pt-1-russian-peasant-multiplication-66a</guid>
      <description>&lt;p&gt;Welcome to the first part of a little series I'm doing called "Cool Algorithms"! Each post will feature a cool algorithm which I will explain how it works and then show you how you can implement the algorithm in Python, C, or JavaScript. Hopefully this will be fun as well as educational for everyone. &lt;/p&gt;

&lt;p&gt;Let's get started with the first algorithm that I have chosen, &lt;strong&gt;Russian Peasant Multiplication&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Russian Peasant Multiplication
&lt;/h2&gt;

&lt;p&gt;The funny thing about this algorithm is that it really has nothing to do with Russian Peasants - scholars have tried to prove links to Russian Peasants, but they have done so ineffectively. The earliest roots of this algorithm can be traced to ancient Egypt, where an old Egyptian scroll called the Rhind papyrus contained a version of this algorithm. &lt;/p&gt;

&lt;p&gt;The purpose of RPM is to help people figure out how to multiply numbers without memorizing the whole multiplication table. We'll start with the method that can be used to do this problem by hand.&lt;/p&gt;

&lt;h2&gt;
  
  
  22 x 83 By Hand
&lt;/h2&gt;

&lt;p&gt;So the first thing we will do is create two columns - one for halving 83 and the other for doubling 22. To do different numbers, just remember the larger number goes in the halving column and the smaller goes in the doubling column. Follow these steps to find your solution:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Divide all the numbers in the halving table by 2 until you reach 1&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Halving  | Doubling&lt;br&gt;
|---83---|----22---|&lt;br&gt;
|---41---|---------|&lt;br&gt;
|---20---|---------|&lt;br&gt;
|---10---|---------|&lt;br&gt;
|---5----|---------|&lt;br&gt;
|---2----|---------|&lt;br&gt;
|---1----|---------|&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Double all the numbers in the doubling column&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Halving  | Doubling&lt;br&gt;
|---83---|----22---|&lt;br&gt;
|---41---|----44---|&lt;br&gt;
|---20---|----88---|&lt;br&gt;
|---10---|---176---|&lt;br&gt;
|---5----|---352---|&lt;br&gt;
|---2----|---704---|&lt;br&gt;
|---1----|--1408---|&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Remove every row in the halving column that has an even answer&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Halving  | Doubling&lt;br&gt;
|---83---|----22---|&lt;br&gt;
|---41---|----44---|&lt;br&gt;
|---5----|---352---|&lt;br&gt;
|---1----|--1408---|&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Now take the sum of all the answers in the doubling column for your answer!&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;22 + 44 + 352 + 1408 = 1826&lt;/p&gt;

&lt;p&gt;You can check the answer with you calculator real quick:&lt;/p&gt;

&lt;p&gt;22 * 83 = 1826 &lt;/p&gt;

&lt;p&gt;It works! Now why?&lt;/p&gt;
&lt;h2&gt;
  
  
  Rewriting in Powers of 2
&lt;/h2&gt;

&lt;p&gt;Rewriting our doubling column in terms of 22 will help us see why this works and will explain our algorithm and also help us write it out in Python. So lets rewrite the doubling column as I said and excluding the even columns:&lt;/p&gt;

&lt;p&gt;Halving  | Doubling&lt;br&gt;
|---83---|----22---|&lt;br&gt;
|---41---|-22 x 2--|&lt;br&gt;
|---5----|-22 x 16-|&lt;br&gt;
|---1----|-22 x 64-|&lt;/p&gt;

&lt;p&gt;Which we can rewrite in terms of to the power of 2:&lt;/p&gt;

&lt;p&gt;22 x 2^0 + 22 x 2^2 + 22 x 2^4 + 22 x 2^6&lt;/p&gt;

&lt;p&gt;Factor out the 22 and we get&lt;/p&gt;

&lt;p&gt;22 x (2^0 + 2^2 + 2^4 + 2^6) = 22 x (1 + 4 + 16 + 64) = 22x83&lt;/p&gt;

&lt;p&gt;22 x 83 is our original equation! So we find that the RPM is dependent on the fact that (2^0 + 2^2 + 2^4 + 2^6) = 83&lt;/p&gt;

&lt;p&gt;We can do the same with the halving column and find similar results, but I'll let you do that at home!&lt;/p&gt;

&lt;p&gt;The sum of the powers of two we just demonstrated is also called a binary expansion, which is important to us in computer science. 83 or (2^0 + 2^2 + 2^4 + 2^6) can be written in binary code as 1100101 where we put a 1 in each of the odd halving columns and a 0 in each of the even columns.&lt;/p&gt;

&lt;p&gt;Well that was fun and a whole lot of unnecessary was put into writing that out by hand. Shall we implement this in Python now? I think we should.&lt;/p&gt;
&lt;h2&gt;
  
  
  Russian Peasant Multiplication in Python
&lt;/h2&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Set our variables 
n1 = 83
n2 = 22

halving = [n1]

import math

while(min(halving) &amp;gt; 1):
    halving.append(math.floor(min(halving)/2))

doubling = [n2]

while(len(doubling) &amp;lt; len(halving)):
    doubling.append(max(doubling) * 2)

import pandas as pd

half_double = pd.DataFrame(zip(halving, doubling))
half_double = half_double.loc[half_double[0]%2 == 1,:]
answer = sum(half_double.loc[:,1])

print(half_double)
print(answer)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;And we get our answer printed out after running our program:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    0     1
0  83    22
1  41    44
4   5   352
6   1  1408

1826
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;There is your answer in Python!&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;This example may seem like it is kind of useless when you have a calculator right in front of you, but it really isn't. For one, it's a great way to figure out a multiplication problem without having to know the multiplication table. It also shows the deep connection between binary expansion and a way to multiply variables to get to an answer.&lt;/p&gt;

&lt;p&gt;I hope you found this example interesting at the very least and I look forward to sharing the next cool algorithm - later!&lt;/p&gt;

</description>
      <category>algorithms</category>
      <category>python</category>
      <category>programming</category>
      <category>learning</category>
    </item>
    <item>
      <title>Thank You For the Hardest Year of My Life</title>
      <dc:creator>Andrew Weisbeck</dc:creator>
      <pubDate>Thu, 24 Nov 2022 03:18:00 +0000</pubDate>
      <link>https://dev.to/geauxweisbeck4/thank-you-for-the-hardest-year-of-my-life-1m1g</link>
      <guid>https://dev.to/geauxweisbeck4/thank-you-for-the-hardest-year-of-my-life-1m1g</guid>
      <description>&lt;h2&gt;
  
  
  A Terrible, Yet Beautiful Year
&lt;/h2&gt;

&lt;p&gt;I am grateful for this sh***y unbearable year - I'm thankful that when I was fired on November 22, 2021 from a lucrative cyber security position and realized that nobody else had my own best interests in mind other than myself and my partner, I decided to leap head first into full stack development. &lt;/p&gt;

&lt;p&gt;While I had years of WordPress, Wix, SquareSpace, and whatever other low-code/no-code solution I could find, I felt unfulfilled and knew something lay waiting for me if I finally would stop procrastinating learning web dev and just go all in.&lt;/p&gt;

&lt;p&gt;It's a year and one day later - I'm not sure if what I just experienced was the worst year or the best year of my life - every life issue imaginable as come up and extreme stress around money nearly ruined my relationship with my fiance - because I still am not sure what this road looks like for me and every hard lesson from the last year has molded me into a compassionate, yet tough-minded, creative problem-solving individual who loves programming so much more than just the salary I initially set out for.&lt;/p&gt;

&lt;p&gt;This year was brutal because of a lot of things that were supposed to happen didn't happen; I got ripped off by multiple clients and also gave away way too much of my free time - I'm just now learning to ask for what I'm worth. But after coming to tough terms with the last 366 days and what has transpired, I know that I really am just touching the ice berg on what I can do with my career and finally have a lot of people asking for quotes and to apply for jobs. &lt;/p&gt;

&lt;p&gt;Do I take the gig I've worked so hard for or do I stay true to my entrepreneurial spirit and play out a tough road ahead in a tough economy? The fact I can sit and have this choice vs. sitting where I was a year ago - fired, hopeless, and trying to figure out how to set up an Express server while learning Python, Angular, and JavaScript at the same time - is a sign of growth and something big around the corner for me.&lt;/p&gt;

&lt;p&gt;I don't have another week of that suffering in me however, so I choose to be thankful while sitting here reflecting on this crazy, shitty year. I learned so god damn much and went through some of the lowest lows and worst, hurt feelings I have in my life - I've forgiven and forgotten, been cheated and turned around to give my trust out again, and let anger be soothed by love during the hardest year of these 31 I've experienced. I don't know if the road to where I'm going had to be like this, but I know now that my worst fears can come true and I'll be ok.&lt;/p&gt;

&lt;p&gt;As I step off into another unknown as another year begins with some freelance work, but no full time role and a large gap on my work history, I do so with the confidence in myself to build kick ass web applications with cutting edge technology, thanks to the awesome dev community. Reading your posts, taking your courses, and sharing your story has inspired me to put in grueling days to learn as much as I can and build as much as I can. &lt;/p&gt;

&lt;p&gt;Thank you to everyone who has inspired me, liked my posts, seen my GitHub, encouraged me along, shared tiny truths, and just taught me how to dev - I have found a community that feels like family even though I may not know a single one of you personally. Thank you for unintentionally joining my journey into become a full stack developer and I hope we can continue to make the world better for more Thanksgivings to come.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Story To be continued....&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Air BnB React/JSX Style Guide: Day 3 Mixins</title>
      <dc:creator>Andrew Weisbeck</dc:creator>
      <pubDate>Fri, 04 Nov 2022 09:45:35 +0000</pubDate>
      <link>https://dev.to/geauxweisbeck4/air-bnb-reactjsx-style-guide-day-3-mixins-4h3o</link>
      <guid>https://dev.to/geauxweisbeck4/air-bnb-reactjsx-style-guide-day-3-mixins-4h3o</guid>
      <description>&lt;h2&gt;
  
  
  Mixins
&lt;/h2&gt;

&lt;p&gt;DO NOT USE MIXINS.&lt;/p&gt;

&lt;p&gt;That's it! Seriously that's all there is...&lt;/p&gt;

&lt;p&gt;Okay, okay - I won't waste your time here. So why don't we use mixins according to the AirBnB React/JSX style guide?&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Why? Mixins introduce implicit dependencies, cause name clashes, and cause snowballing complexity. Most use cases for mixins can be accomplished in better ways via components, higher-order components, or utility modules." -AirBnB&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The style guide references &lt;a href="https://reactjs.org/blog/2016/07/13/mixins-considered-harmful.html" rel="noopener noreferrer"&gt;a great blog post from the Reactjs.org&lt;/a&gt; that you can check out if you want. Let me save you the trouble of having to go all the way over there and read it yourself.&lt;/p&gt;

&lt;p&gt;So back when React was just starting to do its thing, Facebook engineers would be accustomed to writing certain patterns to solve certain compositions and they wouldn't want to give up their tried and true methods. Since React (influenced by functional programming) was entering an object oriented programming field, React had to make it easier for engineers to adopt. &lt;/p&gt;

&lt;p&gt;Certain escape hatches were created to help with these composition issues, and mixins were one way this was implemented. They would allow one to reuse code for composition problems that they weren't sure how to solve. &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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhfz9eiyk15dwe24np7rk.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhfz9eiyk15dwe24np7rk.jpg" alt="three years later spongebob"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There are more component libraries like React, developers are more confident in React, and building declarative user interfaces with mixins now sucks! Here are reasons why:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Mixins cause name clashes - If &lt;code&gt;FluxListenerMixin&lt;/code&gt; and &lt;code&gt;WindowSizeMixin&lt;/code&gt; both use &lt;code&gt;handlechange&lt;/code&gt;, your screwed! You can't do this and you also can't use &lt;code&gt;handlechange&lt;/code&gt; in your components. Bummer dude.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Mixins cause snowballing complexity - The blog post says:&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;"A component needs some state to track mouse hover. To keep this logic reusable, you might extract handleMouseEnter(), handleMouseLeave() and isHovering() into a HoverMixin. Next, somebody needs to implement a tooltip. They don’t want to duplicate the logic in HoverMixin so they create a TooltipMixin that uses HoverMixin. TooltipMixin reads isHovering() provided by HoverMixin in its componentDidUpdate() and either shows or hides the tooltip.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;A few months later, somebody wants to make the tooltip direction configurable. In an effort to avoid code duplication, they add support for a new optional method called getTooltipOptions() to TooltipMixin. By this time, components that show popovers also use HoverMixin. However popovers need a different hover delay. To solve this, somebody adds support for an optional getHoverOptions() method and implements it in TooltipMixin. Those mixins are now tightly coupled."&lt;/p&gt;

&lt;h1&gt;
  
  
  FAILCITY
&lt;/h1&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnf0jpy2nycs3ip1n84yk.gif" 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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnf0jpy2nycs3ip1n84yk.gif" alt="snowballing fail"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Never, ever, ever ever use mixins again - Just kidding though...
&lt;/h2&gt;

&lt;p&gt;Now React doesn't mean that mixins are deprecated, they just forgot to pizza when they should have french fried, so they ended up having a &lt;em&gt;bad time&lt;/em&gt;. &lt;/p&gt;

&lt;p&gt;If you want to use &lt;code&gt;React.createClass()&lt;/code&gt;, be my guest - but you're probably going to have a &lt;em&gt;bad time&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmu6goxuv4j9bcv9wre4r.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmu6goxuv4j9bcv9wre4r.png" alt="south park ski dude"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Do this instead
&lt;/h2&gt;

&lt;p&gt;Maybe you want to prevent unnecessary re-renders with &lt;code&gt;PureRenderMixin&lt;/code&gt; because the props and state are shallowly equal to the previous props and state:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;var PureRenderMixin = require('react-addons-pure-render-mixin');

var Button = React.createClass({
  mixins: [PureRenderMixin],

  // ...

});
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;What's that? You guessed it - using &lt;code&gt;PreRenderMixin&lt;/code&gt; is going to cause you to have a &lt;em&gt;bad time&lt;/em&gt;. So what can you do?&lt;/p&gt;

&lt;p&gt;Just use the &lt;code&gt;shallowCompare&lt;/code&gt; function instead! Easy nuff, right? Let's see how that works:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;var shallowCompare = require('react-addons-shallow-compare');

var Button = React.createClass({
  shouldComponentUpdate: function(nextProps, nextState) {
    return shallowCompare(this, nextProps, nextState);
  },

  // ...

});
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;No? Not really? You don't like all that typing? Wow, developers are so hard to please. &lt;/p&gt;

&lt;p&gt;Just don't call me when you have to ship on Friday afternoon and you can't get your code to work because the new junior dev just sent over a pull request for his NavBar component that uses &lt;code&gt;PureRenderMixin&lt;/code&gt;, because he just wants to write code like you do and he left for the day so now your stuck at the office until Saturday trying to figure out why your having a &lt;em&gt;bad time&lt;/em&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  So today we learned
&lt;/h2&gt;

&lt;p&gt;Don't use mixins!&lt;/p&gt;

&lt;p&gt;It is time to find our peaceful zen meditation and reflect on this very short rule for the day.....&lt;/p&gt;

&lt;p&gt;"Listen Sariputra, &lt;br&gt;
Matter is not different from emptiness,&lt;br&gt;
And emptiness is not different from matter."&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5mvhyarpfr1lr1qmzdo5.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5mvhyarpfr1lr1qmzdo5.jpg" alt="meditating in the clouds"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>airbnb</category>
      <category>styleguide</category>
      <category>react</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Air BnB React/JSX Styleguide: Day 2 Class vs. React.createClass vs. Stateless</title>
      <dc:creator>Andrew Weisbeck</dc:creator>
      <pubDate>Mon, 31 Oct 2022 06:51:50 +0000</pubDate>
      <link>https://dev.to/geauxweisbeck4/air-bnb-reactjsx-styleguide-day-2-class-vs-reactcreateclass-vs-stateless-ede</link>
      <guid>https://dev.to/geauxweisbeck4/air-bnb-reactjsx-styleguide-day-2-class-vs-reactcreateclass-vs-stateless-ede</guid>
      <description>&lt;p&gt;Here is day 2 for the Air Bnb Read/JSX style guide review. Yesterday we look at the basics, today we are looking at how Air BnB engineers suggest we look at Class vs. React.createClss vs. Stateless:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If you have internal state and/or refs, prefer class extends React.Component over React.createClass. eslint: react/prefer-es6-class react/prefer-stateless-function&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So we want to write our components with internal state as:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;class Listing extends React.Component {
// ...
  render() {
    return &amp;lt;div&amp;gt;{this.state.hello}&amp;lt;/div&amp;gt;
  }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;And if there is no state or refs, prefer normal functions over classes:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;function Listing({ hello }) {
  return &amp;lt;div&amp;gt;{hello}&amp;lt;/div&amp;gt;;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You don't want to write it as either of the following:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;class Listing extends React.Component {
  render() {
    return &amp;lt;div&amp;gt;{this.props.hello}&amp;lt;/div&amp;gt;;
  }
}

// or

const Listing = ({ hello }) =&amp;gt; (
  &amp;lt;div&amp;gt;{hello}&amp;lt;/div&amp;gt;
);
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That is actually very useful to know - I try not to write arrow functions myself very often anyways because I never seem to get them right. Thanks Air BnB!&lt;/p&gt;

&lt;p&gt;I'll meditate on that one today...&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--NECxgeWc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eq0w6undo18q2nqebghu.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--NECxgeWc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eq0w6undo18q2nqebghu.jpeg" alt="Meditating" width="750" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;"Whooooooaaaaaaayyyyyyyyuuuuummmmmmmaaaaaayyyyyyyyyeeeeeeeuuuuuuummmmmmmmm..... Whoooooooooooaaaaaaaaayyyyyyyyyuuuuummmmmmmaaaaaaayyyyyyyeeeeeeuuuuuummmmmmmm.... ooooooohhhhhhhhhmmmmmmmmm..."&lt;/p&gt;

&lt;p&gt;Thanks for reading!&lt;/p&gt;

</description>
      <category>react</category>
      <category>airbnb</category>
      <category>styleguide</category>
    </item>
    <item>
      <title>Reviewing the Air BnB React/JSX Style Guide: 1. Basic Rules</title>
      <dc:creator>Andrew Weisbeck</dc:creator>
      <pubDate>Sat, 29 Oct 2022 18:04:26 +0000</pubDate>
      <link>https://dev.to/geauxweisbeck4/reviewing-the-air-bnb-reactjsx-style-guide-1-basic-rules-100j</link>
      <guid>https://dev.to/geauxweisbeck4/reviewing-the-air-bnb-reactjsx-style-guide-1-basic-rules-100j</guid>
      <description>&lt;p&gt;I love Air Bnb - not only is their app amazing (I love looking at the unique hosting spots &lt;a href="https://www.airbnb.com/rooms/47114758?adults=1&amp;amp;category_tag=Tag%3A8225&amp;amp;children=0&amp;amp;infants=0&amp;amp;search_mode=flex_destinations_search&amp;amp;check_in=2022-11-13&amp;amp;check_out=2022-11-18&amp;amp;previous_page_section_name=1000&amp;amp;federated_search_id=6670aa84-8757-41b9-b4aa-39a398b3c51b"&gt;like this home suspended from a cliff overhang in Kentucky&lt;/a&gt;), but I also love their style guide and keep it handy every time I write code. I would be fair to say that Air BnB would be my dream job. &lt;/p&gt;

&lt;p&gt;I thought it would be fun to review each of their style guide rules for React/JSX each day. It's a good review to do and also allows one to meditate upon it's meaning. I find this as a useful way to really nail down good practices. &lt;/p&gt;

&lt;h2&gt;
  
  
  Day 1: Basic Rules
&lt;/h2&gt;

&lt;p&gt;Here are the basic rules laid out by Air BnB&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Include only one React component per file. Except for Stateless, or Pure, Components - they allow multiple per file.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Set eslint: &lt;code&gt;react/no-multi-comp&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Always use JSX syntax.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Don't use &lt;code&gt;React.createElement&lt;/code&gt; unless you're initializing an app from a file that is not JSX.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;react/forbid-prop-types&lt;/code&gt; will allow &lt;code&gt;arrays&lt;/code&gt; and &lt;code&gt;objects&lt;/code&gt; only if it is explicitly noted what they contain, using &lt;code&gt;arrayOf&lt;/code&gt;, &lt;code&gt;objectOf&lt;/code&gt;, or &lt;code&gt;shape&lt;/code&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  That's all for the basic rules! See you tomorrow
&lt;/h2&gt;

&lt;p&gt;So that's not too bad right? I will meditate upon those and think about what that means for my code. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--v9QxOm33--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p8ru8i7joj6eedpcblqh.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--v9QxOm33--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p8ru8i7joj6eedpcblqh.jpeg" alt="Image description" width="800" height="667"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;"Oooohhhhhhhhhmmmmmmmmmmmmm..."&lt;br&gt;
"Oooohhhhhhhhhmmmmmmmmmmmmm..."&lt;br&gt;
"Oooohhhhhhhhhmmmmmmmmmmmmm..."&lt;br&gt;
............... &lt;/p&gt;

</description>
      <category>airbnb</category>
      <category>styleguide</category>
      <category>jsx</category>
      <category>react</category>
    </item>
    <item>
      <title>Improve Data With Twitter Lists</title>
      <dc:creator>Andrew Weisbeck</dc:creator>
      <pubDate>Tue, 23 Aug 2022 23:19:31 +0000</pubDate>
      <link>https://dev.to/geauxweisbeck4/improve-data-with-twitter-lists-4j8m</link>
      <guid>https://dev.to/geauxweisbeck4/improve-data-with-twitter-lists-4j8m</guid>
      <description>&lt;h2&gt;
  
  
  I make Twitter Lists of Official Groups
&lt;/h2&gt;

&lt;p&gt;And they rock to have in lists for organizing and cleaning your data. I'm about to make a bot to automate this, but feel free to swing by home page or Twitter each day to see what kind of list is trending and what I got for ya at &lt;a href="https://geauxweisbeck4.dev"&gt;https://geauxweisbeck4.dev&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Hope y'all enjoy!&lt;/p&gt;

</description>
      <category>twitter</category>
      <category>api</category>
      <category>awesome</category>
      <category>geaux</category>
    </item>
    <item>
      <title>7 Days of Dev Blogging Project</title>
      <dc:creator>Andrew Weisbeck</dc:creator>
      <pubDate>Fri, 19 Aug 2022 23:05:00 +0000</pubDate>
      <link>https://dev.to/geauxweisbeck4/7-days-of-dev-blogging-project-296h</link>
      <guid>https://dev.to/geauxweisbeck4/7-days-of-dev-blogging-project-296h</guid>
      <description>&lt;h2&gt;
  
  
  DAY ONE - Creating Blog Posts, GitHub Repository, and Logging
&lt;/h2&gt;

&lt;p&gt;I am trying to grow my current following on social media pages like Twitter, GitHub, and Pinterest. I have decided to attempt an experiment to see which blogging platform (Dev.to, Medium, Hashnode, personally created, etc.) and websites drive in the most traffic for each blog.&lt;/p&gt;

&lt;p&gt;This is kind of an experiment on the go, so follow my GitHub repository to stay up-to-date with my blog posts, stats, findings, and more. &lt;/p&gt;

&lt;p&gt;I have decided to use &lt;a href="https://dev.to/geauxweisbeck4"&gt;Dev.to&lt;/a&gt; as my Dev Journal/Public Logging of my experiment so I can hold myself accountable, make sure I do everything I need to, and to explain my methodologies and theories, etc.&lt;/p&gt;

&lt;h2&gt;
  
  
  Day One - Blog Posts
&lt;/h2&gt;

&lt;p&gt;-[x] Medium - &lt;a href="https://geauxweisbeck4.medium.com/marko-js-super-powerful-js-framework-made-by-ebay-part-i-99e288cc5956"&gt;Marko.js Series Part 1 and share on Social Media&lt;/a&gt;&lt;/p&gt;


&lt;blockquote&gt;
&lt;p&gt;I just published my first of seven days of blogging on Medium (and other platforms). Read: Marko.js — Super-powerful JS framework made by eBay, Part I &lt;a href="https://t.co/vGXMNu31MI"&gt;&lt;/a&gt;&lt;a href="https://t.co/vGXMNu31MI"&gt;https://t.co/vGXMNu31MI&lt;/a&gt; &lt;a href="https://twitter.com/hashtag/markojs?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#markojs&lt;/a&gt; &lt;a href="https://twitter.com/hashtag/eBay?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#eBay&lt;/a&gt; &lt;a href="https://twitter.com/hashtag/webdev?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#webdev&lt;/a&gt; &lt;a href="https://twitter.com/hashtag/7daybloggingchallenge?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#7daybloggingchallenge&lt;/a&gt;&lt;/p&gt;— Andy Weisbeck (&lt;a class="mentioned-user" href="https://dev.to/geauxweisbeck4"&gt;@geauxweisbeck4&lt;/a&gt;) &lt;a href="https://twitter.com/GeauxWeisbeck4/status/1560767709301952515?ref_src=twsrc%5Etfw"&gt;August 19, 2022&lt;/a&gt;
&lt;/blockquote&gt; 

&lt;p&gt;-[] Hashnode - College Football Blog and share on Social Media&lt;br&gt;
-[] Dev.to - Daily Journal Logging and share on Social Media&lt;br&gt;
-[] Tar Heel Dev Studio - Blog post and share&lt;br&gt;
-[] Patreon/YouTube - Video Blog: Eleventy Tutorial&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>writing</category>
      <category>entrepreneurship</category>
      <category>devjournal</category>
    </item>
    <item>
      <title>Hello World</title>
      <dc:creator>Andrew Weisbeck</dc:creator>
      <pubDate>Thu, 31 Mar 2022 17:18:32 +0000</pubDate>
      <link>https://dev.to/geauxweisbeck4/hello-world-2iai</link>
      <guid>https://dev.to/geauxweisbeck4/hello-world-2iai</guid>
      <description>&lt;p&gt;Hey y'all!&lt;/p&gt;

&lt;p&gt;My name is Andrew Weisbeck and I am a freelance Full Stack Developer in Raleigh, NC. I have been on the site for a few months now, but haven't done a good job at being active.&lt;/p&gt;

&lt;p&gt;Well I intend to change that and want to introduce myself to the community. I started coding about 4 or 5 years ago without seriously getting into any career path. I got into cybersecurity in 2021 and decided to go all in on a Full Stack career path after I left that job in November.&lt;/p&gt;

&lt;p&gt;You can check out my personal website and portfolio &lt;a href="https://geauxweisbeck4.dev"&gt;https://geauxweisbeck4.dev&lt;/a&gt; to find out more. I'm excited to learn more about y'all!&lt;/p&gt;

&lt;p&gt;Andrew&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
