<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-4901005112374661630</atom:id><lastBuildDate>Fri, 10 Apr 2026 12:00:06 +0000</lastBuildDate><category>javascript</category><category>learn to code</category><category>personal development</category><category>css</category><category>freeCodeCamp</category><category>html</category><category>web development</category><category>finite state machine</category><category>jquery</category><category>react</category><category>Jon Duckett</category><category>Kyle Simpson</category><category>MVC</category><category>SPA</category><category>You don&#39;t know JavaScript</category><category>angular</category><category>arduino</category><category>atom</category><category>backbone</category><category>bootcamp</category><category>feedback</category><category>node.js</category><category>redux</category><title>Coding Lawyer</title><description>the purpose of this blog is to map my ongoing transition from a lawyer to a web developer and share acquired experience as well as anything related to coding</description><link>https://codinglawyer.blogspot.com/</link><managingEditor>noreply@blogger.com (Anonymous)</managingEditor><generator>Blogger</generator><openSearch:totalResults>15</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4901005112374661630.post-4019461442295286227</guid><pubDate>Wed, 09 Aug 2017 06:55:00 +0000</pubDate><atom:updated>2018-10-16T21:48:39.888+02:00</atom:updated><title>Starting a New Blog!</title><description>Dear readers,&lt;br /&gt;
&lt;br /&gt;
Since I&#39;ve been working as a developer for some time now, I decided to get back to blogging and write about programming topics that interests me and that might be useful to you as well.&lt;br /&gt;
However, I won&#39;t be updating this blog anymore. Instead, I&amp;nbsp;&lt;b&gt;created a brand new blog&amp;nbsp;&lt;/b&gt;on my own domain.&lt;br /&gt;
&lt;br /&gt;
Hope to see you all there.&lt;br /&gt;
&lt;h3&gt;
&lt;a href=&quot;https://codinglawyer.io/&quot;&gt;https://codinglawyer.io/&lt;/a&gt;&lt;/h3&gt;
</description><link>https://codinglawyer.blogspot.com/2017/08/starting-new-blog.html</link><author>noreply@blogger.com (Anonymous)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4901005112374661630.post-6523246228192518542</guid><pubDate>Wed, 14 Sep 2016 20:03:00 +0000</pubDate><atom:updated>2016-09-17T19:02:39.692+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">backbone</category><category domain="http://www.blogger.com/atom/ns#">javascript</category><category domain="http://www.blogger.com/atom/ns#">learn to code</category><category domain="http://www.blogger.com/atom/ns#">MVC</category><category domain="http://www.blogger.com/atom/ns#">SPA</category><category domain="http://www.blogger.com/atom/ns#">web development</category><title>First Days as A Developer: Nice to Meet You Backbone!</title><description>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgl2NZbObYKbmYbhXMk0qmVHI_7lQ-UybKVCHmXRpS_YttS9hKdoUYFFpMkIAUPDAwiNGkkwCzvPFpMduwrd8DaiC4WEQdS55NmivoOz_17fkq_XQp049yYE5Rwon5z6DcE-kFF6xfpg8w/s1600/work.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;310&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgl2NZbObYKbmYbhXMk0qmVHI_7lQ-UybKVCHmXRpS_YttS9hKdoUYFFpMkIAUPDAwiNGkkwCzvPFpMduwrd8DaiC4WEQdS55NmivoOz_17fkq_XQp049yYE5Rwon5z6DcE-kFF6xfpg8w/s400/work.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
It has been already more than three weeks since I started working as a
front-end developer. So, I decided to share some of my initial experience. The topic of this article might be helpful to many of you who are starting to work with real-life applications which are often quite big.&amp;nbsp;To quickly understand such applications and their code is a skill every developer must master. In particular,&lt;b&gt;&amp;nbsp;this post will focus on how to understand large projects written in the Backbone JavaScript library.&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
This was precisely what I had to do when I started my new job. One of my first tasks was to work with a complex JavaScript application. This meant that it already had a particular
code structure that must be respected by anyone who would want to modify it.&lt;br /&gt;
&lt;br /&gt;
What made it even more challenging was the fact that this application was written in the JavaScript&amp;nbsp;&lt;a href=&quot;http://backbonejs.org/&quot;&gt;Backbone&lt;/a&gt;&amp;nbsp;library with which I had no previous experience.&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;What to do in order to
understand the application’s architecture in a way that will enable me to properly modify it?&amp;nbsp;&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #b45f06; font-size: large;&quot;&gt;&lt;b&gt;&lt;u&gt;1. What is MVC?&lt;/u&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
When I googled what the Backbone is, I learned that it is &lt;b&gt;a library for
structuring JavaScript code which is based on the so-called &lt;a href=&quot;https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller&quot;&gt;Model, Controller, View (MVC) pattern&lt;/a&gt;&lt;/b&gt;. MVC is an architecture model for implementing user
interfaces. It separates the application into three kinds of components – model
(M), view (V) and controller (C). The idea is to promote a
separation of concerns which should result in better structured and more
maintainable applications.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRVVO_C8qSL1_Y2a_IqpamLRKF5XH79IDWrjHsAz0v6mx9dS-0LAMULE056p6sLwHku8l2imjNmjOKmfqvqmqyLVAsDPx2w44Lb1eUDhYKTaVd5RUeR8y_sqbaLI1KpokYYOCt1vm6BK4/s1600/MVC-web-application-development.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRVVO_C8qSL1_Y2a_IqpamLRKF5XH79IDWrjHsAz0v6mx9dS-0LAMULE056p6sLwHku8l2imjNmjOKmfqvqmqyLVAsDPx2w44Lb1eUDhYKTaVd5RUeR8y_sqbaLI1KpokYYOCt1vm6BK4/s1600/MVC-web-application-development.png&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;MVC Pattern&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
There are &lt;b&gt;many other JavaScript libraries and
frameworks that implement MVC pattern,&lt;/b&gt; for example: Ember, Angular, and React (to
some degree). None of these frameworks are better or worse than the others, each is just
designed for the different purpose.&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #b45f06; font-size: large;&quot;&gt;&lt;b&gt;&lt;u&gt;2. What is Backbone?&lt;/u&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
When I learned that the application, I will be working on, is built with Backbone library, I thought that it can&#39;t be that difficult to understand it. Since I already knew how to build applications in
&lt;a href=&quot;https://codinglawyer.blogspot.com/2016/07/how-am-i-learning-react-with-redux.html&quot;&gt;React&lt;/a&gt;, I was pretty sure that this knowledge will help me to grasp the Backbone logic as well.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;i&gt;‘They’re all based on
MVC pattern anyway, right?!’&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;i&gt;‘...or not?!’&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
The truth is that &lt;a href=&quot;https://facebook.github.io/react/blog/2013/06/05/why-react.html&quot;&gt;React
isn’t a classic MVC&lt;/a&gt;&lt;span class=&quot;MsoHyperlink&quot;&gt; &lt;/span&gt;since it is
considered only as &lt;a href=&quot;https://facebook.github.io/react/docs/why-react.html&quot;&gt;V in MVC&lt;/a&gt;&lt;span class=&quot;MsoHyperlink&quot;&gt;.&lt;/span&gt; Moreover, &lt;a href=&quot;http://backbonejs.org/#FAQ-mvc&quot;&gt;Backbone&lt;/a&gt;
is neither an example of classic MVC. Although it provides the concept of
models and views, its views are more like controllers (more on that later).&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;So, there is no clear
separation between models, views and controllers in Backbone.&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
I learned the difference between Backbone and React myself.
If you compare the code structure of applications built in these two libraries,
you will find out that it is pretty different. Nevertheless, they still have a
lot in common. They are both great for building &lt;a href=&quot;https://en.wikipedia.org/wiki/Single-page_application&quot;&gt;single page applications (SPA)&lt;/a&gt; which aim is to provide a rich user experience similar to desktop
applications. In these applications, all the necessary code (HTML, CSS and JavaScript)
is retrieved with a single page load.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Backbone has five components: events, models, collections,
views and routers. However,&lt;b&gt;&amp;nbsp;to understand the Backbone logic, it is
important to get to know the relationship between models and views&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;-webkit-text-stroke-width: 0px; color: black; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: medium; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;&quot;&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;-webkit-text-stroke-width: 0px; font-family: &amp;quot;Times New Roman&amp;quot;; letter-spacing: normal; margin-bottom: 0.5em; margin-left: auto; margin-right: auto; orphans: 2; padding: 6px; text-align: center; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiW2MSOle_gxN9AUrETYQBkFVRaQnxm6UaikawqybDt5rjRnws0dxvj9vRxrHGCnnmHkooiQE4sJQV1TZm1YZT-D2pyKEpioVN6ny_9DUcYswfS_a9oBh3qw8J5jlyftjw3xOHn2kHJtZ0/s1600/backbone_MVV.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiW2MSOle_gxN9AUrETYQBkFVRaQnxm6UaikawqybDt5rjRnws0dxvj9vRxrHGCnnmHkooiQE4sJQV1TZm1YZT-D2pyKEpioVN6ny_9DUcYswfS_a9oBh3qw8J5jlyftjw3xOHn2kHJtZ0/s1600/backbone_MVV.jpg&quot; style=&quot;cursor: move;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;font-size: 12.8px; padding-top: 4px; text-align: center;&quot;&gt;&lt;div style=&quot;margin: 0px;&quot;&gt;
Backbone modified MVC pattern&amp;nbsp;&lt;span style=&quot;font-size: 12.8px;&quot;&gt;(source: http://backbonejs.org/)&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;Models are containers for application data&lt;/b&gt; that can also
send AJAX requests to the server to synchronize the data on the client with the
server. On the other hand, &lt;b&gt;views are responsible for rendering the models and
listening to any events&lt;/b&gt; raised by the DOM or events raised by the model.
Collection is just an ordered set of models.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
When you open a typical Backbone application in your text editor or IDE, the folders will at least be named as models, views and collections. If your Backbone application contains dozens of files (as in my case), you might feel a little intimidated. Believe me, that is only the initial and wrong feeling.&lt;br /&gt;
&lt;br /&gt;
The &lt;b&gt;file names&lt;/b&gt; will often help you to understand the application&#39;s structure. You can tell
from the names what a particular model or view actually do. You will also need to dive deep into the code to be able to understand it and work with it. Try to &lt;b&gt;change a thing or two&lt;/b&gt; and refresh the browser to see how the changes affected the functionality. With this approach, you will eventually understand the basic logic of the application quite fast.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;When you understand the basic logic of the application, you will be ready to actually produce a code on your own which will fit into the application&#39;s structure.&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyQQOZvmp_hKRzgUtBaxDZwoWW67gtDiP27CBuUN2f6ecQUANx3ODIPNibGY2Lc1lpLWEzXzwKMMScAi6Qo5aWu_mRqUeMiLqtKgcOs-X8mUXspf7qPoQZvCYZpyMrzlAp85A3sSdxBZg/s1600/understand.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;278&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyQQOZvmp_hKRzgUtBaxDZwoWW67gtDiP27CBuUN2f6ecQUANx3ODIPNibGY2Lc1lpLWEzXzwKMMScAi6Qo5aWu_mRqUeMiLqtKgcOs-X8mUXspf7qPoQZvCYZpyMrzlAp85A3sSdxBZg/s400/understand.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>https://codinglawyer.blogspot.com/2016/09/first-days-as-developer-nice-to-meet.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgl2NZbObYKbmYbhXMk0qmVHI_7lQ-UybKVCHmXRpS_YttS9hKdoUYFFpMkIAUPDAwiNGkkwCzvPFpMduwrd8DaiC4WEQdS55NmivoOz_17fkq_XQp049yYE5Rwon5z6DcE-kFF6xfpg8w/s72-c/work.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4901005112374661630.post-8511932099839047969</guid><pubDate>Tue, 23 Aug 2016 13:30:00 +0000</pubDate><atom:updated>2016-08-23T15:31:31.200+02:00</atom:updated><title>ResWebDev #2</title><description>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiG9DHm5ijJ6cggjFirf21ltScCs8Pr6sIq_TWVtcNn3H58m1fs28xegAEzhjoZ7pD-dp_m5X4C8NxiP5VCE6-xuHcJoMY-9s52d7Ez-4GZYI6NNN657ycAWfdH_4fI12BlD84o5Oii-Qs/s1600/booksjpg.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiG9DHm5ijJ6cggjFirf21ltScCs8Pr6sIq_TWVtcNn3H58m1fs28xegAEzhjoZ7pD-dp_m5X4C8NxiP5VCE6-xuHcJoMY-9s52d7Ez-4GZYI6NNN657ycAWfdH_4fI12BlD84o5Oii-Qs/s640/booksjpg.jpg&quot; width=&quot;425&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;hr style=&quot;color: #b45f06; text-align: justify;&quot; /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;hr style=&quot;-webkit-text-stroke-width: 0px; color: #b45f06; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: medium; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;&quot; /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Article&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;https://medium.freecodecamp.com/what-is-an-api-in-english-please-b880a3214a82#.uaww29yri&quot;&gt;&lt;b&gt;What is an API? In English, please&lt;/b&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Do you really know what an API (Application Programming Interface) stands for? Are you sure? If not, definitely check this article! You will learn that it is possible to describe the concept of API from different perspectives. The word Application its name can refer to various things. It can be a piece of software with a distinct function or the whole server, the whole app, or just a small part of an app. In this article you will find very understandable explanation of API. It is one of the best that I have ever read.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Article&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;&lt;a href=&quot;https://medium.com/@dan_abramov/smart-and-dumb-components-7ca2f9a7c7d0#.lt78anapu&quot; target=&quot;_blank&quot;&gt;Presentational and Container Components&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
(Dan Abramov)&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: start;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
This article is from the creator of Redux library Dan Abramov. He describes division of components that underlies the logic behind using React with Redux. This approach lets you make such apps much more understandable and readable. The author divides components into two categories: container components and presentational components. Each of them has specific attributes.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Presentational components focus simply on how things work. This means that they are primarily represented by a markup. They don’t manipulate data in any way; they only reads them from props. Container components are on the other hand concerned with how things work. They update the state and fetch data. Moreover, they are connected to Redux and enable you to use Redux state in the components.&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;Article&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;b style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;https://medium.freecodecamp.com/conquer-legacy-code-f9e23a6ab758#.v3a5jje73&quot;&gt;Conquer Legacy Code&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;
(Bill Sourour)&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Sooner or later you will be probably working with the so-called legacy code - the code that was written a long time ago often by those who are not around anymore. That means you must understand it on your own to be able to work with it (improve or change it). The author claims that you should respect the legacy code. That means to understand why it is written the way it is in the first place. You should avoid immediate judgments like &lt;i&gt;&#39;This code sucks. I can re-write it better way&#39;&lt;/i&gt;. You should try to fix only the real problems that need to be fixed. The more code you change, the bigger is the probability that the application will eventually break.&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;hr style=&quot;color: #b45f06; text-align: justify;&quot; /&gt;
&lt;hr style=&quot;color: #b45f06; text-align: justify;&quot; /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;Article&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;b style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: #444444;&quot;&gt;&lt;a href=&quot;https://medium.freecodecamp.com/how-to-hack-your-friends-eef055389344#.b1cde9yam&quot;&gt;Don’t want to get hacked? Close your laptop&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
(Chet Corcos)&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
The point of this article is to stress the importance of your computer&#39;s security. It shows how it is easy to hack someone&#39;s computer. You will need only 50 lines of code to do that. And you will learn what different things you can do when you hack a computer.&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
What? Are you saying that you don&#39;t want to let anyone to hack your laptop? So then just make sure that your computer is locked when you are not around. You can use this guide to give a lesson to your friend who is forgetting to lock his computer :) However, the main point of this article is to keep in mind how vulnerable your computer is if you are not careful.&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;hr style=&quot;color: #b45f06; text-align: justify;&quot; /&gt;
&lt;hr style=&quot;color: #b45f06; text-align: justify;&quot; /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</description><link>https://codinglawyer.blogspot.com/2016/08/reswebdev-2.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiG9DHm5ijJ6cggjFirf21ltScCs8Pr6sIq_TWVtcNn3H58m1fs28xegAEzhjoZ7pD-dp_m5X4C8NxiP5VCE6-xuHcJoMY-9s52d7Ez-4GZYI6NNN657ycAWfdH_4fI12BlD84o5Oii-Qs/s72-c/booksjpg.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4901005112374661630.post-2911259068933485323</guid><pubDate>Sun, 14 Aug 2016 16:05:00 +0000</pubDate><atom:updated>2016-08-14T18:18:22.347+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">javascript</category><category domain="http://www.blogger.com/atom/ns#">learn to code</category><category domain="http://www.blogger.com/atom/ns#">personal development</category><category domain="http://www.blogger.com/atom/ns#">web development</category><title>Programming Job Acquired: Mission Accomplished</title><description>&lt;div style=&quot;text-align: justify;&quot;&gt;
So it is finally here:&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;en&quot;&gt;
&lt;div dir=&quot;ltr&quot; lang=&quot;en&quot; style=&quot;text-align: justify;&quot;&gt;
This week, I am officially unemployed. Next week, I will be working as a front-end developer, finally! &lt;a href=&quot;https://t.co/FEyjmB55ae&quot;&gt;pic.twitter.com/FEyjmB55ae&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
— Coding Lawyer (@coding_lawyer) &lt;a href=&quot;https://twitter.com/coding_lawyer/status/763384554333888512&quot;&gt;August 10, 2016&lt;/a&gt;&lt;/div&gt;
&lt;/blockquote&gt;
&lt;script async=&quot;&quot; charset=&quot;utf-8&quot; src=&quot;//platform.twitter.com/widgets.js&quot;&gt;&lt;/script&gt; 
&lt;br /&gt;
&lt;div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Monday was the last day in my legal job. &lt;b&gt;Starting next Monday, I will be working as a front-end developer at medium-sized company&lt;/b&gt;. So, I think that this is the perfect time for me to reflect on my coding journey whose first scenario, which lasts from the beginning until this week, is coming to an end. However, at the same time, the second one is ready to begin.&lt;br /&gt;
&lt;br /&gt;
In this post, I will share with you my &#39;coding journey in a nutshell&#39; and interesting insights that I gained along the way.&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
My coding journey began on &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;color: #b45f06; font-size: large;&quot;&gt;26th November 2015&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
On this particular day, I bought my first programming online course on &lt;a href=&quot;https://www.udemy.com/courses/&quot; target=&quot;_blank&quot;&gt;Udemy&lt;/a&gt;. Back then, my programming knowledge was equal to zero (&lt;a href=&quot;https://developer.mozilla.org/en/docs/Web/JavaScript/Equality_comparisons_and_sameness&quot; target=&quot;_blank&quot;&gt;triple equal to be precise&lt;/a&gt;). I was at the beginning of my journey. I had no idea that this decision will have such a huge impact on my future career.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;a href=&quot;https://www.youtube.com/watch?v=dpPQE56Zezk&quot; target=&quot;_blank&quot;&gt;Long story short,&lt;/a&gt; &lt;b&gt;I got my first programming job on June this year.&lt;/b&gt; So, it took me seven months to learn how to code from scratch. However, I needed to wait two more months until the statutory notice period&lt;b&gt; &lt;/b&gt;expires.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2ZwmaG9k0Pa1CXDQBlZfnDVEcYCvzvZ6bdvJ0uXc_dPRHNlX4gtAWRHWdWeRueEftn0lXlUd4oNZQC-j4xLbpp4aCZDqVjDVFVAmFxMlts7bmW6Mrwv5nnW-t-WOS4cz4GgcZIdI9zhM/s1600/Obama-not-bad.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;305&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2ZwmaG9k0Pa1CXDQBlZfnDVEcYCvzvZ6bdvJ0uXc_dPRHNlX4gtAWRHWdWeRueEftn0lXlUd4oNZQC-j4xLbpp4aCZDqVjDVFVAmFxMlts7bmW6Mrwv5nnW-t-WOS4cz4GgcZIdI9zhM/s400/Obama-not-bad.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #b45f06; font-size: large;&quot;&gt;&lt;b&gt;&lt;u&gt;Coding Journey Part 1: Overview &lt;/u&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;a href=&quot;https://codinglawyer.blogspot.cz/2016/04/my-first-post-why-i-started-to-code.html&quot; target=&quot;_blank&quot;&gt;At the beginning of my coding journey&lt;/a&gt;, I had no idea that I will be a professional programmer one day. I did not even know I was a type of a guy that can do that kind of job in the first place. &lt;b&gt;My major concern was that I had no formal computer science education&amp;nbsp;whatsoever&lt;/b&gt;. I was not even a fan of exact sciences at high school.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
From my own experience, a lack of formal computer science education is the main reason why so many people are discouraged from trying to pursue a programming career. There is &lt;b&gt;deeply rooted belief&lt;/b&gt;, that you need some kind of computer science education to be able to get a job as a programmer.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Of course, I thought this might be a hurdle for me too. However, the more I coded, learnt about coding and about other people’s experience, my state of mind began to change. I started to play with an idea that programming can be something more than just a hobby for me. &lt;b&gt;I really enjoyed the creative process whose outcome is a fully functioning application made from scratch, which even do something useful&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;I was literally consumed by it&lt;/b&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIIJSfGmssPBfG0GB5C7MQ0IbMvHc3LW7YP_Xu0KKwZ6FueJmH_WK_X_cpZLQJ_rXe5EpMF4NsDS_phfKa0FSZN-7og3TnK31LZKGTtRriao9eqOT_4eKAtUMJC7_hJGrh4QwyDzIJqXA/s1600/creativity.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIIJSfGmssPBfG0GB5C7MQ0IbMvHc3LW7YP_Xu0KKwZ6FueJmH_WK_X_cpZLQJ_rXe5EpMF4NsDS_phfKa0FSZN-7og3TnK31LZKGTtRriao9eqOT_4eKAtUMJC7_hJGrh4QwyDzIJqXA/s1600/creativity.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
At that time, I have been reading so many posts from people who switched to the programming career in a year. Well, that is a lot of time, you might say. But if you think about it, it is actually a pretty short period of time. &lt;b&gt;If you are able to learn new skill from scratch and find a job in a year, well that is just awesome.&lt;/b&gt;&amp;nbsp;Keep it mind, that people study many years to get a promising job.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
I myself was able to get a job in seven months. The length of the period before you are able to get a job can be affected by many factors. You must choose your resources wisely. I already wrote two posts about &lt;a href=&quot;https://codinglawyer.blogspot.cz/2016/04/best-resources-to-learn-javascript.html&quot; target=&quot;_blank&quot;&gt;JavaScript materials&lt;/a&gt; in general and &lt;a href=&quot;https://codinglawyer.blogspot.cz/2016/07/how-am-i-learning-react-with-redux.html&quot; target=&quot;_blank&quot;&gt;React materials&lt;/a&gt; in particular. &lt;b&gt;You must think about the way you learn all the time, since it is the main thing that makes a huge difference to your progress.&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: #b45f06;&quot;&gt;&lt;u&gt;Turning-point No. 1: Feedback&lt;/u&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
There are so many other factors that affect your overall progress (motivation, regularity, spare time etc.). Some of them are more important than others. It is really useful &lt;a href=&quot;https://codinglawyer.blogspot.cz/2016/08/do-you-want-to-make-effective-progress.html&quot;&gt;to code regularly every day, as I wrote earlier&lt;/a&gt;. In my opinion, the most important is the one that is not fully under your control. It is feedback (&lt;a href=&quot;https://codinglawyer.blogspot.cz/2016/05/feedback-most-important-thing-man.html&quot; target=&quot;_blank&quot;&gt;check out my older post on this topic&lt;/a&gt;).&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;If you are not able to get any feedback, your progress will be much slower&lt;/b&gt;&lt;/div&gt;
&lt;br /&gt;
When you are learning to code, it is not that difficult to get at least some. If you do not know any programmer personally, you still have whole internet overflowing with communities of people willing give you feedback for free. You can always find somebody who will tell you what is wrong or right with your code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFxdPdZjqQxPODWiIQbwtLHNhjqHyesz7vpigE0oJbdGEyYByw-_Qg3XpsaqNsM5Bh5aT_wGvGiPT3n889VuKjefQmpIy7J_7y6zRa1NTnmGV7TBycebfBs3RdNK-XKiptYT8IDUZx9i8/s1600/creativity.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;225&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFxdPdZjqQxPODWiIQbwtLHNhjqHyesz7vpigE0oJbdGEyYByw-_Qg3XpsaqNsM5Bh5aT_wGvGiPT3n889VuKjefQmpIy7J_7y6zRa1NTnmGV7TBycebfBs3RdNK-XKiptYT8IDUZx9i8/s400/creativity.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Of course, you can learn A LOT from your self-studies without anyone’s help. Nevertheless, you will eventually &lt;b&gt;get to the point at which it will become more and more challenging for you to move forward&amp;nbsp;&lt;/b&gt;&lt;b&gt;effectively&amp;nbsp;&lt;/b&gt;&lt;b&gt;without any feedback.&lt;/b&gt; Your progress will be much smoother if you have a mentor who will tell you what is wrong with your code or how you should structure it better. There are so many issues that must be considered when writing proper code:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;ul&gt;
&lt;li&gt;Is this really the best way how to write a particular code feature?&lt;/li&gt;
&lt;li&gt;Should you use promise or callback in a given case?&lt;/li&gt;
&lt;li&gt;Is jQuery a perfect library for this project?&lt;/li&gt;
&lt;li&gt;What about React and Angular libraries, will not they be a better choice for this app?&lt;/li&gt;
&lt;li&gt;What coding design pattern should you use?&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Without any mentorship whatsoever, you will be forced to not only answer these questions yourself, but t&lt;b&gt;o figure out that you need to ask them in the first place&lt;/b&gt;. Of course you can do this on your own, but you will need to read a lot of other people’s code and articles to be able to do that. Moreover, it will certainly take a significant amount of your precious time.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;I myself was able to get some feedback on my coding projects I built from my friends as well as from an online community. &lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;span style=&quot;color: #b45f06;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;
&lt;b&gt;&lt;span style=&quot;color: #b45f06;&quot;&gt;&lt;u&gt;Turning-point No. 2: Real-life Projects&lt;/u&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
However, getting some feedback will not be the only crucial point you will experience on your coding journey. At least, this was my case. As I was gaining experience, I started to feel that &lt;b&gt;by working only on my own small applications, I was not able to tackle more complex coding issues and concepts.&lt;/b&gt; For example, you can take a look at&amp;nbsp;&lt;a href=&quot;https://codinglawyer.blogspot.cz/2016/05/javascript-calculator-guide-part-1-lets_44.html&quot; target=&quot;_blank&quot;&gt;my JavaScript calculator (guide&lt;/a&gt;). I am proud of it. However, it is a relatively small application. I started to feel that I need to work on some larger real-life projects to be able to make significant progress. &lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;In my opinion, this is the right time to start looking for a job&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0JsyAFlhbLhUX4N7TOT8XkrZeIHMh0jR4t1Pp1GsIQjfN8Cxi0J5XHb0UWBY4GYXWmObnDB4fLkiyqkx5V_-tju10KVRgQPv84nPsG_K4ypxrnu_g76urpBVwWU5AGrtMzcAwSkLywFg/s1600/search.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;266&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0JsyAFlhbLhUX4N7TOT8XkrZeIHMh0jR4t1Pp1GsIQjfN8Cxi0J5XHb0UWBY4GYXWmObnDB4fLkiyqkx5V_-tju10KVRgQPv84nPsG_K4ypxrnu_g76urpBVwWU5AGrtMzcAwSkLywFg/s400/search.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
However, when I started applying for the front-end developer positions, I was not in this phase yet. I wanted to wait at least a month to learn more about various JavaScript libraries and frameworks. I still needed a little more time.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
The reason why I actually applied for a job at that time was pure coincidence. On May this year, I visited startup job fair in Prague (Czech Republic). After talking to the people from different companies, I was invited to several interviews. I told myself, that I had nothing to lose. If I will not get any job, I will at least have a better knowledge about employers&#39; job requirements.&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;However, it worked out well and I got a job as a front-end developer &lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #b45f06; font-size: large;&quot;&gt;&lt;b&gt;&lt;u&gt;Coding Journey Part 2: New Beginning &lt;/u&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Today, two months later, a couple of days before the first day in my new job, I can say that I find myself in the exact position I mentioned above, which is the right one to start looking for a job.&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;I am now even more confident that my decision was the right one and I am really looking forward to my new job&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXrrw4QIevFUVTBee8JekwAGMxskbLycA34JX3F4uSDeWbasA5rMckNBOz-0KEL03WjIY65Nd9y48fuTJD7dvYQfuzz7NSObmFrRSp0N0RT82nLbrI8sGIVv0ogXHzQIDATLFCNCwahmU/s1600/happy.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;265&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXrrw4QIevFUVTBee8JekwAGMxskbLycA34JX3F4uSDeWbasA5rMckNBOz-0KEL03WjIY65Nd9y48fuTJD7dvYQfuzz7NSObmFrRSp0N0RT82nLbrI8sGIVv0ogXHzQIDATLFCNCwahmU/s400/happy.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>https://codinglawyer.blogspot.com/2016/08/programming-job-acquired-mission.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2ZwmaG9k0Pa1CXDQBlZfnDVEcYCvzvZ6bdvJ0uXc_dPRHNlX4gtAWRHWdWeRueEftn0lXlUd4oNZQC-j4xLbpp4aCZDqVjDVFVAmFxMlts7bmW6Mrwv5nnW-t-WOS4cz4GgcZIdI9zhM/s72-c/Obama-not-bad.jpg" height="72" width="72"/><thr:total>5</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4901005112374661630.post-83888152115246370</guid><pubDate>Wed, 03 Aug 2016 14:22:00 +0000</pubDate><atom:updated>2016-08-12T23:39:57.450+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">learn to code</category><category domain="http://www.blogger.com/atom/ns#">personal development</category><title>Do you want to make effective progress? Code Every Day!</title><description>&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYkJElFGfp9YOFoGbR4cw0cXVtZQ7nL-KRJYopkMAny0y70paG7fJMtcwbqU07AhdN20C9OTji_hb2fSMCRDrk90qbF-sYdQFSCf6PHCgp617jHM9tcfFXJB32-sI92RD1FJux1wRBaZY/s1600/Code.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;275&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYkJElFGfp9YOFoGbR4cw0cXVtZQ7nL-KRJYopkMAny0y70paG7fJMtcwbqU07AhdN20C9OTji_hb2fSMCRDrk90qbF-sYdQFSCf6PHCgp617jHM9tcfFXJB32-sI92RD1FJux1wRBaZY/s400/Code.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Recently, I read an &lt;a href=&quot;http://ejohn.org/blog/write-code-every-day/&quot; target=&quot;_blank&quot;&gt;article&lt;/a&gt; from the author of famous &lt;a href=&quot;https://jquery.com/&quot; target=&quot;_blank&quot;&gt;jQuery&lt;/a&gt; (JavaScript library) John Resig. He talked about a topic which I am also familiar with (and I guess you as well). He discussed the fact that he does not have &lt;b&gt;enough time for doing his coding side projects effectively&lt;/b&gt;. This led to insufficient progress when building them.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Making any side project can be very challenging,&lt;/b&gt; especially when you code eight hours a day at work. However, Resig&#39;s article can be also applicable to anyone who has a full-time job, not only to professional programmers. I am such an individual, since I am not coding for living yet. I know very well how it can be sometimes difficult to code after you come home from work. This means that your are basically able to code only in the evenings (or at night) or on the weekends. Since I often relax on the weekends, I code mostly after work. &lt;br /&gt;
&lt;br /&gt;
This lack of spare time sometimes leads to non-consistent coding periods. In other words, I am not able to code for a couple of days in a row. Even two day gap might cause that I forget what I was working on. The worst case scenario is when my coding gap is longer than five days.&lt;br /&gt;
&lt;br /&gt;
So, I am experiencing the same problem as John Resig in his article:&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;I am not able to code every single day. &lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTTKbxXPDUW8JCy70hwR67lrlMHTHHqUJzZiLGhfR05u62OF2FHDaVLprhgeljZr17lwnK_cMaT8uHjrh66jPpbjn5vRAowUAmcKJj4hx2wSACLtBr20QJJskGXl2AjRgVtfP-s6hHglE/s1600/ineffectivity.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;265&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTTKbxXPDUW8JCy70hwR67lrlMHTHHqUJzZiLGhfR05u62OF2FHDaVLprhgeljZr17lwnK_cMaT8uHjrh66jPpbjn5vRAowUAmcKJj4hx2wSACLtBr20QJJskGXl2AjRgVtfP-s6hHglE/s400/ineffectivity.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
As a solution, Resig set himself &lt;b&gt;a couple of rules to become more effective&lt;/b&gt; and to make more significant progress when working on his side projects. In a nutshell, these rules were:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;code every day&lt;/li&gt;
&lt;li&gt;write only useful code&lt;/li&gt;
&lt;li&gt;all code must be written before midnight&lt;/li&gt;
&lt;li&gt;it must be open source up on Github&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
I guess these rules are OK for an advanced programmer, but not for me or for anyone who is not coding for living. Only skilled programmer can produce &#39;useful&#39; code everyday.&lt;br /&gt;
&lt;br /&gt;
So, &lt;b&gt;I decided to set myself less strict rules&lt;/b&gt;. In reality, I created only one rule, which (I hope) will help me to become more effective programmer and to make better progress. This simple rule is:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;CODE EVERY DAY – MAKE IT YOUR HABIT &lt;/b&gt;&lt;/div&gt;
&lt;br /&gt;
However, this does not mean that you need to make your &lt;a href=&quot;https://github.com/blog/2173-more-contributions-on-your-profile&quot; target=&quot;_blank&quot;&gt;Github chart all green.&lt;/a&gt; I also have many of my projects on my hard drive only. As John Resig correctly pointed out: &lt;i&gt;‘this is about a change that you’re making in your life for yourself not a change that you’re making to satisfy someone else’s perception of your work. The same goes for any form of dieting or exercise: &lt;b&gt;if you don’t care about improving yourself then you’ll never actually succeed.’ &lt;/b&gt;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
I also agree with his  other claim that &lt;i&gt;‘the feeling of making progress is just as important as making actual progress.’&lt;/i&gt;&amp;nbsp;It is truly important for you to always feel that you are moving forward.&lt;br /&gt;
&lt;br /&gt;
Before I go to sleep, I sometimes feel that &lt;b&gt;I have not achieved coding progress that I wanted to&lt;/b&gt; that particular day. As a result, I code even after midnight and do not sleep enough. John Resig claims that with a habit of coding every day, this anxiety will melt away.&lt;br /&gt;
&lt;br /&gt;
I guess that might be true. If I will be making progress each day, I will not feel anxiety to make bigger progress on a day, before which I was not able to code for a couple of days. &lt;b&gt;Instead of feeling that I need to make progress every now and then, I will make it regularly each day.&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Maybe you are now wondering, &lt;i&gt;&#39;for how long do I need to code each day?&#39;&lt;/i&gt; This of course depends on your personal preferences. I guess half an hour can be sufficient for experienced coders. However, I myself &lt;b&gt;need to code at least one hour a day&lt;/b&gt;. Otherwise, I do not feel that my progress is sufficient. This is in part due to the fact that I often encounter an issue which takes more than a hour to solve. I guess this sometimes happens to anyone :)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
Starting today, &lt;b&gt;I commit myself to code every single day&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDzWzB93j9AFa4Rt8WKxxkccPv3NlRyEOgFQBN-zH1VWzxhpHbeB1ZwZKSYRl_UqAGyLNiR0yWn-vaXvXW1wQHdJ7qZQWFT_X8sy0d8_3QUoa4_RC3l8ATjeZoipjywNR8n38S-LZeSmA/s1600/positivity.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;266&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDzWzB93j9AFa4Rt8WKxxkccPv3NlRyEOgFQBN-zH1VWzxhpHbeB1ZwZKSYRl_UqAGyLNiR0yWn-vaXvXW1wQHdJ7qZQWFT_X8sy0d8_3QUoa4_RC3l8ATjeZoipjywNR8n38S-LZeSmA/s400/positivity.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
I will share my experience in some of the future posts.&lt;br /&gt;
&lt;br /&gt;
What about you? Do you code every day? Or do you want to start and join me in my commitment?&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;If  you have any experience with this approach, please let me know in the discussion. &lt;/b&gt;&lt;/div&gt;
</description><link>https://codinglawyer.blogspot.com/2016/08/do-you-want-to-make-effective-progress.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYkJElFGfp9YOFoGbR4cw0cXVtZQ7nL-KRJYopkMAny0y70paG7fJMtcwbqU07AhdN20C9OTji_hb2fSMCRDrk90qbF-sYdQFSCf6PHCgp617jHM9tcfFXJB32-sI92RD1FJux1wRBaZY/s72-c/Code.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4901005112374661630.post-4582040641408655410</guid><pubDate>Fri, 29 Jul 2016 06:05:00 +0000</pubDate><atom:updated>2016-08-12T23:36:28.273+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">javascript</category><category domain="http://www.blogger.com/atom/ns#">react</category><category domain="http://www.blogger.com/atom/ns#">redux</category><title>How am I learning React with Redux?</title><description>&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;w:WordDocument&gt;
  &lt;w:View&gt;Normal&lt;/w:View&gt;
  &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;
  &lt;w:TrackMoves/&gt;
  &lt;w:TrackFormatting/&gt;
  &lt;w:HyphenationZone&gt;21&lt;/w:HyphenationZone&gt;
  &lt;w:PunctuationKerning/&gt;
  &lt;w:ValidateAgainstSchemas/&gt;
  &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;
  &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;
  &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;
  &lt;w:DoNotPromoteQF/&gt;
  &lt;w:LidThemeOther&gt;CS&lt;/w:LidThemeOther&gt;
  &lt;w:LidThemeAsian&gt;X-NONE&lt;/w:LidThemeAsian&gt;
  &lt;w:LidThemeComplexScript&gt;X-NONE&lt;/w:LidThemeComplexScript&gt;
  &lt;w:Compatibility&gt;
   &lt;w:BreakWrappedTables/&gt;
   &lt;w:SnapToGridInCell/&gt;
   &lt;w:WrapTextWithPunct/&gt;
   &lt;w:UseAsianBreakRules/&gt;
   &lt;w:DontGrowAutofit/&gt;
   &lt;w:SplitPgBreakAndParaMark/&gt;
   &lt;w:EnableOpenTypeKerning/&gt;
   &lt;w:DontFlipMirrorIndents/&gt;
   &lt;w:OverrideTableStyleHps/&gt;
  &lt;/w:Compatibility&gt;
  &lt;m:mathPr&gt;
   &lt;m:mathFont m:val=&quot;Cambria Math&quot;/&gt;
   &lt;m:brkBin m:val=&quot;before&quot;/&gt;
   &lt;m:brkBinSub m:val=&quot;--&quot;/&gt;
   &lt;m:smallFrac m:val=&quot;off&quot;/&gt;
   &lt;m:dispDef/&gt;
   &lt;m:lMargin m:val=&quot;0&quot;/&gt;
   &lt;m:rMargin m:val=&quot;0&quot;/&gt;
   &lt;m:defJc m:val=&quot;centerGroup&quot;/&gt;
   &lt;m:wrapIndent m:val=&quot;1440&quot;/&gt;
   &lt;m:intLim m:val=&quot;subSup&quot;/&gt;
   &lt;m:naryLim m:val=&quot;undOvr&quot;/&gt;
  &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;w:LatentStyles DefLockedState=&quot;false&quot; DefUnhideWhenUsed=&quot;true&quot;
  DefSemiHidden=&quot;true&quot; DefQFormat=&quot;false&quot; DefPriority=&quot;99&quot;
  LatentStyleCount=&quot;267&quot;&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;0&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Normal&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;heading 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 7&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 8&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 9&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 7&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 8&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 9&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;35&quot; QFormat=&quot;true&quot; Name=&quot;caption&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;10&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Title&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;1&quot; Name=&quot;Default Paragraph Font&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;11&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Subtitle&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;22&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Strong&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;20&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Emphasis&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;59&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Table Grid&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Placeholder Text&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;1&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;No Spacing&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Revision&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;34&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;List Paragraph&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;29&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Quote&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;30&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Intense Quote&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;19&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Subtle Emphasis&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;21&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Intense Emphasis&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;31&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Subtle Reference&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;32&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Intense Reference&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;33&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Book Title&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;37&quot; Name=&quot;Bibliography&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; QFormat=&quot;true&quot; Name=&quot;TOC Heading&quot;/&gt;
 &lt;/w:LatentStyles&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt;
&lt;style&gt;
 /* Style Definitions */
 table.MsoNormalTable
 {mso-style-name:&quot;Normální tabulka&quot;;
 mso-tstyle-rowband-size:0;
 mso-tstyle-colband-size:0;
 mso-style-noshow:yes;
 mso-style-priority:99;
 mso-style-parent:&quot;&quot;;
 mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
 mso-para-margin:0cm;
 mso-para-margin-bottom:.0001pt;
 mso-pagination:widow-orphan;
 font-size:10.0pt;
 font-family:&quot;Times New Roman&quot;,&quot;serif&quot;;}
&lt;/style&gt;
&lt;![endif]--&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6UVQQBfLcnlKR0XJP6s3ocXo64hdxR4NzIEO5MQtSSjNjTkbfAg5MG6sPdwesWF9zTM9sznSMF_fYYrpnOMkHj-fpLkXjHILW_UiUVGy3RwdK-q_H3Gyq6xyUj7RlMjEsyR5hTx3XjHo/s1600/react-1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;300&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6UVQQBfLcnlKR0XJP6s3ocXo64hdxR4NzIEO5MQtSSjNjTkbfAg5MG6sPdwesWF9zTM9sznSMF_fYYrpnOMkHj-fpLkXjHILW_UiUVGy3RwdK-q_H3Gyq6xyUj7RlMjEsyR5hTx3XjHo/s400/react-1.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Roughly two months ago, I came to the conclusion that my knowledge of vanilla JavaScript is advanced enough. So, I decided to dive into one of the many JavaScript frameworks which would enable me to &lt;b&gt;build more sophisticated apps. &lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
I chose React library since I admired its smart architecture…just kidding :). I had no idea which framework or library to pick. I jumped into React because I heard that it is a simple component library suitable for my intended purposes. Moreover, many employers require it in their job descriptions. &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
In this post, I am going to &lt;b&gt;describe how I started learning React with Redux&lt;/b&gt; and which resources helped me along the way. &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
If you find yourself in a similar position I was in two months ago, I hope you’ll &lt;b&gt;find my learning path inspiring.&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #b45f06;&quot;&gt;&lt;u&gt;&lt;b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;The Start&lt;/span&gt;&lt;/b&gt;&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjaUlsZ02fj8fJAlZRfGCgqkEb2tlpuHz70gE4hjdZXuYb8wZ2Q4sPNPHCDGYm2svag7FxvMve5H2dA-tY4uMx3ZHRPuCXJmwotppQ8uaK9PHm_YEd6_67QfHVQXcILiUJ8d0ZB9RMtAxA/s1600/start.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;278&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjaUlsZ02fj8fJAlZRfGCgqkEb2tlpuHz70gE4hjdZXuYb8wZ2Q4sPNPHCDGYm2svag7FxvMve5H2dA-tY4uMx3ZHRPuCXJmwotppQ8uaK9PHm_YEd6_67QfHVQXcILiUJ8d0ZB9RMtAxA/s400/start.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
In the beginning, I needed to decide which React with Redux resources to pick. There are &lt;a href=&quot;https://github.com/enaqx/awesome-react&quot; target=&quot;_blank&quot;&gt;so many of them&lt;/a&gt;&lt;b&gt;.&lt;/b&gt; Would it better to start with the &lt;a href=&quot;https://facebook.github.io/react/docs/getting-started.html&quot;&gt;official documentation&lt;/a&gt;, with a book or watch some video courses?&lt;br /&gt;
&lt;br /&gt;
I decided to check the official docs first. However, this was not a smart decision since I had no idea about the logic of the library. I didn’t even know what some concepts meant since the only JS library I knew at that time well was jQuery. So, I skipped the docs for the time being. &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Instead, I chose a book (&lt;a href=&quot;https://www.amazon.com/ReactJS-Example-Building-Modern-Applications/dp/1785289640&quot;&gt;ReactJS by Example - Building Modern Web Applications with React&lt;/a&gt;) and a video course (&lt;a href=&quot;https://www.udemy.com/react-redux/&quot;&gt;Modern React with Redux&lt;/a&gt;). Both resources claimed that they will teach me React (with Redux) in an accessible way. &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #b45f06;&quot;&gt;&lt;u&gt;&lt;b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;The Book&lt;/span&gt;&lt;/b&gt;&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9jkKYkOdqn6z-h6_pgCOBcg3iYaeFFZS2nuYwydYls6S5q1z8X6Tj5hyRBe5j_m28df-6BkMaCLeJ46s0gy_Eph8a0YmPNLLZKAPaXYF5AxoRuAC5LuHxgu__9jgkx7zay4i0T4Tj_6Q/s1600/ReactJS+by+Example.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9jkKYkOdqn6z-h6_pgCOBcg3iYaeFFZS2nuYwydYls6S5q1z8X6Tj5hyRBe5j_m28df-6BkMaCLeJ46s0gy_Eph8a0YmPNLLZKAPaXYF5AxoRuAC5LuHxgu__9jgkx7zay4i0T4Tj_6Q/s400/ReactJS+by+Example.jpg&quot; width=&quot;323&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span id=&quot;goog_1092519214&quot;&gt;&lt;/span&gt;&lt;span id=&quot;goog_1092519215&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
I started with the book first. The style, in which it was written, seemed engaging to me at first. You’re learning React features from the conversation between senior web developer (React expert) and junior web developer (React newbie). I guess this is one of the few things I liked about this book. &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
However, the more I read the more I started to realize that there is a substantial downside to this writing style. It forces you to read too much of &lt;b&gt;unnecessary text &lt;/b&gt;in order to understand a particular React feature. This fact made it difficult to just skim the text when, for example, you wanted to come back and re-read some topic. Moreover, the text also seemed &lt;b&gt;often repetitive&lt;/b&gt; to me. Also, the code snippets in the book were &lt;b&gt;not written in ES6 syntax&lt;/b&gt;, which is today’s standard of writing React apps. &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
These are the major reasons why&lt;b&gt; I wasn’t able to finish it&lt;/b&gt;. I read roughly half of it. &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #b45f06;&quot;&gt;&lt;u&gt;&lt;b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;The Course&lt;/span&gt;&lt;/b&gt;&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2rspEVoG5tZgyRk81Ak0D6Z_mtqqyPKUUI-SOpQNfFEOvP1Va2pWIWVIg5o1lVDhDc1tbjQ5rzbRbDo3fd6Sy5Umw4SzjfCLPCNz2NzM3fuzeB5zfsEODcLPl-fQfC9r8K4j7T4zFYy8/s1600/react_with_redux.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;225&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2rspEVoG5tZgyRk81Ak0D6Z_mtqqyPKUUI-SOpQNfFEOvP1Va2pWIWVIg5o1lVDhDc1tbjQ5rzbRbDo3fd6Sy5Umw4SzjfCLPCNz2NzM3fuzeB5zfsEODcLPl-fQfC9r8K4j7T4zFYy8/s400/react_with_redux.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
In a short time after I begun reading the mentioned book, I started to watch the video course &lt;a href=&quot;https://www.udemy.com/react-redux/&quot;&gt;Modern React with Redux by Stephen Grider&lt;/a&gt;. Unlike the book, the course truly &lt;b&gt;helped me to understand React and Redux.&lt;/b&gt; The instructor does a great job explaining React basics in a &lt;b&gt;beginner-friendly way&lt;/b&gt;. You will learn not only how to write code properly, but also why are you writing it in a particular way. What I loved the most about instructor’s approach is that you’re&lt;b&gt; building apps&lt;/b&gt; with React throughout the course. He will also write every single line of code with you – &lt;b&gt;code along&lt;/b&gt;. &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
After few introductory videos, you will create the YouTube app where you will solidify your newly acquired knowledge. You are going to build your first React component, initialize a state and even make you first React AJAX call. After that, you’ll plug Redux in and create the Weather app using other JS libraries and frameworks as well. The final app, you’re going to make, will be a simple blog, where you will build a form in React and you will learn how to use React router library. &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
However, there are two&lt;b&gt; things I missed&lt;/b&gt; in this course. Firstly, you don’t build your React&lt;b&gt; developer environment&lt;/b&gt; yourself. Instead, you simply download it from the instructor’s Github account. From the hindsight, I think it is crucial for a React beginner (without any experience with node.js) to understand how is it possible that just by typing “npm start” into the console, your app magically appears on the screen. You might also have issues with understanding why the JSX code with ES6 syntax, you write throughout the course, can be read by the browser (hint: it is done by npm’s Babel package). &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Secondly, I missed some&lt;b&gt; theoretical introduction&lt;/b&gt; into the basics of React and Redux. When I’m learning something new, I need to understand the basic concepts and definitions from the beginning. This helps me a lot to fully understand the new material. For example, you won’t learn difference between &lt;a href=&quot;https://www.gitbook.com/book/frontendmasters/react-enlightenment/details&quot;&gt;React component, React element and React node&lt;/a&gt; in this course.  However, I’m fully aware that this latter issue might be only my personal one. &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
To sum up, Stephen Grider’s Modern React with Redux course is a &lt;b&gt;great introduction to React with Redux&lt;/b&gt;. It will teach you how to build fully functional apps with these technologies using modern ES6 syntax. &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #b45f06;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;u&gt;&lt;b&gt;The Rest&lt;/b&gt;&lt;/u&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0GaU9sl9ZNq91_0zZMQdb16VuJT2SZn1HWT1_E_4EUV9IDS1tHuebARCYd4Y-czDE4T8ZPJ28mjTbHSKezw18bDGtJ48xQ-dXsuoIchRghtVTN2xvvEtLyhfcQ5yI9zV4z0iwerdiOWw/s1600/cory_house.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0GaU9sl9ZNq91_0zZMQdb16VuJT2SZn1HWT1_E_4EUV9IDS1tHuebARCYd4Y-czDE4T8ZPJ28mjTbHSKezw18bDGtJ48xQ-dXsuoIchRghtVTN2xvvEtLyhfcQ5yI9zV4z0iwerdiOWw/s1600/cory_house.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Since I wanted to learn more about React and Redux, I tried another video course, this time from Cory House. Actually, he has two courses on React, one &lt;a href=&quot;https://www.pluralsight.com/courses/react-flux-building-applications&quot;&gt;for beginners with Flux&lt;/a&gt; (with &lt;a href=&quot;https://toddmotto.com/react-create-class-versus-component/&quot; target=&quot;_blank&quot;&gt;React.createClass syntax&lt;/a&gt;) and the other &lt;a href=&quot;https://www.pluralsight.com/courses/react-redux-react-router-es6&quot;&gt;for not-React-beginners with Redux&lt;/a&gt; (using ES6 syntax).  I did the latter one. &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Although I knew that this course was not for beginners, I didn’t like the fact that the instructor just &lt;b&gt;copied and paste the code&lt;/b&gt; most of the time. I’ve already done a couple of other advanced JS courses and in each of one of them, you code along with the instructor. The instructor was also too often referring back to his beginner’s course. This might get a little bit annoying sometimes. Because of this, I occasionally got a feeling that you needed to do the beginner’s course first in order to be able to get the most from the advanced course.&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
On the other hand, the instructor &lt;b&gt;provided an introductory lecture&lt;/b&gt; before each topic with a couple of slides. This really helped me to get into the particular React (Redux) topic (the thing I missed in the Stephen Grider’s course). &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Despite the mentioned shortcomings, this course was very well organized and it &lt;b&gt;helped me to understand React and Redux even more&lt;/b&gt;. &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #b45f06;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;u&gt;&lt;b&gt;The Docs&amp;nbsp;&lt;/b&gt;&lt;/u&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
After going through all of the mentioned resources, I jumped back to the official &lt;a href=&quot;https://facebook.github.io/react/docs/getting-started.html&quot; target=&quot;_blank&quot;&gt;React docs&lt;/a&gt; and read them all. This time around, I had &lt;b&gt;no problem understanding it&lt;/b&gt;. &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Currently, I am going through &lt;a href=&quot;http://redux.js.org/&quot;&gt;Redux docs&lt;/a&gt; and have no problems understanding it as well. &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjpKbTaHcL_aeu4V4yLn4qcvnRI0mpZY2DPCMb-1dEfrSIvUhCc2j3lalAdklEz63p0zGYmNWt8dQrcbhej32NqZHjKXeWTEnW72149Vym5XSXtIjaQuGTHtwwnD5zYay3xNqAQTQf83g/s1600/libraryjpg.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjpKbTaHcL_aeu4V4yLn4qcvnRI0mpZY2DPCMb-1dEfrSIvUhCc2j3lalAdklEz63p0zGYmNWt8dQrcbhej32NqZHjKXeWTEnW72149Vym5XSXtIjaQuGTHtwwnD5zYay3xNqAQTQf83g/s400/libraryjpg.jpg&quot; width=&quot;266&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7VDvJEfvCry8nWr57Bh_4LWdw-brfmaLqEp6uXd-9_nqJVepYB1ZCWyKua4_ZJS0AVMnd51kKgkwqHYZBCM99eI4AD12K4ROkgDnbSs2x47zjD5f_wz57eCNONChYl93cuJggU2RhH6A/s1600/react_glass.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;br /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;So, are you going to learn React with Redux too?&amp;nbsp;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
If you’ve already jumped into React and Redux, please &lt;b&gt;let me know, in the discussion, what resources you used and how efficient they were for you.&lt;/b&gt;&lt;/div&gt;
</description><link>https://codinglawyer.blogspot.com/2016/07/how-am-i-learning-react-with-redux.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6UVQQBfLcnlKR0XJP6s3ocXo64hdxR4NzIEO5MQtSSjNjTkbfAg5MG6sPdwesWF9zTM9sznSMF_fYYrpnOMkHj-fpLkXjHILW_UiUVGy3RwdK-q_H3Gyq6xyUj7RlMjEsyR5hTx3XjHo/s72-c/react-1.png" height="72" width="72"/><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4901005112374661630.post-4611716350833179932</guid><pubDate>Fri, 22 Jul 2016 11:51:00 +0000</pubDate><atom:updated>2016-08-12T23:35:02.037+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">arduino</category><category domain="http://www.blogger.com/atom/ns#">bootcamp</category><category domain="http://www.blogger.com/atom/ns#">javascript</category><category domain="http://www.blogger.com/atom/ns#">node.js</category><title>WebDevRes #1</title><description>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiG9DHm5ijJ6cggjFirf21ltScCs8Pr6sIq_TWVtcNn3H58m1fs28xegAEzhjoZ7pD-dp_m5X4C8NxiP5VCE6-xuHcJoMY-9s52d7Ez-4GZYI6NNN657ycAWfdH_4fI12BlD84o5Oii-Qs/s1600/booksjpg.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiG9DHm5ijJ6cggjFirf21ltScCs8Pr6sIq_TWVtcNn3H58m1fs28xegAEzhjoZ7pD-dp_m5X4C8NxiP5VCE6-xuHcJoMY-9s52d7Ez-4GZYI6NNN657ycAWfdH_4fI12BlD84o5Oii-Qs/s640/booksjpg.jpg&quot; width=&quot;426&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:OfficeDocumentSettings&gt;
  &lt;o:AllowPNG/&gt;
 &lt;/o:OfficeDocumentSettings&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;w:WordDocument&gt;
  &lt;w:View&gt;Normal&lt;/w:View&gt;
  &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;
  &lt;w:TrackMoves/&gt;
  &lt;w:TrackFormatting/&gt;
  &lt;w:HyphenationZone&gt;21&lt;/w:HyphenationZone&gt;
  &lt;w:PunctuationKerning/&gt;
  &lt;w:ValidateAgainstSchemas/&gt;
  &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;
  &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;
  &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;
  &lt;w:DoNotPromoteQF/&gt;
  &lt;w:LidThemeOther&gt;CS&lt;/w:LidThemeOther&gt;
  &lt;w:LidThemeAsian&gt;X-NONE&lt;/w:LidThemeAsian&gt;
  &lt;w:LidThemeComplexScript&gt;X-NONE&lt;/w:LidThemeComplexScript&gt;
  &lt;w:Compatibility&gt;
   &lt;w:BreakWrappedTables/&gt;
   &lt;w:SnapToGridInCell/&gt;
   &lt;w:WrapTextWithPunct/&gt;
   &lt;w:UseAsianBreakRules/&gt;
   &lt;w:DontGrowAutofit/&gt;
   &lt;w:SplitPgBreakAndParaMark/&gt;
   &lt;w:EnableOpenTypeKerning/&gt;
   &lt;w:DontFlipMirrorIndents/&gt;
   &lt;w:OverrideTableStyleHps/&gt;
  &lt;/w:Compatibility&gt;
  &lt;m:mathPr&gt;
   &lt;m:mathFont m:val=&quot;Cambria Math&quot;/&gt;
   &lt;m:brkBin m:val=&quot;before&quot;/&gt;
   &lt;m:brkBinSub m:val=&quot;--&quot;/&gt;
   &lt;m:smallFrac m:val=&quot;off&quot;/&gt;
   &lt;m:dispDef/&gt;
   &lt;m:lMargin m:val=&quot;0&quot;/&gt;
   &lt;m:rMargin m:val=&quot;0&quot;/&gt;
   &lt;m:defJc m:val=&quot;centerGroup&quot;/&gt;
   &lt;m:wrapIndent m:val=&quot;1440&quot;/&gt;
   &lt;m:intLim m:val=&quot;subSup&quot;/&gt;
   &lt;m:naryLim m:val=&quot;undOvr&quot;/&gt;
  &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;w:LatentStyles DefLockedState=&quot;false&quot; DefUnhideWhenUsed=&quot;true&quot;
  DefSemiHidden=&quot;true&quot; DefQFormat=&quot;false&quot; DefPriority=&quot;99&quot;
  LatentStyleCount=&quot;267&quot;&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;0&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Normal&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;heading 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 7&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 8&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 9&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 7&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 8&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 9&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;35&quot; QFormat=&quot;true&quot; Name=&quot;caption&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;10&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Title&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;1&quot; Name=&quot;Default Paragraph Font&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;11&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Subtitle&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;22&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Strong&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;20&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Emphasis&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;59&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Table Grid&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Placeholder Text&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;1&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;No Spacing&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Revision&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;34&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;List Paragraph&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;29&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Quote&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;30&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Intense Quote&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;19&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Subtle Emphasis&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;21&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Intense Emphasis&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;31&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Subtle Reference&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;32&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Intense Reference&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;33&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Book Title&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;37&quot; Name=&quot;Bibliography&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; QFormat=&quot;true&quot; Name=&quot;TOC Heading&quot;/&gt;
 &lt;/w:LatentStyles&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt;
&lt;style&gt;
 /* Style Definitions */
 table.MsoNormalTable
 {mso-style-name:&quot;Normální tabulka&quot;;
 mso-tstyle-rowband-size:0;
 mso-tstyle-colband-size:0;
 mso-style-noshow:yes;
 mso-style-priority:99;
 mso-style-parent:&quot;&quot;;
 mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
 mso-para-margin-top:0cm;
 mso-para-margin-right:0cm;
 mso-para-margin-bottom:10.0pt;
 mso-para-margin-left:0cm;
 line-height:115%;
 mso-pagination:widow-orphan;
 font-size:11.0pt;
 font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
 mso-ascii-font-family:Calibri;
 mso-ascii-theme-font:minor-latin;
 mso-hansi-font-family:Calibri;
 mso-hansi-theme-font:minor-latin;
 mso-fareast-language:EN-US;}
&lt;/style&gt;
&lt;![endif]--&gt;

&lt;/div&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;Article&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;a href=&quot;https://medium.com/@_cmdv_/i-want-to-learn-javascript-in-2015-e96cd85ad225#.gq3b8ie83&quot;&gt;Want to learn JavaScript in 2016?&lt;/a&gt;&lt;/b&gt;&lt;/div&gt;
&lt;br /&gt;
This article describes its author’s programming journey. As I mentioned in the &lt;a href=&quot;https://codinglawyer.blogspot.cz/2016/07/webdevres-weekly-0.html&quot; target=&quot;_blank&quot;&gt;previous post&lt;/a&gt;, the most difficult part of the coding learning process is to pass its intermediate stage, which is a phase between beginner and advanced programmer. The author of the article sees it the same way. &lt;br /&gt;
He makes also some very good points, for example that you should at least try to learn how JS frameworks and libraries work under the hood, which will help you to better understand JS functionalities.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
The only problem I have with this article is that the author is only telling you which courses to take or which book to read, but he is not telling what you should do with the acquired knowledge. You should always keep in mind that the most important thing in a learning process is to build your own apps from scratch.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;Blog post&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;a href=&quot;http://www.codenewbie.org/blogs/my-bootcamp-experience&quot; target=&quot;_blank&quot;&gt;My Bootcamp experience&lt;/a&gt;&lt;/b&gt;&lt;/div&gt;
&lt;br /&gt;
This is a great article from Saron Yitbarek, founder of the &lt;a href=&quot;http://www.codenewbie.org/&quot; target=&quot;_blank&quot;&gt;code newbies&lt;/a&gt;, where she describes her personal experience with a programming Bootcamp. Among other things, you will learn what to look for when searching for the bootcamp that will meet your individual needs and that you should always carefully assess the employment percentage of the particular bootcamp’s graduates, since it can be easily manipulated.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;Article&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;a href=&quot;https://medium.com/@leo/getting-started-with-javascript-robotics-5c54e716562c#.nioob4glm&quot; target=&quot;_blank&quot;&gt;Getting Started with JavaScript Robotics &lt;/a&gt;&lt;/b&gt;&lt;/div&gt;
&lt;br /&gt;
Have you ever thought about using JavaScript to program a piece hardware? …for example, to light up your LED? &lt;br /&gt;
This article will walk you through the process from getting your hardware to being able to control a LED with a JavaScript code using Node.js. &lt;br /&gt;
I was amazed by how simple is to get the hardware and to start control it with JavaScript. I&#39;m even playing with the idea of buying the &lt;a href=&quot;https://store.arduino.cc/product/GKX00007&quot; target=&quot;_blank&quot;&gt;Arduino starter kit&lt;/a&gt; myself.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;Blog post&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;a href=&quot;https://signalvnoise.com/posts/3124-give-it-five-minutes&quot; target=&quot;_blank&quot;&gt;Give it five minutes &lt;/a&gt;&lt;/b&gt;&lt;/div&gt;
&lt;br /&gt;
I came across this blog post when reading the documentation to the React JS library. Its main massage is that you should always think hard about new ideas, which might seem like a nonsense to you at first. Before dismissing them straight away, you should ask questions about them instead. It is an easy task to dismiss someone’s unconventional idea, much harded task is to think about it and accept it&lt;span lang=&quot;EN-GB&quot; style=&quot;mso-ansi-language: EN-US;&quot;&gt; .&lt;/span&gt;&lt;/div&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
</description><link>https://codinglawyer.blogspot.com/2016/07/webdevres-1.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiG9DHm5ijJ6cggjFirf21ltScCs8Pr6sIq_TWVtcNn3H58m1fs28xegAEzhjoZ7pD-dp_m5X4C8NxiP5VCE6-xuHcJoMY-9s52d7Ez-4GZYI6NNN657ycAWfdH_4fI12BlD84o5Oii-Qs/s72-c/booksjpg.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4901005112374661630.post-5103451958491832875</guid><pubDate>Sat, 16 Jul 2016 16:10:00 +0000</pubDate><atom:updated>2016-08-12T23:34:46.610+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">angular</category><category domain="http://www.blogger.com/atom/ns#">atom</category><category domain="http://www.blogger.com/atom/ns#">javascript</category><category domain="http://www.blogger.com/atom/ns#">react</category><category domain="http://www.blogger.com/atom/ns#">web development</category><title>WebDevRes #0</title><description>&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7rJDSsL72UOvCLxCovnE9PuqCfJslYMOGkdCH6CpIgSLx4905HMpFfMkz6B99S-qjzhI0kd23FBDPTpqOTmGKsdtdoU3wbIQnhz2sHiRQtHzyA1KKI_lAEXWZLBFIa303mZBgH47eSeE/s1600/booksjpg.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7rJDSsL72UOvCLxCovnE9PuqCfJslYMOGkdCH6CpIgSLx4905HMpFfMkz6B99S-qjzhI0kd23FBDPTpqOTmGKsdtdoU3wbIQnhz2sHiRQtHzyA1KKI_lAEXWZLBFIa303mZBgH47eSeE/s640/booksjpg.jpg&quot; width=&quot;426&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
As &lt;a href=&quot;https://codinglawyer.blogspot.cz/2016/07/im-back_13.html&quot; target=&quot;_blank&quot;&gt;already mentioned&lt;/a&gt;, I will be regularly posting the &lt;b&gt;most interesting resources&lt;/b&gt; (articles,
blog posts, podcasts, tweets…), I encounter, that are somehow related to programming. These posts are called
WebDevRes which stands for Web Development Resources and you&#39;re just reading the first post of this series - History in the making!&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0cm 0cm 0pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-GB&quot; style=&quot;mso-ansi-language: EN-GB;&quot;&gt;As you can see, the first &quot;issue&quot; begins with 0 and not with 1&lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;mso-ansi-language: EN-US;&quot;&gt;.&amp;nbsp;&lt;/span&gt;Do you know
why?&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 0cm 0cm 0pt;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0cm 0cm 0pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;mso-ansi-language: EN-US;&quot;&gt;Yep, you’re
right, WebDevRes Weekly is a kind of an array of interesting links, and array
index, as we all know, begins with 0!&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 0cm 0cm 0pt;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0cm 0cm 0pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;mso-ansi-language: EN-US;&quot;&gt;Ok, (stupid)
jokes aside and let’s get real.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Here are the&lt;b&gt; top five links&lt;/b&gt; to interesting programming resources, I recently read or heard. Enjoy!&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0cm 0cm 0pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b style=&quot;mso-bidi-font-weight: normal;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;mso-ansi-language: EN-US;&quot;&gt;Article&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b style=&quot;mso-bidi-font-weight: normal;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;mso-ansi-language: EN-US;&quot;&gt;&lt;a href=&quot;https://medium.freecodecamp.com/how-to-write-medium-stories-people-will-actually-read-92e58a27c8d8#.2uq5sp1v9&quot; target=&quot;_blank&quot;&gt;How to write Medium stories people will actually read&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0cm 0cm 0pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;mso-ansi-language: EN-US;&quot;&gt;The author describes
how to convince other people to read your article on Medium.com. However, many
of the rules can be applied to any of your internet posts as well. The post also contains
links to the articles analyzing what words you should use in your headline to
get more readers.&lt;span style=&quot;mso-spacerun: yes;&quot;&gt;&amp;nbsp;&lt;/span&gt;You will also learn
how you should write your posts and that you shouldn’t be scared to show your
credibility to your readers.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 0cm 0cm 0pt;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0cm 0cm 0pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b style=&quot;mso-bidi-font-weight: normal;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;mso-ansi-language: EN-US;&quot;&gt;Podcast&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b style=&quot;mso-bidi-font-weight: normal;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;mso-ansi-language: EN-US;&quot;&gt;&lt;a href=&quot;http://www.codenewbie.org/podcast/the-hard-way&quot; target=&quot;_blank&quot;&gt;Code Newbie Ep. 19 - The Hard Way&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0cm 0cm 0pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;mso-ansi-language: EN-US;&quot;&gt;This is a
great interview with Zed Shaw, author of the Learn the Hard Way series. What I personally like about him is his different approach to the code learning since he puts strong emphasis
on the memorization. He claims that you need to memorize
syntax of the programming language before you can jump into your first coding project.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0cm 0cm 0pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b style=&quot;mso-bidi-font-weight: normal;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;mso-ansi-language: EN-US;&quot;&gt;Blog Post&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b style=&quot;mso-bidi-font-weight: normal;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;mso-ansi-language: EN-US;&quot;&gt;&lt;a href=&quot;http://frontendmayhem.com/2016/07/04/leveling-up-your-javascript/&quot; target=&quot;_blank&quot;&gt;Leveling up your JavaScript&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0cm 0cm 0pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;mso-ansi-language: EN-US;&quot;&gt;This is a
story about an aspiring web developer, who talks about his programming journey. The interesting part of the post is when he describes challenges he faced, when moving
from a beginner to an advanced programmer. I bet that everybody undergoes such troubles when going through this particular period since &lt;a href=&quot;https://codinglawyer.blogspot.cz/2016/04/best-resources-to-learn-javascript.html&quot; target=&quot;_blank&quot;&gt;you don’t know what you don’t know&lt;/a&gt;. The easiest way, how to move on, is to
learn from other’s experience. You should therefore read this article!&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;Article&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;a href=&quot;http://www.discoversdk.com/compare/react-vs-angularjs#/product-comparisons&quot; target=&quot;_blank&quot;&gt;Angular versus React: Which One Will Reign Supreme?&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;The article
describes differences between the two most popular JS frameworks - Angular and
React. The author talks about the advantages as well as of disadvantages of
each framework. Since many of the web developers need to use at least one of them, it is good to understand the differences between them.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;Article&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;a href=&quot;https://medium.freecodecamp.com/atom-treasures-82a64ac391c#.hsb3dbliw&quot; target=&quot;_blank&quot;&gt;Atom treasures a list of Atom plugins I can’t live without&lt;/a&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;If you’re
using Atom text editor, this article is for you. If you don’t use it, you should
at least give it a try &lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;wingdings&amp;quot;; mso-ansi-language: EN-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-char-type: symbol; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-symbol-font-family: Wingdings;&quot;&gt;J&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;. This post is full of great packages which will enhance your productivity. Try the&amp;nbsp;&lt;a href=&quot;https://atom.io/packages/activate-power-mode&quot;&gt;power mode&lt;/a&gt;&amp;nbsp;package at least!&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
&lt;hr style=&quot;color: #b45f06;&quot; /&gt;
</description><link>https://codinglawyer.blogspot.com/2016/07/webdevres-weekly-0.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7rJDSsL72UOvCLxCovnE9PuqCfJslYMOGkdCH6CpIgSLx4905HMpFfMkz6B99S-qjzhI0kd23FBDPTpqOTmGKsdtdoU3wbIQnhz2sHiRQtHzyA1KKI_lAEXWZLBFIa303mZBgH47eSeE/s72-c/booksjpg.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4901005112374661630.post-4883567693969166785</guid><pubDate>Fri, 15 Jul 2016 09:29:00 +0000</pubDate><atom:updated>2016-07-15T21:52:39.974+02:00</atom:updated><title>                                  What’s React!? : Introduction</title><description>&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:OfficeDocumentSettings&gt;
  &lt;o:RelyOnVML/&gt;
  &lt;o:AllowPNG/&gt;
 &lt;/o:OfficeDocumentSettings&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 17.85pt; text-align: justify;&quot;&gt;
&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;w:WordDocument&gt;
  &lt;w:View&gt;Normal&lt;/w:View&gt;
  &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;
  &lt;w:TrackMoves/&gt;
  &lt;w:TrackFormatting/&gt;
  &lt;w:HyphenationZone&gt;21&lt;/w:HyphenationZone&gt;
  &lt;w:PunctuationKerning/&gt;
  &lt;w:ValidateAgainstSchemas/&gt;
  &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;
  &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;
  &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;
  &lt;w:DoNotPromoteQF/&gt;
  &lt;w:LidThemeOther&gt;CS&lt;/w:LidThemeOther&gt;
  &lt;w:LidThemeAsian&gt;X-NONE&lt;/w:LidThemeAsian&gt;
  &lt;w:LidThemeComplexScript&gt;X-NONE&lt;/w:LidThemeComplexScript&gt;
  &lt;w:Compatibility&gt;
   &lt;w:BreakWrappedTables/&gt;
   &lt;w:SnapToGridInCell/&gt;
   &lt;w:WrapTextWithPunct/&gt;
   &lt;w:UseAsianBreakRules/&gt;
   &lt;w:DontGrowAutofit/&gt;
   &lt;w:SplitPgBreakAndParaMark/&gt;
   &lt;w:EnableOpenTypeKerning/&gt;
   &lt;w:DontFlipMirrorIndents/&gt;
   &lt;w:OverrideTableStyleHps/&gt;
  &lt;/w:Compatibility&gt;
  &lt;m:mathPr&gt;
   &lt;m:mathFont m:val=&quot;Cambria Math&quot;/&gt;
   &lt;m:brkBin m:val=&quot;before&quot;/&gt;
   &lt;m:brkBinSub m:val=&quot;--&quot;/&gt;
   &lt;m:smallFrac m:val=&quot;off&quot;/&gt;
   &lt;m:dispDef/&gt;
   &lt;m:lMargin m:val=&quot;0&quot;/&gt;
   &lt;m:rMargin m:val=&quot;0&quot;/&gt;
   &lt;m:defJc m:val=&quot;centerGroup&quot;/&gt;
   &lt;m:wrapIndent m:val=&quot;1440&quot;/&gt;
   &lt;m:intLim m:val=&quot;subSup&quot;/&gt;
   &lt;m:naryLim m:val=&quot;undOvr&quot;/&gt;
  &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;w:LatentStyles DefLockedState=&quot;false&quot; DefUnhideWhenUsed=&quot;true&quot;
  DefSemiHidden=&quot;true&quot; DefQFormat=&quot;false&quot; DefPriority=&quot;99&quot;
  LatentStyleCount=&quot;267&quot;&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;0&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Normal&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;heading 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 7&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 8&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;9&quot; QFormat=&quot;true&quot; Name=&quot;heading 9&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 7&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 8&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; Name=&quot;toc 9&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;35&quot; QFormat=&quot;true&quot; Name=&quot;caption&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;10&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Title&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;1&quot; Name=&quot;Default Paragraph Font&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;11&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Subtitle&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;22&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Strong&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;20&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Emphasis&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;59&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Table Grid&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Placeholder Text&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;1&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;No Spacing&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; UnhideWhenUsed=&quot;false&quot; Name=&quot;Revision&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;34&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;List Paragraph&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;29&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Quote&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;30&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Intense Quote&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 1&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 2&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 3&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 4&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 5&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;60&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Shading Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;61&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light List Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;62&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Light Grid Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;63&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 1 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;64&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Shading 2 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;65&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 1 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;66&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium List 2 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;67&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 1 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;68&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 2 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;69&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Medium Grid 3 Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;70&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Dark List Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;71&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Shading Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;72&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful List Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;73&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; Name=&quot;Colorful Grid Accent 6&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;19&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Subtle Emphasis&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;21&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Intense Emphasis&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;31&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Subtle Reference&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;32&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Intense Reference&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;33&quot; SemiHidden=&quot;false&quot;
   UnhideWhenUsed=&quot;false&quot; QFormat=&quot;true&quot; Name=&quot;Book Title&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;37&quot; Name=&quot;Bibliography&quot;/&gt;
  &lt;w:LsdException Locked=&quot;false&quot; Priority=&quot;39&quot; QFormat=&quot;true&quot; Name=&quot;TOC Heading&quot;/&gt;
 &lt;/w:LatentStyles&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt;
&lt;style&gt;
 /* Style Definitions */
 table.MsoNormalTable
 {mso-style-name:&quot;Normální tabulka&quot;;
 mso-tstyle-rowband-size:0;
 mso-tstyle-colband-size:0;
 mso-style-noshow:yes;
 mso-style-priority:99;
 mso-style-parent:&quot;&quot;;
 mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
 mso-para-margin:0cm;
 mso-para-margin-bottom:.0001pt;
 mso-pagination:widow-orphan;
 font-size:11.0pt;
 font-family:&quot;Times New Roman&quot;,&quot;serif&quot;;}
&lt;/style&gt;
&lt;![endif]--&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;span style=&quot;color: #b45f06;&quot;&gt;&lt;u&gt;&lt;b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Introduction &lt;/span&gt;&lt;/b&gt;&lt;/u&gt;&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 17.85pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 17.85pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;If you read any article about web development or any front-end developer job description these days, you most likely get the impression, that everybody wants you to know JS library called React.js. Since I’ve read many articles about React and watch some online courses in the last couple of weeks, I decided to write a post about this popular library. &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;“Ok, so what’s this fancy thing that everybody is talking about?” &lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Put it simply, React.js is a JavaScript library developed by Facebook. It lets you divide your app into &lt;b&gt;user interface (UI) components. &lt;/b&gt;However, this is nothing new since React is just one of the many libraries that let you build components with JS. You can use other JS frameworks such as Angular or Ember for this as well. However, in contrast to Angular, which is a full-fledged JS framework, React is only a view layer. This means that it doesn’t care about routing, data flow or deployments. You need to use other libraries to be able to use these functionalities in React (e.g. Redux, React-Router). React is thus &lt;b&gt;a simple composable component library.&lt;/b&gt; &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;“Hmm, ok. But what’s so special about React? ” &lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;One of its greatest benefits is its speed and responsiveness that is related to the way how it manipulates the DOM. It uses the virtual DOM that &lt;b&gt;compares the current state of the DOM to the updated state and determines the most efficient way &lt;/b&gt;to update the DOM. In contrast, jQuery updates the whole DOM every time, the state is changed (e.g. the button is clicked). Furthermore, React enables you to easily &lt;b&gt;nest components&lt;/b&gt; inside other components and to pass data from the parent component down the child components via the so-called props. &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;color: #b45f06;&quot;&gt;&lt;u&gt;&lt;b&gt;&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: large;&quot;&gt;Syntax &lt;/span&gt;&lt;/b&gt;&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;React code be written in the pure JavaScript or in so-called JSX syntax. JSX is JavaScript syntax extension that looks like HTML. In other words it extends ECMAScript in a way that HTML-like text can co-exist with JavaScript code. You can simply write HTML and JS in one file. In JSX you can write tags just as you were writing them in a HTML file. However, if you are writing JS code in JSX file, you need to surround your code with curly braces {}. &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;JSX must be always transformed into JavaScript by a preprocessor (typically by Babel.js). Otherwise, the JS engine won’t be able to understand this code. If you are writing your React code in ES6 syntax, Babel will translate it into ES5 as well. &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;As I already mentioned, you can write your React code with JSX or with pure JS. However, JSX syntax is easier to write and read and is more popular as well. &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;u&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Example of a React code in JSX syntax: &lt;/span&gt;&lt;/u&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;!-- HTML generated using hilite.me --&gt;&lt;br /&gt;
&lt;div style=&quot;background: #272822; border-width: .1em .1em .1em .8em; border: solid gray; overflow: auto; padding: .2em .6em; width: auto;&quot;&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt;1&lt;/pre&gt;
&lt;/td&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;var&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;greetings&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;div&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;Hello&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;World&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;background-color: #1e0010; color: #960050;&quot;&gt;/div&amp;gt; &lt;/span&gt;&lt;/pre&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;The same code transformed by Babel into pure JS syntax: &lt;/span&gt;&lt;/u&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;!-- HTML generated using hilite.me --&gt;&lt;br /&gt;
&lt;div style=&quot;background: #272822; border-width: .1em .1em .1em .8em; border: solid gray; overflow: auto; padding: .2em .6em; width: auto;&quot;&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt;1
2
3
4
5&lt;/pre&gt;
&lt;/td&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;var&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;greetings&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;React&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;createElement&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;
&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;div&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt;
&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: #66d9ef;&quot;&gt;null&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt;
&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;Hello World&quot;&lt;/span&gt;
&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt; &lt;/pre&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;As you can see JSX is basically &lt;b&gt;HTML syntax written in the JS code.&lt;/b&gt; In this way, the React differs from the Angular and Knockout frameworks, where you write JavaScript code into HTML which has some disadvantages. Primarily, it is difficult to debug it because, for example, if you make a typo in the mark-up, the app silently fails because HTML is not strictly parsed as JS is. On the other hand, React is written in JSX which is the JavaScript. This means that if you make a typo in JSX code, you will get an error referencing the particular line of code. &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;u&gt;&lt;b&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;React. JS is : &lt;/span&gt;&lt;/b&gt;&lt;/u&gt;&lt;/div&gt;
&lt;ul style=&quot;margin-left: 40px;&quot;&gt;
&lt;li&gt;&lt;b&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;a simple composable component library&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul style=&quot;margin-left: 40px;&quot;&gt;
&lt;li&gt;&lt;b&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;fast and responsive&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul style=&quot;margin-left: 40px;&quot;&gt;
&lt;li&gt;&lt;b&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;easy to debug&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 17.85pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;See you in the next post… &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;u&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;If you like this post, or if you have any suggestions or critique, feel free to write a comment below. I will much appreciated that it.&lt;/span&gt;&lt;/u&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 17.85pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 17.85pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
</description><link>https://codinglawyer.blogspot.com/2016/07/whats-react-introduction.html</link><author>noreply@blogger.com (Anonymous)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4901005112374661630.post-6016352027407089674</guid><pubDate>Wed, 13 Jul 2016 08:58:00 +0000</pubDate><atom:updated>2016-08-12T23:33:13.908+02:00</atom:updated><title>I’m back!</title><description>&lt;div style=&quot;text-align: justify;&quot;&gt;
Lately, I spend all of my spare time learning new technologies and unfortunately didn’t write any new posts.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
But that period is over...&lt;b&gt; I will bring this blog to life again!&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7ndiCk_ggjbWYwPG5W1K3IaiKyEUiBDB8Q7BhKXC6IAjzath7vQ2SL_FS5yaYSwSknmceStJaHTAwytNhv8yO8hWqD7-ClN4EiHl-zLAjpAW4A9cVFMCtR0izz4IZMyFFYiI9-n6sN4Y/s1600/concert.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;266&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7ndiCk_ggjbWYwPG5W1K3IaiKyEUiBDB8Q7BhKXC6IAjzath7vQ2SL_FS5yaYSwSknmceStJaHTAwytNhv8yO8hWqD7-ClN4EiHl-zLAjpAW4A9cVFMCtR0izz4IZMyFFYiI9-n6sN4Y/s400/concert.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
From now on, I will make a new post every week. Furthermore, I will also write regularly about the interesting programming resources. &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
So, Stay tuned…  &lt;/div&gt;
</description><link>https://codinglawyer.blogspot.com/2016/07/im-back_13.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7ndiCk_ggjbWYwPG5W1K3IaiKyEUiBDB8Q7BhKXC6IAjzath7vQ2SL_FS5yaYSwSknmceStJaHTAwytNhv8yO8hWqD7-ClN4EiHl-zLAjpAW4A9cVFMCtR0izz4IZMyFFYiI9-n6sN4Y/s72-c/concert.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4901005112374661630.post-975750125115098051</guid><pubDate>Tue, 31 May 2016 19:00:00 +0000</pubDate><atom:updated>2016-08-14T18:01:46.292+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">feedback</category><category domain="http://www.blogger.com/atom/ns#">learn to code</category><category domain="http://www.blogger.com/atom/ns#">personal development</category><title>Feedback - The Most Important Thing, Man</title><description>&lt;div class=&quot;MsoBodyText&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjKAdibboTrhVtA5YVRdaH9WYVHGRlybIIdVhiMYFieZule6ET0zjZK5o-1dY7L65bFe3jScWrG_bHxKnvCyRFPqB1bvy6_Z-WkUfIejGg29gGqdYfA00p-RuRdvzVn6Y9wkpgcRJs1Z5Q/s1600/feedback.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;223&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjKAdibboTrhVtA5YVRdaH9WYVHGRlybIIdVhiMYFieZule6ET0zjZK5o-1dY7L65bFe3jScWrG_bHxKnvCyRFPqB1bvy6_Z-WkUfIejGg29gGqdYfA00p-RuRdvzVn6Y9wkpgcRJs1Z5Q/s400/feedback.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span lang=&quot;EN-GB&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span lang=&quot;EN-GB&quot;&gt;If I should mention one
thing, about which I often think about these days, it is feedback. The more I code, the more I am convinced that
receiving feedback from an experienced individual is a necessary part of this learning process. I’ve never thought about this much before, and that was a mistake.&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
When you are learning to code, feedback is crucial for you since you want to
write a good code and only an experienced programmer can tell you, if you’re on
a right track or if your code looks like &lt;a href=&quot;https://en.wikipedia.org/wiki/Spaghetti_code&quot;&gt;spaghetti&lt;/a&gt;.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-GB&quot;&gt;When I look back at my legal university studies, I realize that I had a lack of feedback at that time. If you don’t
have enough of it&lt;/span&gt;&lt;span lang=&quot;EN-GB&quot;&gt;, you might get cocky and think that you have a
complete knowledge of a particular field since there is no one who would tell
you that you see only a tip of the iceberg. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-GB&quot;&gt;If I think about that today, I end up realizing that the
most important thing I was missing at that time was a constructive feedback. If
you want to be really good at something, &lt;b&gt;you need a help from the experienced&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&#39;one&#39; who is willing
to tell you not only that the result of your work is great but what is wrong
with your work as well.&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;In the perfect world, feedback should be a part of every learning process.&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCUqVj6e6qULIAUI_mVSLjA4VvUfZ3MpzNYR8LTqaI5spqV9oW0LoNv7nYFKgIDOKibqbQ5vcylZLH6Lux3aOwy6s6dojnSkJUfCTRg9iWLCJs9Uf5BJIrOwi1jItr6V8wvy_HMu2AyOM/s1600/Feedback0.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCUqVj6e6qULIAUI_mVSLjA4VvUfZ3MpzNYR8LTqaI5spqV9oW0LoNv7nYFKgIDOKibqbQ5vcylZLH6Lux3aOwy6s6dojnSkJUfCTRg9iWLCJs9Uf5BJIrOwi1jItr6V8wvy_HMu2AyOM/s1600/Feedback0.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;The more I code I am writing,
the more I am realizing that feedback is the single most invaluable thing that is helping me to move forward. This is true especially in the programming field,
where &lt;b&gt;&lt;a href=&quot;https://codinglawyer.blogspot.cz/2016/04/best-resources-to-learn-javascript.html&quot;&gt;you don’t know what you don’t know&lt;/a&gt;&lt;/b&gt;.&lt;/span&gt;&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span lang=&quot;EN-US&quot;&gt;You can write dozens of apps in your favorite
programming language, but does it mean you’re an expert in that particular language? I
doubt so. You can write your versions of Facebook in jQuery and you might feel
that you’re the jQuery ninja. However, no professional would really write such
a complex app in jQuery. There is Angular, Backbone or React for this kind of
app and also a lot of other JS frameworks and libraries for other stuff. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;I know that this
short post might seem too trivial for many of you.&amp;nbsp;&lt;/span&gt;But for me,&lt;b&gt; undergoing this process of thinking
about the importance of feedback helped me to move forward and to
look at my progress from a new perspective.&lt;/b&gt;&amp;nbsp;Thanks to this awareness, I was able to
critically evaluate the past and future of my coding journey and learn new lessons from my wrong decisions.&lt;/div&gt;
</description><link>https://codinglawyer.blogspot.com/2016/05/feedback-most-important-thing-man.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjKAdibboTrhVtA5YVRdaH9WYVHGRlybIIdVhiMYFieZule6ET0zjZK5o-1dY7L65bFe3jScWrG_bHxKnvCyRFPqB1bvy6_Z-WkUfIejGg29gGqdYfA00p-RuRdvzVn6Y9wkpgcRJs1Z5Q/s72-c/feedback.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4901005112374661630.post-8131505574050542430</guid><pubDate>Fri, 13 May 2016 12:34:00 +0000</pubDate><atom:updated>2016-08-12T22:48:28.044+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">css</category><category domain="http://www.blogger.com/atom/ns#">finite state machine</category><category domain="http://www.blogger.com/atom/ns#">freeCodeCamp</category><category domain="http://www.blogger.com/atom/ns#">html</category><category domain="http://www.blogger.com/atom/ns#">javascript</category><category domain="http://www.blogger.com/atom/ns#">jquery</category><title>JavaScript Calculator Guide PART 2: Code! (Free Code Camp Challenge) </title><description>&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRq5pp5g8X4znB9T9IZN1WqxOs16IFRuPzacMDbzuHK0PgUvS-BuRQL4GoXtEhpCCQEPFH8MiBzyzwHO46aqe1ofJ_Z4K_1z25Kb8qfLKjbPW5nf2nDRUtAT-Sm0pz8l59L5ll-tlQOYQ/s1600/old_calculator.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;266&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRq5pp5g8X4znB9T9IZN1WqxOs16IFRuPzacMDbzuHK0PgUvS-BuRQL4GoXtEhpCCQEPFH8MiBzyzwHO46aqe1ofJ_Z4K_1z25Kb8qfLKjbPW5nf2nDRUtAT-Sm0pz8l59L5ll-tlQOYQ/s400/old_calculator.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot;&gt;Welcome
back!&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;This is my
second post describing the implementation of the JavaScript calculator using the finite state machine (FSM).&amp;nbsp;&lt;/span&gt;As I
promised, I am going to start with the explanation of our FSM graph.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;u&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;span style=&quot;color: #b45f06; font-size: large;&quot;&gt;Graph&lt;/span&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;Although this graph
might look a little bit complicated, it is actually pretty straightforward.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgM3gdCjfWwZq5XuK3f-CglQDR0YoB9XhNrK10JeV4PjSA3uanRmIgo3RMVfwcMYklIXUNdIDuGTuXpkl35qTTfTDHAGbe5seCuB0XwWrTNX1HU0e61l9932hV_8dfIdl5Rg9VDkJ4T7BA/s1600/finite+automat+calc.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;246&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgM3gdCjfWwZq5XuK3f-CglQDR0YoB9XhNrK10JeV4PjSA3uanRmIgo3RMVfwcMYklIXUNdIDuGTuXpkl35qTTfTDHAGbe5seCuB0XwWrTNX1HU0e61l9932hV_8dfIdl5Rg9VDkJ4T7BA/s400/finite+automat+calc.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;The graph displays many
things about which, I have already talked about in my first post. You can see the variables
(top of the picture) as well as individual states (in the rectangles).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;From each state, you
can see arrows pointing to the next states. Above every one of them is a
text, separated by a slash, explaining what causes the transition into the next state and how it affects the variables.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span lang=&quot;EN-US&quot;&gt;The words &lt;b&gt;before the slash&lt;/b&gt; refer to the calculator’s
key that is clicked on:&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;ul&gt;
&lt;li&gt;num – number key&lt;/li&gt;
&lt;li&gt;op_key – operator
(except equal sign) key&lt;/li&gt;
&lt;li&gt;equal – equal sign key&lt;/li&gt;
&lt;li&gt;dot – dot key&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;The words &lt;b&gt;after the slash&lt;/b&gt; refer to the defined
variables which are affected by the pressed key.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;For example, if you are in the
START state of the calculator and you press a number key, you will get to the
FIRST_ARG state and &lt;i&gt;disp &lt;/i&gt;variable will
have a new value which is the same as the particular number of the pressed key
(num/disp = num). &amp;nbsp;If you press a number
again, &lt;i&gt;disp&lt;/i&gt; variable will get a new
character space which is the same as the value of the pressed key (num/disp +=
num). However, if you press an operator instead, variable &lt;i&gt;op &lt;/i&gt;will be equal to that operator (op_key/op = op_key) and &lt;i&gt;disp &lt;/i&gt;variable won’t get a new character,
instead the &lt;i&gt;acc1&lt;/i&gt; variable will be
equal to &lt;i&gt;disp&lt;/i&gt; (acc1 = disp) because we
want &lt;i&gt;disp &lt;/i&gt;to be able to store a new second
number which will be pressed after the operator.&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;This behavior is
basically the same for the transitions between all the other states.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;See? It isn’t that
difficult, is it?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;Only thing we need to
do is to &lt;b&gt;transform this graph into a code!&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;b&gt;&lt;u&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;span style=&quot;color: #b45f06; font-size: large;&quot;&gt;Code: The Set Up&lt;/span&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;Let’s start with the
definition of the object &lt;i&gt;kclass&lt;/i&gt;&amp;nbsp;that will store all the calculator’s keys that can be
pressed. This will help us later in the code to recognize which key was
pressed. As you can see, these are simply keys which can be found on any
calculator.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background: #272822; border-width: 0.1em 0.1em 0.1em 0.8em; border: solid gray; overflow: auto; padding: 0.2em 0.6em; width: auto;&quot;&gt;
&lt;table style=&quot;text-align: justify;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13&lt;/pre&gt;
&lt;/td&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt;&lt;span style=&quot;color: #75715e;&quot;&gt;//object containing key categories that can be clicked&lt;/span&gt;
&lt;span style=&quot;color: #66d9ef;&quot;&gt;var&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #f8f8f2;&quot;&gt;{&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//number&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;NUM&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #ae81ff;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//dot&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;DOT&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #ae81ff;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//operator&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;OP&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #ae81ff;&quot;&gt;3&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//clear entry&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;CE&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #ae81ff;&quot;&gt;4&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//equal&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;EQ&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #ae81ff;&quot;&gt;5&lt;/span&gt;
&lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
&lt;/pre&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
The only key that is
missing is AC (all clear) key, which resets the calculator’s memory. We will
talk about this key later on. On the other hand, you can see a CE (clear entry)
key which resets only the currently displayed input.&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;Now, we are going to
define an object with all the calculator&#39;s states which you can also see in our graph.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;background: #272822; border-width: 0.1em 0.1em 0.1em 0.8em; border: solid gray; overflow: auto; padding: 0.2em 0.6em; width: auto;&quot;&gt;
&lt;table style=&quot;text-align: justify;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19&lt;/pre&gt;
&lt;/td&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt;&lt;span style=&quot;color: #75715e;&quot;&gt;//object containing states&lt;/span&gt;
&lt;span style=&quot;color: #66d9ef;&quot;&gt;var&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #f8f8f2;&quot;&gt;{&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//default state&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;START&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #ae81ff;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//when the first number is added&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;FIRST_ARG&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #ae81ff;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//when the first number begins with a dot (0.) or when it has a dot anywhere else&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;FIRST_ARG_FLOAT&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #ae81ff;&quot;&gt;3&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//when the operator is added&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;OP&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #ae81ff;&quot;&gt;4&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//when the second number is added&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;SECOND_ARG&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #ae81ff;&quot;&gt;5&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//when the second number has a dot not at its beginning&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;SEC_ARG_FLOAT&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #ae81ff;&quot;&gt;6&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//when the second number begins with dot(0.)&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;SEC_ARG_DOT&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #ae81ff;&quot;&gt;7&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//when we get the result of the arithmetic operation&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;EQ&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #ae81ff;&quot;&gt;8&lt;/span&gt;
&lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;&lt;/pre&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Now, let’s create an
object &lt;i&gt;calc&lt;/i&gt;&amp;nbsp;that will contain all the functionality related to our calculator. I am
going to separate this complex object into smaller snippets of code for the clarity&#39;s
sake.&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;Let’s start with the declaration
of the variables. Note that the &lt;i&gt;state &lt;/i&gt;variable
is set to the START state and other variables are empty. This is the default state of the calculator.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background: #272822; border-width: 0.1em 0.1em 0.1em 0.8em; border: solid gray; overflow: auto; padding: 0.2em 0.6em; width: auto;&quot;&gt;
&lt;table style=&quot;text-align: justify;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11&lt;/pre&gt;
&lt;/td&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;var&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;calc&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #f8f8f2;&quot;&gt;{&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//monitors current state&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;START&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//monitors current operator&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;op&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//monitors what is currently displayed on the display&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//stores the first number for further operations&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;acc1&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//stores the second number for further operations&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;acc2&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt;
&lt;/pre&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;Keep in mind, that you
need to give classes and ids to the elements in your HTML document because you
need to select them in a JavaScript code.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;My code presupposes
these selectors:&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;ul&gt;
&lt;li&gt;display of the
calculator (id=“display”)&lt;/li&gt;
&lt;li&gt;all number keys (class=“digit”)&lt;/li&gt;
&lt;li&gt;all operators (except
equal sign) keys (class=”op_key”)&lt;/li&gt;
&lt;li&gt;dot key (class=”point”)&lt;/li&gt;
&lt;li&gt;equal sign key (class= “equals”)&lt;/li&gt;
&lt;li&gt;AC key (class=“allClear”)&lt;/li&gt;
&lt;li&gt;CE key (class=“clearEntry”)&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;&lt;u&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;span style=&quot;color: #b45f06; font-size: large;&quot;&gt;Code: FSM&lt;/span&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;Remember, that we are still inside the &lt;i&gt;calc &lt;/i&gt;object.&amp;nbsp;The main functionality
that controls transitions between the states will be stored in the function &lt;i&gt;doStep&lt;/i&gt;. This function represents the implementation
of a FSM. It takes two arguments: a category of key that is clicked on (these are
defined in the object &lt;i&gt;kclass&lt;/i&gt;) and the
particular value of the clicked HTML element&amp;nbsp;
(number or operator). Inside this function, we will use a &lt;i&gt;switch&lt;/i&gt; for transitioning between the individual states of the calculator. Each switch case will represent a particular
state.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background: #272822; border-width: 0.1em 0.1em 0.1em 0.8em; border: solid gray; overflow: auto; padding: 0.2em 0.6em; width: auto;&quot;&gt;
&lt;table style=&quot;text-align: justify;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16&lt;/pre&gt;
&lt;/td&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt;  &lt;span style=&quot;color: #75715e;&quot;&gt;//function that controls transitions between states using switch&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//two arguments - key_class(key category), key(specific key)&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;doStep&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
      &lt;span style=&quot;color: #66d9ef;&quot;&gt;switch&lt;/span&gt; &lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
         &lt;span style=&quot;color: #66d9ef;&quot;&gt;case&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;START&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;NUM&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #75715e;&quot;&gt;//state action&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispSet&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #75715e;&quot;&gt;//move to the next state&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;FIRST_ARG&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;DOT&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispSet&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;0.&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;FIRST_ARG_FLOAT&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;break&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
&lt;/pre&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;Since the &lt;i&gt;state &lt;/i&gt;variable is set to the default
START state at the beginning, this state will be our starting state. Each switch
case describes what choices we have in this particular state of the calculator.
You can see that the only two things we can do in the START state is to press a number key or a
dot key (if you look into our graph, you will see the same behavior). By pressing a number key, the first character will be
a number. If you decide to press a dot key first, the first character will be “0.”
instead. Function&lt;i&gt; dispSet &lt;/i&gt;updates the
&lt;i&gt;disp &lt;/i&gt;variable with a value from its
argument which is in this case the pressed HTML element (key) or “0.”. After
that, it calls the&amp;nbsp;&lt;i&gt;displayUpdate &lt;/i&gt;function
which (surprisingly) updates the display of the calculator.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;At the end of every
switch case, state of the calculator is updated.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background: #272822; border-width: 0.1em 0.1em 0.1em 0.8em; border: solid gray; overflow: auto; padding: 0.2em 0.6em; width: auto;&quot;&gt;
&lt;table style=&quot;text-align: justify;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20&lt;/pre&gt;
&lt;/td&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt;        &lt;span style=&quot;color: #66d9ef;&quot;&gt;case&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;FIRST_ARG&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;NUM&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispAppend&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;FIRST_ARG&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;OP&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;op&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
                &lt;span style=&quot;color: #75715e;&quot;&gt;//store value of the disp in a acc1 variable in order to be able to store second number in the disp&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;acc1&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;OP&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;DOT&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispAppend&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;FIRST_ARG_FLOAT&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;CE&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispSet&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;0&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #a6e22e;&quot;&gt;calc&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;START&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;break&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
&lt;/pre&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;The second state is FIRST_ARG.
You can see that it works just as a first state. The only difference is that
you have now much more choices, i.e. you can press a range of buttons which
will affect the arithmetical operation differently. Function &lt;i&gt;dispAppend&lt;/i&gt; differs from the function &lt;i&gt;dispSet &lt;/i&gt;in a way that it concatenates
two strings together rather than set a brand new value of the variable.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background: #272822; border-width: 0.1em 0.1em 0.1em 0.8em; border: solid gray; overflow: auto; padding: 0.2em 0.6em; width: auto;&quot;&gt;
&lt;table style=&quot;text-align: justify;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57&lt;/pre&gt;
&lt;/td&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt;        &lt;span style=&quot;color: #66d9ef;&quot;&gt;case&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;FIRST_ARG_FLOAT&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;NUM&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispAppend&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;FIRST_ARG_FLOAT&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;OP&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;op&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
                &lt;span style=&quot;color: #75715e;&quot;&gt;//store value of the disp in a acc1 variable in order to be able to store second number in the disp&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;acc1&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;OP&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;CE&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispSet&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;0&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #a6e22e;&quot;&gt;calc&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;START&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;break&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
        &lt;span style=&quot;color: #66d9ef;&quot;&gt;case&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;OP&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;NUM&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispSet&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;SECOND_ARG&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;DOT&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispSet&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;0.&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;SEC_ARG_DOT&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;break&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
        &lt;span style=&quot;color: #66d9ef;&quot;&gt;case&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;SECOND_ARG&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;DOT&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispAppend&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;SEC_ARG_FLOAT&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;NUM&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispAppend&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;SECOND_ARG&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;EQ&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #75715e;&quot;&gt;//store the second number in the acc2 variable so that we can use it if the equal sign is pressed more than once&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;acc2&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
                &lt;span style=&quot;color: #75715e;&quot;&gt;//calculate the result&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;operation&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;acc1&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;displayUpdate&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;EQ&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
             &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;OP&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #75715e;&quot;&gt;//calculate the result&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;operation&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;acc1&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;op&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
                &lt;span style=&quot;color: #75715e;&quot;&gt;//store the result of the operation in the acc1 in order to be used in the next operation&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;acc1&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;displayUpdate&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;OP&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;CE&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispSet&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;0&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #a6e22e;&quot;&gt;calc&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;OP&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;break&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
&lt;/pre&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-GB&quot;&gt;The
important thing in the SECOND&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;_ARG state is a situation when we
press an equal sign (EQ). If we do this, the &lt;i&gt;disp&lt;/i&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt; variable is firstly stored in the &lt;i&gt;acc2 &lt;/i&gt;variable because we need
to remember this value for the scenario if we wanted to press equal sign again.
Secondly, the function &lt;i&gt;operation &lt;/i&gt;takes
two numbers as arguments and performs a particular calculation with them. The type of the calculation is determined by the value of the &lt;i&gt;op &lt;/i&gt;variable,
which was set earlier when the operator key was pressed.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background: #272822; border-width: 0.1em 0.1em 0.1em 0.8em; border: solid gray; overflow: auto; padding: 0.2em 0.6em; width: auto;&quot;&gt;
&lt;table style=&quot;text-align: justify;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59&lt;/pre&gt;
&lt;/td&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt;        &lt;span style=&quot;color: #66d9ef;&quot;&gt;case&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;SEC_ARG_FLOAT&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;NUM&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispAppend&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;SEC_ARG_FLOAT&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;EQ&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;acc2&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;operation&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;acc1&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;displayUpdate&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;EQ&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
             &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
             &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;OP&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                 &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;operation&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;acc1&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                 &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;op&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
                 &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;acc1&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
                 &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;displayUpdate&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                 &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;OP&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
             &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
             &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;CE&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                 &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispSet&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;0&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                 &lt;span style=&quot;color: #a6e22e;&quot;&gt;calc&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;OP&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
             &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;break&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
        &lt;span style=&quot;color: #66d9ef;&quot;&gt;case&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;SEC_ARG_DOT&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;NUM&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispAppend&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;SEC_ARG_FLOAT&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;CE&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispSet&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;0&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #a6e22e;&quot;&gt;calc&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;OP&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;break&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
        &lt;span style=&quot;color: #66d9ef;&quot;&gt;case&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;EQ&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;EQ&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;operation&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;acc2&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;displayUpdate&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;EQ&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;NUM&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispSet&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;FIRST_ARG&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;OP&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;op&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;acc1&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;OP&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;DOT&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispSet&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;0.&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;FIRST_ARG_FLOAT&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key_class&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;CE&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispSet&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;0&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
                &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;clearer&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;();&lt;/span&gt;
            &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
            &lt;span style=&quot;color: #66d9ef;&quot;&gt;break&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
      &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
  &lt;span style=&quot;color: #f8f8f2;&quot;&gt;},&lt;/span&gt;
&lt;/pre&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-GB&quot;&gt;So, we are finally at the end of the &lt;i&gt;doStep &lt;/i&gt;function.&amp;nbsp;You can see
that the logic that controls transitioning between the states is pretty straightforward.
It just repeats itself again and again for every state.&lt;b&gt; This is the power of the FSM.&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-GB&quot;&gt;The next
part of our &lt;i&gt;calc&amp;nbsp;&lt;/i&gt;object is composed of methods about which we already talked about. The
only method, I haven’t mentioned is the &lt;i&gt;clearer
&lt;/i&gt;method which is used when the AC &lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;(all clear)
key is pressed. So, it simply resets the memory of the calculator.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background: #272822; border-width: 0.1em 0.1em 0.1em 0.8em; border: solid gray; overflow: auto; padding: 0.2em 0.6em; width: auto;&quot;&gt;
&lt;table style=&quot;text-align: justify;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42&lt;/pre&gt;
&lt;/td&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt;  &lt;span style=&quot;color: #75715e;&quot;&gt;//does all the arithmetical operations&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;operation&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;first&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;sec&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
      &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;op&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;Ă·&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
          &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;first&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;sec&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
      &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
      &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;op&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;-&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
          &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;first&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;-&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;sec&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
      &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
      &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;op&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;x&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
          &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;first&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;*&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;sec&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
      &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
      &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;op&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;+&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
          &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #f8f8f2;&quot;&gt;Number(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;first&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;)&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;+&lt;/span&gt; &lt;span style=&quot;color: #f8f8f2;&quot;&gt;Number(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;sec&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
      &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
      &lt;span style=&quot;color: #66d9ef;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;op&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;===&lt;/span&gt; &lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;%&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
          &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;first&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;%&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;sec&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
      &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
  &lt;span style=&quot;color: #f8f8f2;&quot;&gt;},&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//restarts the calculator to the default state&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;clearer&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(){&lt;/span&gt;
      &lt;span style=&quot;color: #a6e22e;&quot;&gt;$&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;#display&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;).&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;text&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ae81ff;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
      &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;state&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;states&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;START&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
      &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;op&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
      &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
      &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;acc1&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
      &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;acc2&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
  &lt;span style=&quot;color: #f8f8f2;&quot;&gt;},&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//appends a display var&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;dispAppend&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
      &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;+=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
      &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;displayUpdate&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
  &lt;span style=&quot;color: #f8f8f2;&quot;&gt;},&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//set a new value to the display var&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;dispSet&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
      &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt; &lt;span style=&quot;color: #f92672;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;;&lt;/span&gt;
      &lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;displayUpdate&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;disp&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
  &lt;span style=&quot;color: #f8f8f2;&quot;&gt;},&lt;/span&gt;
  &lt;span style=&quot;color: #75715e;&quot;&gt;//dipsplay display var&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;displayUpdate&lt;/span&gt;&lt;span style=&quot;color: #f92672;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispText&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;){&lt;/span&gt;
      &lt;span style=&quot;color: #a6e22e;&quot;&gt;$&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;#display&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;).&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;text&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;dispText&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
  &lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
&lt;span style=&quot;color: #f8f8f2;&quot;&gt;}&lt;/span&gt;
&lt;/pre&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;Finally, to
finish our project, the last thing we need to do is to set click listeners for
the calculator’s keys and then define what will happen when a particular key is pressed. Most of the time we are just calling t&lt;/span&gt;he&amp;nbsp;&lt;i&gt;doStep&amp;nbsp;&lt;/i&gt;function with different arguments.&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background: #272822; border-width: 0.1em 0.1em 0.1em 0.8em; border: solid gray; overflow: auto; padding: 0.2em 0.6em; width: auto;&quot;&gt;
&lt;table style=&quot;text-align: justify;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27&lt;/pre&gt;
&lt;/td&gt;&lt;td&gt;&lt;pre style=&quot;line-height: 125%; margin: 0;&quot;&gt;&lt;span style=&quot;color: #75715e;&quot;&gt;//when the number is clicked&lt;/span&gt;
&lt;span style=&quot;color: #a6e22e;&quot;&gt;$&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;.digit&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;).&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;on&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;click&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(){&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;calc&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;doStep&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;NUM&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;$&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;).&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;html&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;());&lt;/span&gt;
&lt;span style=&quot;color: #f8f8f2;&quot;&gt;})&lt;/span&gt;
&lt;span style=&quot;color: #75715e;&quot;&gt;//when the operator is clicked&lt;/span&gt;
&lt;span style=&quot;color: #a6e22e;&quot;&gt;$&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;.op_key&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;).&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;on&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;click&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(){&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;calc&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;doStep&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;OP&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;$&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;).&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;html&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;());&lt;/span&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;})&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;color: #75715e;&quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;line-height: 125%;&quot;&gt;//when the equal sign is clicked&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;$&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74; line-height: 125%;&quot;&gt;&quot;.equals&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;).&lt;/span&gt;&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;on&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74; line-height: 125%;&quot;&gt;&quot;click&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;line-height: 125%;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #66d9ef; line-height: 125%;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;(){&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;line-height: 125%;&quot;&gt;  &lt;/span&gt;&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;calc&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;doStep&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;EQ&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;line-height: 125%;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;$&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef; line-height: 125%;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;).&lt;/span&gt;&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;html&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;());&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;color: #f8f8f2;&quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;line-height: 125%;&quot;&gt;})&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;span style=&quot;color: #75715e;&quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;line-height: 125%;&quot;&gt;//when the dot is clicked&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;$&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74; line-height: 125%;&quot;&gt;&quot;.point&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;).&lt;/span&gt;&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;on&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74; line-height: 125%;&quot;&gt;&quot;click&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;line-height: 125%;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #66d9ef; line-height: 125%;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;(){&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;line-height: 125%;&quot;&gt;  &lt;/span&gt;&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;calc&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;doStep&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;DOT&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;line-height: 125%;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;$&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef; line-height: 125%;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;).&lt;/span&gt;&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;html&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;());&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;color: #f8f8f2;&quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;line-height: 125%;&quot;&gt;})&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;span style=&quot;color: #75715e;&quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;line-height: 125%;&quot;&gt;//when AC clicked - clear all variable values&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;$&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74; line-height: 125%;&quot;&gt;&quot;.allClear&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;).&lt;/span&gt;&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;on&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74; line-height: 125%;&quot;&gt;&quot;click&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;line-height: 125%;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #66d9ef; line-height: 125%;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;(){&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;line-height: 125%;&quot;&gt;  &lt;/span&gt;&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;calc&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e; line-height: 125%;&quot;&gt;clearer&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2; line-height: 125%;&quot;&gt;();&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;color: #f8f8f2;&quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;line-height: 125%;&quot;&gt;})&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;span style=&quot;color: #75715e;&quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;line-height: 125%;&quot;&gt;//when CE clicked - erase the last entered input&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;$&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;.clearEntry&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;).&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;on&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;click&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #66d9ef;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(){&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;calc&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;doStep&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;kclass&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;CE&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #a6e22e;&quot;&gt;$&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #66d9ef;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;).&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;html&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;());&lt;/span&gt;
&lt;span style=&quot;color: #f8f8f2;&quot;&gt;})&lt;/span&gt;

&lt;span style=&quot;color: #75715e;&quot;&gt;//default state of calculator&lt;/span&gt;
  &lt;span style=&quot;color: #a6e22e;&quot;&gt;$&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #e6db74;&quot;&gt;&quot;#display&quot;&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;).&lt;/span&gt;&lt;span style=&quot;color: #a6e22e;&quot;&gt;text&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ae81ff;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #f8f8f2;&quot;&gt;);&lt;/span&gt;
&lt;/pre&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;b&gt;&lt;u&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;span style=&quot;color: #b45f06; font-size: large;&quot;&gt;Code: The Conclusion&lt;/span&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;To sum up, t&lt;/span&gt;&lt;span lang=&quot;EN-GB&quot;&gt;he hardest
thing in the process of the implementation of the JavaScript calculator using the FSM was the creation of the graph which we used as a blueprint for
our code. In this graph, we needed to address every possible behaviour of the calculator and display it in the graph. Once we finished our graph, the implementation of the calculator was much easier since we basically applied same logic from our graph over and over.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;You can check my JS calculator
with its code on my &lt;a href=&quot;https://github.com/davidkopal/JavaScript-Calculator&quot; target=&quot;_blank&quot;&gt;github&lt;/a&gt; or my &lt;a href=&quot;http://codepen.io/johnnyblejz/pen/EKRWBx&quot; target=&quot;_blank&quot;&gt;codepen&lt;/a&gt; account.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;I hope that my posts helped you to build your own JS calculator. Maybe you build according to my buide or maybe you just got inspired by my
posts and you choose a different way of how to implement the calculator. And
that is allright, because &lt;b&gt;the final version
of your project is always a reflection of yourself.&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;If you like this post, or if you have any suggestions or critique, feel free to write a comment below. I would greatly appreciate it.&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>https://codinglawyer.blogspot.com/2016/05/javascript-calculator-guide-part-2-code.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRq5pp5g8X4znB9T9IZN1WqxOs16IFRuPzacMDbzuHK0PgUvS-BuRQL4GoXtEhpCCQEPFH8MiBzyzwHO46aqe1ofJ_Z4K_1z25Kb8qfLKjbPW5nf2nDRUtAT-Sm0pz8l59L5ll-tlQOYQ/s72-c/old_calculator.jpg" height="72" width="72"/><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4901005112374661630.post-7310071318816498432</guid><pubDate>Tue, 03 May 2016 21:10:00 +0000</pubDate><atom:updated>2016-08-12T22:49:41.183+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">css</category><category domain="http://www.blogger.com/atom/ns#">finite state machine</category><category domain="http://www.blogger.com/atom/ns#">freeCodeCamp</category><category domain="http://www.blogger.com/atom/ns#">html</category><category domain="http://www.blogger.com/atom/ns#">javascript</category><category domain="http://www.blogger.com/atom/ns#">jquery</category><title>JavaScript Calculator Guide PART 1: Think! (Free Code Camp Challenge)</title><description>&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHaNaMdB-B4FhwVxWXbBSlBkOEzbRBI4Fe4yjin7zrLloIjwHMh9Mh8YqrSRWNxoiDopgmirWwgf_z0TpH42CNHAbi6uAjFtLhH4iZ7uB7TlviUtZ5FBmouWX2Gb57h8FhgjNfaMvWaKQ/s1600/old_calculator.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;265&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHaNaMdB-B4FhwVxWXbBSlBkOEzbRBI4Fe4yjin7zrLloIjwHMh9Mh8YqrSRWNxoiDopgmirWwgf_z0TpH42CNHAbi6uAjFtLhH4iZ7uB7TlviUtZ5FBmouWX2Gb57h8FhgjNfaMvWaKQ/s400/old_calculator.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;text-align: justify;&quot;&gt;As I mentioned in the&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://codinglawyer.blogspot.cz/2016/04/my-first-post-why-i-started-to-code.html&quot; style=&quot;text-align: justify;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;previous post&lt;/span&gt;&lt;/a&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;text-align: justify;&quot;&gt;, I am, among other things, following Free Code Camp’s (FCC) curriculum. If you’re interested, you can check my solutions on my&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://www.freecodecamp.com/johnnyblejz&quot; style=&quot;text-align: justify;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;FFC account&lt;/span&gt;&lt;/a&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;as well as on&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://codepen.io/johnnyblejz/&quot; style=&quot;text-align: justify;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;Codepen&lt;/span&gt;&lt;/a&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;and&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://github.com/codinglawyer&quot; style=&quot;text-align: justify;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;Github&lt;/span&gt;&lt;/a&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;account.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;A couple of days ago I finished FFC’s JavaScript Calculator challenge. I spent a good amount of time on it because I did it twice. When I made the first version of my calculator, I haven’t thought about it too much before I implement it. Although it had all the basic functionality, you can also type basically any number or operator whenever you wanted (e.g. 1….5 +++ 8 =+-). However, if you take a real calculator, you will find out that it lets you use only certain numbers or operators at the certain situations. So I tried to address all these issues in the first version of my calculator but it was kind of overwhelming. Therefore, it seemed to me that it will be easier if I start all over again.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;At that time, I knew that I needed to think more about the implementation of my JS calculator before I started to code. I needed to think through every possible scenario since in each phase of the arithmetical operation, you want your calculator to react only when particular keys are pressed. So&amp;nbsp;&lt;b&gt;I just did what you should do every time before you start to code a new project.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;What really helped me back then was that a friend of mine gave me a tip to try built the calculator using a&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://en.wikipedia.org/wiki/Finite-state_machine&quot;&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;finite state machine&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;&amp;nbsp;(FSM)&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt;. FSM is&amp;nbsp;&lt;i&gt;“&lt;/i&gt;&lt;/span&gt;&lt;a href=&quot;http://whatis.techtarget.com/definition/finite-state-machine&quot;&gt;&lt;i&gt;&lt;span lang=&quot;EN-US&quot;&gt;a state machine is any device that stores the status of something at a given time and can operate on input to change the status and/or cause an action or output to take place for any given change.&lt;/span&gt;&lt;/i&gt;&lt;/a&gt;&lt;span class=&quot;MsoHyperlink&quot;&gt;&lt;i&gt;&lt;span lang=&quot;EN-US&quot;&gt;”&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;b&gt;&lt;i&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgEXqeXfXkvqkrIGUZbq04HB70BLJU1gdXEmMTiNcT3scujtapCxgUtGFJOdFHsmH3RhYdn3rDNWDRv9qtCEfXTF8pvSe7oKVd4xN8Gd1KcEjAcxkOjHRQcZiD_1M4t-hzR7J6-bqk71Y4/s1600/FSM.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;363&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgEXqeXfXkvqkrIGUZbq04HB70BLJU1gdXEmMTiNcT3scujtapCxgUtGFJOdFHsmH3RhYdn3rDNWDRv9qtCEfXTF8pvSe7oKVd4xN8Gd1KcEjAcxkOjHRQcZiD_1M4t-hzR7J6-bqk71Y4/s400/FSM.gif&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Finite State Machine&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;First, I was like&amp;nbsp;&lt;i&gt;“No way, that sounds too difficult and it seems to me that it must be some abstract programming concept which would be hard to learn.”&lt;/i&gt;&amp;nbsp;However, after a couple of days, I changed my mind and I started to implement the calculator using a FSM.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;This post is the first from two posts where I am going to describe my implementation of the Free Code Camp’s JavaScript Calculator using a FSM. I hope that these posts will help you to build a fully functional calculator in a very effective way you’re maybe not familiar with. Also these posts will help anyone who want to program a calculator in JavaScript but struggle with it or don’t know where to start.&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;This post will be a little bit theoretical because we need first to think about the functionality of the FSM and how it is going to help us to build up our calculator.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;Are you ready? Let’s code!&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;b&gt;&lt;u&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;span style=&quot;color: #b45f06; font-size: large;&quot;&gt;Step 1 – HTML and CSS&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;Before you can start to implement the calculator’s functionality, you need to design your calculator using HTML and CSS. Since we are making a calculator with the basic functionality, it should have at least these keys (of course you don&#39;t need the &quot;info&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&quot;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&amp;nbsp;key):&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGqyu-VyP7A7tmzN3JUMw4z8-0sZKVmFSnkVoZw4NYTg5es37kV3h37LTCwttF-BB7ucIxclbLkCEPj_p4sa5SodLltigu4WFKhBovvdqMMCnpEXLrXWZ_vZlLKzXOs_ia4k8o3RHsn1A/s1600/calc.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGqyu-VyP7A7tmzN3JUMw4z8-0sZKVmFSnkVoZw4NYTg5es37kV3h37LTCwttF-BB7ucIxclbLkCEPj_p4sa5SodLltigu4WFKhBovvdqMMCnpEXLrXWZ_vZlLKzXOs_ia4k8o3RHsn1A/s1600/calc.png&quot; /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;v:shapetype coordsize=&quot;21600,21600&quot; filled=&quot;f&quot; id=&quot;_x0000_t75&quot; o:preferrelative=&quot;t&quot; o:spt=&quot;75&quot; path=&quot;m@4@5l@4@11@9@11@9@5xe&quot; stroked=&quot;f&quot;&gt;&lt;v:stroke joinstyle=&quot;miter&quot;&gt;&lt;v:formulas&gt;&lt;v:f eqn=&quot;if lineDrawn pixelLineWidth 0&quot;&gt;&lt;v:f eqn=&quot;sum @0 1 0&quot;&gt;&lt;v:f eqn=&quot;sum 0 0 @1&quot;&gt;&lt;v:f eqn=&quot;prod @2 1 2&quot;&gt;&lt;v:f eqn=&quot;prod @3 21600 pixelWidth&quot;&gt;&lt;v:f eqn=&quot;prod @3 21600 pixelHeight&quot;&gt;&lt;v:f eqn=&quot;sum @0 0 1&quot;&gt;&lt;v:f eqn=&quot;prod @6 1 2&quot;&gt;&lt;v:f eqn=&quot;prod @7 21600 pixelWidth&quot;&gt;&lt;v:f eqn=&quot;sum @8 21600 0&quot;&gt;&lt;v:f eqn=&quot;prod @7 21600 pixelHeight&quot;&gt;&lt;v:f eqn=&quot;sum @10 21600 0&quot;&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:formulas&gt;&lt;v:path gradientshapeok=&quot;t&quot; o:connecttype=&quot;rect&quot; o:extrusionok=&quot;f&quot;&gt;&lt;o:lock aspectratio=&quot;t&quot; v:ext=&quot;edit&quot;&gt;&lt;/o:lock&gt;&lt;/v:path&gt;&lt;/v:stroke&gt;&lt;/v:shapetype&gt;&lt;v:shape alt=&quot;http://brettclapper.com/wp-content/uploads/2014/04/calculator-promo-440x270.png&quot; id=&quot;Obrázek_x0020_1&quot; o:spid=&quot;_x0000_i1026&quot; style=&quot;height: 202.8pt; mso-wrap-style: square; visibility: visible; width: 330pt;&quot; type=&quot;#_x0000_t75&quot;&gt;&lt;v:imagedata o:title=&quot;calculator-promo-440x270&quot; src=&quot;file:///C:/Users/David/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png&quot;&gt;&lt;/v:imagedata&gt;&lt;/v:shape&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;Designing your calculator is a very simple task, so I am not going to describe this part of the process.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;When you have a visual version of your calculator, you need to (if you haven’t done so already) think about its functionality. When implementing a FSM, it is very useful to draw a graph of your machine first, otherwise you can get easily lost during its implementation. But before we make this graph,&amp;nbsp;&lt;b&gt;we need to define the states of the calculator and the variables that we are going to use to store numbers and operators.&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;b&gt;&lt;u&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;span style=&quot;color: #b45f06; font-size: large;&quot;&gt;Step 2 – Define States&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;If you think about calculator’s functionality (enter a number, press operator, enter a second number, press equal sign), it is obvious that it will need at least 5 basic states. You can also figure out what keys must be pressed in order to get into a certain state.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;However, you need take into account the &quot;dot&quot; key as well. For example, if you press this key on the real calculator as a first character, your number will start with &quot;0.&quot;. So, in the end we need to define 3 more states, that is 8 states in total.&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;u&gt;&lt;span lang=&quot;EN-US&quot;&gt;States&lt;/span&gt;&lt;/u&gt;&lt;span lang=&quot;EN-US&quot;&gt;&amp;nbsp;(you can call these states whatever you want) - the calculato transitions into a particular state when:&lt;u&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/u&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;START – &lt;u&gt;default&lt;/u&gt; state of the calculator&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;FIRST_ARG – &lt;u&gt;a number key is pressed&lt;/u&gt;&amp;nbsp;(as a first number)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;FIRST_ARG_FLOAT -&amp;nbsp;&lt;/span&gt;&lt;u style=&quot;font-family: verdana, sans-serif;&quot;&gt;a dot is pressed&lt;/u&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&amp;nbsp;as a part of the first argument (number)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;OP – any&amp;nbsp;&lt;u&gt;operator is pressed&lt;/u&gt;&amp;nbsp;(except equal sign)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;SECOND_ARG - &lt;u&gt;a number key is pressed&lt;/u&gt;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&amp;nbsp;(as a second number)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;SEC_ARG_FLOAT -&amp;nbsp;when a second number has a &lt;u&gt;dot not at its beginning&lt;/u&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;SEC_ARG_DOT -&amp;nbsp;when a second number &lt;u&gt;begins with dot&lt;/u&gt; (0.)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;EQUALS – when an&amp;nbsp;&lt;u&gt;equal sign is pressed&lt;/u&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;It is convenient and it will make your code more readable, if you store these states as the properties in an object. Each property will represent a state of your calculator.&amp;nbsp;&lt;b&gt;The idea is that when you refresh a page, your calculator will be in a default state and by clicking on different keys, the state is going to change.&lt;/b&gt;&amp;nbsp;This process will go on and on, until you press a clear button on your calculator or when you refresh the page itself.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;b&gt;&lt;u&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;span style=&quot;color: #b45f06; font-size: large;&quot;&gt;Step 3 – Define Variables&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;Now, you will need to define the variables. These variables are going to change a lot since they will store everything you type into your calculator. Try to keep the number of the variables as low as possible, otherwise your code might become unnecessary complicated.&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;Five variables should be enough:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;var state - monitors current state of the calculator&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;var disp – stores the number and monitors what is currently displayed on the calculator’s display&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;var acc1 - stores the first number for further operations&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;var acc2 - stores the second number for further operations&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;var op - monitors current arithmetical operator&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;In our code, these variable will be also stored in the object.&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin: 0cm 0cm 0.0001pt 36pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #e69138; font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: large;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;b&gt;&lt;u&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;span style=&quot;color: #b45f06; font-size: large;&quot;&gt;Step 4 - Graph&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;At this point, you have everything you need (the basic states of the calculator, which keys needs to be pressed in order to transition between these states, variables which are going to store user’s input). So, it is the right time for you to draw a graph which will put this information into the context and help you to visualize the functionality of your calculator.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;When drawing this graph, you need to keep in mind that you can press only certain keys during the particular state of the calculator. For example, a real calculator won’t let you to type five dots in a row or twenty operators in a row. From every state, you can only go to the limited number of other states.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;There are many ways how to draw a FSM graph and Google will help you with that.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;According to the previous instructions, your basic graph should look like this:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: justify;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZ_hnLtF4J-G-g2UdbdovK05Y28Vn-pJz603-cP1WPXS5IIvj-gnV6Hr4QwsG0NrSYDJ-xjtLXMeRV1hA_BSJX-O0JL1bErl93MniP3YCpwlWig9298YZeWIuftu8hcBh08DSuLho2UQE/s1600/finite+automat+calc.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;246&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZ_hnLtF4J-G-g2UdbdovK05Y28Vn-pJz603-cP1WPXS5IIvj-gnV6Hr4QwsG0NrSYDJ-xjtLXMeRV1hA_BSJX-O0JL1bErl93MniP3YCpwlWig9298YZeWIuftu8hcBh08DSuLho2UQE/s400/finite+automat+calc.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;I will describe this graph at the beginning of my &lt;a href=&quot;https://codinglawyer.blogspot.cz/2016/05/javascript-calculator-guide-part-2-code.html&quot; target=&quot;_blank&quot;&gt;second post&lt;/a&gt; :)&lt;/span&gt;&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;Stay Tuned!&lt;/span&gt;&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;If you like this post, or if you have any suggestions or critique, feel free to write a comment below. I would greatly appreciate it.&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
</description><link>https://codinglawyer.blogspot.com/2016/05/javascript-calculator-guide-part-1-lets_44.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHaNaMdB-B4FhwVxWXbBSlBkOEzbRBI4Fe4yjin7zrLloIjwHMh9Mh8YqrSRWNxoiDopgmirWwgf_z0TpH42CNHAbi6uAjFtLhH4iZ7uB7TlviUtZ5FBmouWX2Gb57h8FhgjNfaMvWaKQ/s72-c/old_calculator.jpg" height="72" width="72"/><thr:total>6</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4901005112374661630.post-3741494762702962639</guid><pubDate>Mon, 18 Apr 2016 16:39:00 +0000</pubDate><atom:updated>2016-08-12T22:41:41.553+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">css</category><category domain="http://www.blogger.com/atom/ns#">freeCodeCamp</category><category domain="http://www.blogger.com/atom/ns#">html</category><category domain="http://www.blogger.com/atom/ns#">javascript</category><category domain="http://www.blogger.com/atom/ns#">Jon Duckett</category><category domain="http://www.blogger.com/atom/ns#">Kyle Simpson</category><category domain="http://www.blogger.com/atom/ns#">learn to code</category><category domain="http://www.blogger.com/atom/ns#">You don&#39;t know JavaScript</category><title>Best Resources to Learn JavaScript</title><description>&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCSVFpiEnF7v6EfsJSATLE3ZAGawVSPbNXalr_RqCHpJSq003PAtdDAf5WByGuFG9F1mCK4cMTZ5TcwZpqVcAQ3dFEu33uU7__e5ctYdv_AC3lkdeMUiaF6ZnCQwN5qOW7vfDLLeb7zOI/s1600/keep-calm-and-learn-javascript.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;353&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCSVFpiEnF7v6EfsJSATLE3ZAGawVSPbNXalr_RqCHpJSq003PAtdDAf5WByGuFG9F1mCK4cMTZ5TcwZpqVcAQ3dFEu33uU7__e5ctYdv_AC3lkdeMUiaF6ZnCQwN5qOW7vfDLLeb7zOI/s400/keep-calm-and-learn-javascript.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;… was th&lt;/span&gt;&lt;span style=&quot;font-size: small;&quot;&gt;e phrase I googled many times when I was
starting to learn how to code. Once I typed these words and hit enter, I got hundreds of results, each recommending different learning path to pursue. This
was really intimidating for me because I had &lt;b&gt;no idea as an absolute beginner which
res&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;ources to choose&lt;/b&gt;.&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;…there were &lt;/span&gt;&lt;span lang=&quot;EN-GB&quot;&gt;(and still are) so many choices and opinions on how to effectively learn JavaScript&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;.&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;Should I believe all of those&amp;nbsp;who are writing articles about
this topic on various sites and blogs?&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;Who are they anyway? ... experts,
beginners or do they even know how to code? Should I believe unknown individuals who express
their views in the forums?&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;Should I believe all those opinions claiming &#39;this is the right way to learn JavaScript&#39; which can be
found on a variety of sites offering &lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;paid online courses? Do
these sites really want to help me to learn or they just want to sell their
product?&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;b&gt;What should I do?&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjB_OpUb3lwSd4p-re1or-c4OoOtxOOMl5y4Of4cKs6xTVrr44T4HMnmA-gaKxxrGYznO6QX9m-5Dg-BlbLGmRCrXy2RXy5ppftHKVsKP70FSDYHXY120fukAjaPyuVBQueowLSe22KUYw/s1600/chaos.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;265&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjB_OpUb3lwSd4p-re1or-c4OoOtxOOMl5y4Of4cKs6xTVrr44T4HMnmA-gaKxxrGYznO6QX9m-5Dg-BlbLGmRCrXy2RXy5ppftHKVsKP70FSDYHXY120fukAjaPyuVBQueowLSe22KUYw/s400/chaos.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;I guess that obvious reply to all my concerns is: &lt;i&gt;&#39;Just google it, dude.&#39;&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;It&#39;s true that you can google all of these issues. But it will make your search for the right learning path only little bit easier. Again, you&#39;ll find tons of opinion and reviews. All of them written by the people with different backgrounds. So, it will be challenging to choose which opinion are the best for you.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;In the end, you&#39;ll be back in the situation described at the beginning of this post -&amp;nbsp;&lt;b&gt;you don&#39;t know &lt;/b&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;which
res&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;ources to choose&lt;/b&gt;&lt;/span&gt;.&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt; &lt;/span&gt;&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;A couple of months ago, I was in this situation too. There were so many options and I had no idea where to begin...&lt;/span&gt;&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;If you are starting to learn programming, I bet you are dealing with similar questions as I did back then.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;I
am writing this post to help you find the right answers based on my own
experience. Because my aim is not to overwhelm you with resources, as the whole
internet does (!), I will only mention resources that I studied from and only
those I consider as the best ones for beginners. Moreover, I will organize them
in a order I deem they should be studied. &lt;b&gt;If I had studied these resources in that order from the
beginning, I am sure that my learning process would have been faster and more
effective.&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;Probably you are now asking yourself a
question: &lt;i&gt;&#39;Why should I believe this
guy?&lt;/i&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;i&gt;&#39;&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjbbtQGeqXIit1VohMFRsY8NAX836sIwH-atyh_Rsgf0arn8UieSpXHv9APVzP7D_Ame00j63rdP8Pmnl9rEAvmow8Dy9gzSB-ZroRRDDLsze9PmCUwFk0KcpWhmMaX8Y_gAHWGdDYgY4/s1600/trust.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;266&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjbbtQGeqXIit1VohMFRsY8NAX836sIwH-atyh_Rsgf0arn8UieSpXHv9APVzP7D_Ame00j63rdP8Pmnl9rEAvmow8Dy9gzSB-ZroRRDDLsze9PmCUwFk0KcpWhmMaX8Y_gAHWGdDYgY4/s400/trust.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;My answer is: &lt;i&gt;&#39;Well, you don’t have to.&lt;/i&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;i&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;i&gt;&#39;&lt;/i&gt;&lt;/span&gt;&lt;/i&gt; I just want to share with you one
possible way of learning JavaScript which stems from my personal experience. I
want to share with you resources that helped me (and are still helping) significantly
on my way to become a web developer. I hope they will help you as well.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: center;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;b&gt;Just take it or leave it!&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;A I mentioned, choosing the right resources to learn from in
the field of web development might be challenging, especially for an absolute
beginner. I presume that you &lt;b&gt;don’t want to invest significant sum
of money&lt;/b&gt; (e.g. bootcamps), so I am going to talk only about books and online
courses which are affordable.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;The problem with books and online courses about web
programming for beginners in general is that they are not written or made by
beginners themselves (I know that this last sentence sounds weird, but just keep reading!). This simply means that &lt;b&gt;authors of these books and courses have
different perspective than someone who is only a beginner&lt;/b&gt;. In other words, they
will almost always presume that you already have some knowledge about
programming.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;The problem is that every one of us knows different stuff than
the others. I have experienced this myself a couple of times and it was kind of
frustrating because I was not sure if the programming was so difficult or I was
just dumb.&amp;nbsp; In fact I was only lacking
some basic knowledge that the author presumed I had. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;At the beginning, you
just don’t know what you don’t know.&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7VeNkrXXpOKIFUXGVDd9G0HQFIb6GLAke2nY6gwZQUsqQ1aoGbT-Jq9-3bIdIqSucVCXIa-uNPjcoH8ZwKvNt9NZRAslrGuciAYlni5lF7VEZlhMFruPsUCG4mFAYnoTljD6XegPzEZ0/s1600/negat_emo.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;265&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7VeNkrXXpOKIFUXGVDd9G0HQFIb6GLAke2nY6gwZQUsqQ1aoGbT-Jq9-3bIdIqSucVCXIa-uNPjcoH8ZwKvNt9NZRAslrGuciAYlni5lF7VEZlhMFruPsUCG4mFAYnoTljD6XegPzEZ0/s400/negat_emo.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;Because I don’t want you to have similar experience,
I am sharing with you a list of JavaScript resources. They are organized in the order, I
consider understandable if you are starting as an absolute beginner in web development.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;ol start=&quot;1&quot; style=&quot;margin-top: 0cm;&quot; type=&quot;1&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l4 level1 lfo1; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;a href=&quot;https://www.udemy.com/the-web-developer-bootcamp/&quot; target=&quot;_blank&quot;&gt;The Web Development Bootcamp&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt; (online course)&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;div style=&quot;margin: 0cm 0cm 0.0001pt;&quot;&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgN6Knu8N_vCzqP7k2hIWGLlFvDi1PniCelDBu7nxu66jL3xzN7DQWoKr55WNvNC_U-tErSWHEEIo1kC91O6PPe4cUrJlvfp2-eRxkcB2PulSUa69JcJ9SJVzlDY1suttSMjHWBWlkH6o/s1600/colt_course.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;180&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgN6Knu8N_vCzqP7k2hIWGLlFvDi1PniCelDBu7nxu66jL3xzN7DQWoKr55WNvNC_U-tErSWHEEIo1kC91O6PPe4cUrJlvfp2-eRxkcB2PulSUa69JcJ9SJVzlDY1suttSMjHWBWlkH6o/s320/colt_course.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Web Developer Bootcamp&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;
&lt;/span&gt;&lt;span style=&quot;font-size: small;&quot;&gt; &lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;this course is for anyone who wants to learn about web development, regardless of previous experience &lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;this course covers &lt;/span&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;not only &lt;/span&gt;front-end
technologies (HTML, CSS and JavaScript) in detail, its second part also covers back-end &lt;/span&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;stuff&lt;/span&gt;(Node.js, Express.js, MongoDB, deploying) as well&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;what I love about this course is that the
instructor explains all the important concepts in a very accessible way and
offers exercises with solutions as well&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 54.0pt; mso-list: l3 level1 lfo2; text-align: justify; text-indent: -18.0pt;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;ol start=&quot;2&quot; style=&quot;margin-top: 0cm;&quot; type=&quot;1&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l4 level1 lfo1; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;a href=&quot;http://www.amazon.com/HTML-CSS-Design-Build-Websites/dp/1118008189/ref=sr_1_3?ie=UTF8&amp;amp;qid=1461003710&amp;amp;sr=8-3&amp;amp;keywords=jon+ducket&quot; target=&quot;_blank&quot;&gt;Jon Duckett – HTML &amp;amp; CSS&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt; (book)&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhblopqyNwC_Rf1tj4NGeUgUf3zlbmetqVoCju3aNMkdd99F7s5HDopengvYFoPo6nVuI33sjXQKtUeiJtWxa1dDDAFyzrdvvoLhQS_HCZH6y5fm4_MSVxWNLe_zlJthsfTYr2dNRxZA4E/s1600/ducket_html%252Ccss.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;272&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhblopqyNwC_Rf1tj4NGeUgUf3zlbmetqVoCju3aNMkdd99F7s5HDopengvYFoPo6nVuI33sjXQKtUeiJtWxa1dDDAFyzrdvvoLhQS_HCZH6y5fm4_MSVxWNLe_zlJthsfTYr2dNRxZA4E/s320/ducket_html%252Ccss.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;
&lt;/span&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;if you feel that you need more HTML and
CSS knowledge, I recommend this book as a companion to the mentioned course (however I
don’t consider it necessary)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;the layout of the book is visually appealing and the language is easy to understand&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;this book is really targeted at beginners without a technical background, and it does an exceptional job in serving this audience&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 53.4pt; mso-list: l1 level1 lfo3; text-align: justify; text-indent: -18.0pt;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;ol start=&quot;3&quot; style=&quot;margin-top: 0cm;&quot; type=&quot;1&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l4 level1 lfo1; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;a href=&quot;http://www.amazon.com/JavaScript-JQuery-Interactive-Front-End-Development/dp/1118531647/ref=sr_1_2?ie=UTF8&amp;amp;qid=1461003710&amp;amp;sr=8-2&amp;amp;keywords=jon+ducket&quot; target=&quot;_blank&quot;&gt;Jon Duckett – JavaScript &amp;amp; jQuery&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt; (book)&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;ul&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjo00UMkCTZZvls7t1qLWYxuHk-yEUHMkBuwxtp2Y3aB1GyT0W9dPzkrOzTfxpLK0lZN6KkUHKDyKlXrxJX5p5jtubCXKImbgZXw9p1ZIhV3jSUKbnkgmtCGOtkBMNN7THrjKpDsByN6mM/s1600/duckett-js.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjo00UMkCTZZvls7t1qLWYxuHk-yEUHMkBuwxtp2Y3aB1GyT0W9dPzkrOzTfxpLK0lZN6KkUHKDyKlXrxJX5p5jtubCXKImbgZXw9p1ZIhV3jSUKbnkgmtCGOtkBMNN7THrjKpDsByN6mM/s400/duckett-js.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;this book is one of the best resources for understanding the basics of JavaScript language and serves well as a companion to the course&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;it is great for&amp;nbsp; the visual learners, as just about every remotely difficult concept is illustrated in detail with helpful notes &lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;if you consider books with lot of text boring, you will love this book even
more&lt;/span&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;all of the code examples found in the book are available online for you to follow along, and every line of code is explained in clear detail&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 53.4pt; mso-list: l1 level1 lfo3; text-align: justify; text-indent: -18.0pt;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;ol start=&quot;4&quot; style=&quot;margin-top: 0cm;&quot; type=&quot;1&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l4 level1 lfo1; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;a href=&quot;http://www.freecodecamp.com/&quot; target=&quot;_blank&quot;&gt;Free Code Camp&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt; (online course)&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA2PD37nQL4d7D69iPUsX7fV95qlY9D_fJqdnHu0H8twiWjE_Ollm9M9qDk7fQvqxQJzDog96jGxHE5q6gEIgyg1MjUF0C8kWE-Su4_nNHqIp7yDmjjd3AoEwRYbPmVekuKtJsR2pYdfw/s1600/FCC.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;225&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA2PD37nQL4d7D69iPUsX7fV95qlY9D_fJqdnHu0H8twiWjE_Ollm9M9qDk7fQvqxQJzDog96jGxHE5q6gEIgyg1MjUF0C8kWE-Su4_nNHqIp7yDmjjd3AoEwRYbPmVekuKtJsR2pYdfw/s400/FCC.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;div style=&quot;margin: 0cm 0cm 0.0001pt;&quot;&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;this course offers tons of exercises - it
starts with HTML, CSS and JavaScript exercises separately and then it will take you
through the range of projects where you combine all these languages together
and create some cool and useful web apps&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;you will also deep dive into algorithms along the way&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;it offers front-end exercises and back-end as well &lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;I encourage you to combine it with the
&lt;a href=&quot;https://codinglawyer.blogspot.cz/2016/04/my-first-post-why-i-started-to-code.html&quot; target=&quot;_blank&quot;&gt;already mentioned resources &lt;/a&gt;– remember &lt;b&gt;the best way how to learn to code always
means BUILDING PROJECTS&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 53.4pt; mso-list: l1 level1 lfo3; text-align: justify; text-indent: -18.0pt;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;ol start=&quot;5&quot; style=&quot;margin-top: 0cm;&quot; type=&quot;1&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l4 level1 lfo1; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;a href=&quot;https://www.udemy.com/understand-javascript/&quot; target=&quot;_blank&quot;&gt;Anthony Alicea - JavaScript: Understanding the Weird Parts&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt; (online course)&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;ol start=&quot;5&quot; style=&quot;margin-top: 0cm;&quot; type=&quot;1&quot;&gt;
&lt;/ol&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;div style=&quot;margin: 0cm 0cm 0.0001pt;&quot;&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9n8I1YDB8FXyk6SH4EWp6XZrInkP6hsr7blAToTGlRuo4nSeCwjAYrf_tdDF2D0ObhvlUwLZond1d4suqP5HjZS0MIS-c-8m6DCtWbLKzFpZiu1SRjTzRTwyWP2GRV9rmd4l3MUQW93U/s1600/JavaScript-Understanding-the-Weird-Parts.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;221&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9n8I1YDB8FXyk6SH4EWp6XZrInkP6hsr7blAToTGlRuo4nSeCwjAYrf_tdDF2D0ObhvlUwLZond1d4suqP5HjZS0MIS-c-8m6DCtWbLKzFpZiu1SRjTzRTwyWP2GRV9rmd4l3MUQW93U/s400/JavaScript-Understanding-the-Weird-Parts.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;this course will take you further into the
JavaScript realm&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;it explains what happens under the hood of the JS in a very
beginner-friendly way&lt;/span&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;this course will cover advanced concepts such as objects and object literals, function expressions, prototypical inheritance, functional programming, scope chains, function constructors (plus new ES6 features), immediately invoked function expressions (IIFEs), call, apply, bind, and more&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;what you&#39;ll learn in this course will also improve your abilities in Javascript-based technologies such as Angular.js or React.js&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 54.0pt; mso-list: l2 level1 lfo4; text-align: justify; text-indent: -18.0pt;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;ol start=&quot;6&quot; style=&quot;margin-top: 0cm;&quot; type=&quot;1&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l4 level1 lfo1; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;a href=&quot;https://github.com/getify/You-Dont-Know-JS&quot; target=&quot;_blank&quot;&gt;Kyle Simpson – You Don’t know JavaScript&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt; (book series)&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgJKUKpzTgUw_o2QjcRscHUwTVYkSYVJjISdrqgx31DS1srmIRCdWr3SfRQxYMuOcy77mlyZciOOabI9cFaCy6pJINcP45A9BMKJvd1YDueKEdZOcFe5qrn7eq5WXnrXDaEZZFNIwHQiU/s1600/ydkjs.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;266&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgJKUKpzTgUw_o2QjcRscHUwTVYkSYVJjISdrqgx31DS1srmIRCdWr3SfRQxYMuOcy77mlyZciOOabI9cFaCy6pJINcP45A9BMKJvd1YDueKEdZOcFe5qrn7eq5WXnrXDaEZZFNIwHQiU/s400/ydkjs.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;ul&gt;&lt;ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;these books serve as a great companion to
the Weird Parts course since they also offer explanation of more advanced JS
concepts&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;however, they cover&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;advanced JS
concepts in more depth&lt;/span&gt; and are thus more
comprehensive than the Weird Parts course &lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;plus they’re free!&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://opensource.com/life/14/11/talk-kyle-simpson-javascript-expert&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;6 books in the series:&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;&lt;span style=&quot;font-size: small;&quot;&gt;Up &lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&amp;amp; &lt;/span&gt;Going:&amp;nbsp;&lt;/b&gt; &lt;i&gt;By learning the basic building blocks of programming, as well as JavaScript’s core mechanisms, you’ll be prepared to dive into the other, more in-depth books in the series.&lt;/i&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;Scope &amp;amp; Closures: &lt;/b&gt;&lt;i&gt;Covers closure primarily, which is one of the most important foundational topics of JavaScript.&lt;/i&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;this &amp;amp; Object Prototypes:&lt;/b&gt; &lt;i&gt;Covers the mystery of how the this keyword works, and then tackles the misconception that JS has classes. Instead, JavaScript has prototype delegation, and we should embrace that rather than trying to fake class orientation.&lt;/i&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;Types &amp;amp; Grammar:&lt;/b&gt; &lt;i&gt;Goes deep into coercion mechanism. I encourage you to dig into it and learn it, because coercion can help improve your code if you learn how to use it properly.&lt;/i&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;Async &amp;amp; Performance:&lt;/b&gt; &lt;i&gt;Explains why callbacks for async programming are insufficient, then goes deep into promises and generators as much better async patterns. Also covers optimizing and benchmarking JS performance.&lt;/i&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;ES6 &amp;amp; Beyond&lt;/b&gt;: &lt;i&gt;Covering all the changes to JS coming in ES6, as well as forward looking to beyond-ES6 evolution on the horizon.&lt;/i&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 54.0pt; mso-list: l2 level1 lfo4; text-align: justify; text-indent: -18.0pt;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: center;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;b&gt;The key to learn anything in programming and beyond is always to combine different
resources&lt;/b&gt;.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbt1MCWcIFdHezYDrwXkcEr2xGlssYJZXOLd0Gp8gcNJme282MRH8J8T85ff3LS749iyVdlGQq-swsUMd63iXRNn2k6AteWn37rHnVMjwBwgKZBuBR6Ke8_KTyBh8Pekpg1LCMTdg2wQI/s1600/connection.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbt1MCWcIFdHezYDrwXkcEr2xGlssYJZXOLd0Gp8gcNJme282MRH8J8T85ff3LS749iyVdlGQq-swsUMd63iXRNn2k6AteWn37rHnVMjwBwgKZBuBR6Ke8_KTyBh8Pekpg1LCMTdg2wQI/s400/connection.jpg&quot; width=&quot;266&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;Don’t believe those who claim that a single book or a single course can
teach you everything you need to know about web development! This would be a huge &lt;b&gt;mistake&lt;/b&gt; because you will be tempted to follow only &lt;b&gt;one single
perspective which might not be the right one for you &lt;/b&gt;(or not the right one for
anyone).&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;If you like this post, or if you have any suggestions or critique, feel free to write a comment below. I would greatly appreciate it.&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
</description><link>https://codinglawyer.blogspot.com/2016/04/best-resources-to-learn-javascript.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCSVFpiEnF7v6EfsJSATLE3ZAGawVSPbNXalr_RqCHpJSq003PAtdDAf5WByGuFG9F1mCK4cMTZ5TcwZpqVcAQ3dFEu33uU7__e5ctYdv_AC3lkdeMUiaF6ZnCQwN5qOW7vfDLLeb7zOI/s72-c/keep-calm-and-learn-javascript.jpg" height="72" width="72"/><thr:total>7</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4901005112374661630.post-9015589903221448301</guid><pubDate>Tue, 12 Apr 2016 16:38:00 +0000</pubDate><atom:updated>2016-08-12T22:32:40.279+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">learn to code</category><category domain="http://www.blogger.com/atom/ns#">personal development</category><title>My First Post: Why I Started to Code</title><description>&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPCc101HgLhnc2N2BkrNqFlA_9Re2CWT4abgG5oCaUqPY40d0Dvws4bpiwQALkmz18LNyaDh2EIP42tJOi8X5k3_reKqTBmzwAUroyZUTcVCEfaYwKbS44NTezTrMBpDXK96vv5g51OBo/s1600/book_reading%252Cjpg.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;266&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPCc101HgLhnc2N2BkrNqFlA_9Re2CWT4abgG5oCaUqPY40d0Dvws4bpiwQALkmz18LNyaDh2EIP42tJOi8X5k3_reKqTBmzwAUroyZUTcVCEfaYwKbS44NTezTrMBpDXK96vv5g51OBo/s400/book_reading%252Cjpg.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;In this post, I would like to briefly introduce
myself and tell you &lt;b&gt;why I decided to become a programmer&lt;/b&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;My name is David and I love to learn new things and meet new people. A couple of years ago, I graduated from law school and &lt;b&gt;start working as a lawyer&lt;/b&gt;. At
the law school I did a lot of extracurricular activities since I was very
interested in the law. I always thought (surprisingly) that I am going to be a successful
lawyer one day. However, after a few years of working in the legal field, I have begun to have doubts
about the direction of my career.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;b&gt;I felt that the legal job was not satisfying to me anymore.&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;So I decided to look into other fields which I
found interesting. I checked some online course on sites suc&lt;/span&gt;h as &lt;a href=&quot;http://www.coursera.org/&quot; target=&quot;_blank&quot;&gt;Coursera&lt;/a&gt;, &lt;a href=&quot;https://www.edx.org/&quot; target=&quot;_blank&quot;&gt;edX&lt;/a&gt; and &lt;a href=&quot;https://www.udemy.com/&quot; target=&quot;_blank&quot;&gt;Udemy&lt;/a&gt;. Because I lov&lt;span lang=&quot;EN-US&quot;&gt;e cooking, I enrolled in the &lt;a href=&quot;https://www.edx.org/course/science-cooking-haute-cuisine-soft-harvardx-spu27x-0&quot; target=&quot;_blank&quot;&gt;Science &amp;amp; Cooking&lt;/a&gt; first. This course was great and I
definitely recommend it for anyone who wants to learn science that lies behind the creation of delicious meals. However, this course was just a hobby for me.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;When I was searching for other online courses, I
came across many programming-related courses. First, I was like&lt;i&gt; ”&lt;b&gt;How can I possibly code?&lt;/b&gt; I said goodbye to
sciences after finishing high school and I was happy for that.”&lt;/i&gt; Nevertheless,
I bought one of the c&lt;/span&gt;ourses – &lt;a href=&quot;https://www.udemy.com/the-web-developer-bootcamp/&quot; target=&quot;_blank&quot;&gt;The Web Developer Bootcamp&lt;/a&gt; - which was kind of a new at that time and was aimed (as the title suggests) on front-end as well as on back-end &lt;span lang=&quot;EN-US&quot;&gt;web development.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;This was the moment, when my journey to become
a web developer began.&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDBZuylHEiWCtyTGhzKN-H1Sc6MK2jDPGJaLdLQhqNPNxQygmT80AGY-kxS0wHahry32ZdSdWSnJbpQ_bGlvhh1j2CR1NZ_9pe44xJkSI9t2MiXkWwTcZUSn9qr87VIPvpT9vQgqBSY9Y/s1600/piano.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;266&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDBZuylHEiWCtyTGhzKN-H1Sc6MK2jDPGJaLdLQhqNPNxQygmT80AGY-kxS0wHahry32ZdSdWSnJbpQ_bGlvhh1j2CR1NZ_9pe44xJkSI9t2MiXkWwTcZUSn9qr87VIPvpT9vQgqBSY9Y/s400/piano.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;As I went through this course and experienced coding in HTML,
CSS and in JavaScript, it was a brand new feeling for me. &lt;i&gt;&lt;b&gt;“Wow, I can now create something from nothing which can be even useful.&lt;/b&gt;
Plus I don’t have to memorize tons of information to be able to do that.”&lt;/i&gt; It
was primarily this creative process which is involved in programming that
excited me the most. The added value of this particular course was also a &lt;a href=&quot;https://gitter.im/&quot; target=&quot;_blank&quot;&gt;Gitter room&lt;/a&gt;
where I could chat with other students and get more coding tips.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;When I
finished the JavaScript part of the course, I was thinking that I am learning
some really cool new stuff but I was thirsty for more practical exercises. And
then I have discovered the &lt;a href=&quot;https://www.freecodecamp.com/&quot; target=&quot;_blank&quot;&gt;Free Code Camp&lt;/a&gt;, the site which purpose is to teach you how to code by doing
tons of exercises. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;It seemed to me that The Web Developer Bootcamp and Free Code Camp were &lt;b&gt;two puzzle pieces fitting
together &lt;/b&gt;– theoretical background + tons of exercises.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;b&gt;These two courses became
basis for my journey to become a web developer.&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&amp;nbsp;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: left;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCP_lwwdqI6KWytb2X4i2t3M0_S9STJuWAcDO87tHItQ2AuGloycoh50Vsex4mnGNn1OYE6_iOEJVoFhyphenhypheneuRflbhgdoG6-Zjvv2vxE-cPg3t38zKNXgwY_yFswDAXxw6TlvRcZoluOMDg/s1600/colt_course.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;177&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCP_lwwdqI6KWytb2X4i2t3M0_S9STJuWAcDO87tHItQ2AuGloycoh50Vsex4mnGNn1OYE6_iOEJVoFhyphenhypheneuRflbhgdoG6-Zjvv2vxE-cPg3t38zKNXgwY_yFswDAXxw6TlvRcZoluOMDg/s320/colt_course.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Web Developer Bootcamp&lt;/td&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: right;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigJ1yWDDKnIsUj6vrgWQqB0adY1tS8qBEYGwjNS24BxiuIEUucyzQtypH-4RQVf4yUj_ePqBxdJj9bHYSrN-eg14czk01D22aRc-jUjLy5_Zhyphenhyphen7zBMsABYP4murPIIuojd6sXzsEUAI3A/s1600/FCC.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;177&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigJ1yWDDKnIsUj6vrgWQqB0adY1tS8qBEYGwjNS24BxiuIEUucyzQtypH-4RQVf4yUj_ePqBxdJj9bHYSrN-eg14czk01D22aRc-jUjLy5_Zhyphenhyphen7zBMsABYP4murPIIuojd6sXzsEUAI3A/s320/FCC.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Free Code Camp&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;At the time of this writing, it has been already a couple of months since I
have written my first HTML tag. As every self-taught programmer (at least I hope
it is not just me&lt;span style=&quot;font-family: &amp;quot;wingdings&amp;quot;;&quot;&gt;!&lt;/span&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;), I know how challenging learning to code can
be. This is also one of the two reasons why I started this blog. Although, I am not an absolute beginner, I hope
I can convey to all of you, through my future blog posts, an &lt;b&gt;original perspective on how to successfully learn to code.&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;Via this blog I also want to share challenges I am
going through every day from the beginning of my coding journey as well as projects
I am working on and other programming-&lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;related&lt;/span&gt; topics.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: center;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;To sum up, two reasons that lie behind the
creation of this blog are:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;ul style=&quot;text-align: center;&quot;&gt;
&lt;/ul&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: small;&quot;&gt;sharing my experience, projects and ideas&lt;/span&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;font-size: small;&quot;&gt;document my coding journey&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;ol&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;/ul&gt;
</description><link>https://codinglawyer.blogspot.com/2016/04/my-first-post-why-i-started-to-code.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPCc101HgLhnc2N2BkrNqFlA_9Re2CWT4abgG5oCaUqPY40d0Dvws4bpiwQALkmz18LNyaDh2EIP42tJOi8X5k3_reKqTBmzwAUroyZUTcVCEfaYwKbS44NTezTrMBpDXK96vv5g51OBo/s72-c/book_reading%252Cjpg.jpg" height="72" width="72"/><thr:total>0</thr:total></item></channel></rss>