<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Arthur Del Esposte</title>
    <description>The latest articles on DEV Community by Arthur Del Esposte (@arthurmde).</description>
    <link>https://dev.to/arthurmde</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F273656%2Fb3eb8f5d-f8b7-43dc-9252-000c0bd5e78d.jpeg</url>
      <title>DEV Community: Arthur Del Esposte</title>
      <link>https://dev.to/arthurmde</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/arthurmde"/>
    <language>en</language>
    <item>
      <title>What strategies an early Startup should use to hire good software engineers?</title>
      <dc:creator>Arthur Del Esposte</dc:creator>
      <pubDate>Mon, 16 Mar 2020 14:00:34 +0000</pubDate>
      <link>https://dev.to/arthurmde/what-strategies-an-early-startup-should-use-to-hire-good-software-engineers-3o60</link>
      <guid>https://dev.to/arthurmde/what-strategies-an-early-startup-should-use-to-hire-good-software-engineers-3o60</guid>
      <description>&lt;p&gt;Hiring experienced software engineers is a hard task for any company as the demand for such professionals is high. For early startups, this task becomes even harder since they usually cannot offer the high salaries and benefits provided by big companies, even after raising funds from angels investor and seed-phase funds.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;If you own or work at a small startup:&lt;/strong&gt; could you please share your strategies and thoughts on this theme?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;If you are a software engineer:&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;And have chosen to work a small startup: could you please tell us what motivates you most?&lt;/li&gt;
&lt;li&gt;And don't work at a small startup: what do you look for in a company that is more important than high salaries and benefits?&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Any other comments/ideas are very welcome. Thanks for sharing your thoughts.&lt;/p&gt;

&lt;p&gt;&lt;small&gt;Photo by Proxyclick Visitor Management System on Unsplash&lt;/small&gt;&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>startup</category>
      <category>career</category>
    </item>
    <item>
      <title>The benefits of the "drink water and pee" routine</title>
      <dc:creator>Arthur Del Esposte</dc:creator>
      <pubDate>Sun, 02 Feb 2020 19:13:17 +0000</pubDate>
      <link>https://dev.to/arthurmde/the-benefits-of-the-drink-water-and-pee-routine-4m7m</link>
      <guid>https://dev.to/arthurmde/the-benefits-of-the-drink-water-and-pee-routine-4m7m</guid>
      <description>&lt;p&gt;&lt;a href="https://arthurmde.me/pt-br/hacking/productivity/2020/02/02/habit-drink-water.html"&gt;This text is also available in Portuguese.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The beginning of the year is a great time to start new habits that can help you to achieve your personal and professional goals. That's why I decided to share one of the most important habits I developed in the last years which considerably impacted my &lt;strong&gt;health&lt;/strong&gt; and &lt;strong&gt;productivity&lt;/strong&gt; as a Software Engineer. Very straightforward: &lt;strong&gt;Drink Water!&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Although everybody knows that drinking water is healthy, most people don't drink enough, especially programmers. I bet many of us drink more coffee than water. I do not intend to convince you by listing here the obvious and well-publicized benefits of drinking more water. Instead, I want to talk about a valuable consequence of this habit: going to the restroom frequently to pee.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What are you thinking right now?&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;"That's weird!"&lt;/li&gt;
&lt;li&gt;"I hate going to the restroom too often"&lt;/li&gt;
&lt;li&gt;"That's why I don't drink water"&lt;/li&gt;
&lt;li&gt;"That's not water, it's beer"&lt;/li&gt;
&lt;li&gt;"Ok, tell me more..."&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I usually drink between 3.5 and 4 liters of water during my working hours. Consequently, I go to the restroom 5~7 times during this period. You may think that this is a major productivity killer. In fact, it is the opposite for several reasons, especially if you know how to use it to your advantage. To this end, all you need is a bottle of water with the proper size to implement the following cycle:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Fulfill the bottle with water&lt;/li&gt;
&lt;li&gt;Drink the whole bottle gradually while working in a period
of time&lt;/li&gt;
&lt;li&gt;Go to the restroom&lt;/li&gt;
&lt;li&gt;Repeat&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I call this the &lt;strong&gt;"drink water and pee"&lt;/strong&gt; routine.&lt;/p&gt;

&lt;p&gt;Ideally, whenever you get up to go to the restroom then you will complete your bottle again (and vice versa). If you use a bottle that is too big or too small, you will get up more often than necessary. That's why you will need to make some tests to figure out the proper size of the bottle that better works for you to perform this cycle (between 500 ml and 1000 l). Here is mine:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--egTL-SN8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://arthurmde.me/assets/img/others/water-bottle.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--egTL-SN8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://arthurmde.me/assets/img/others/water-bottle.jpeg" alt="Bottle of the Bugse Zot beer fulfilled by water" width="880" height="1173"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Somehow, that beer bottle triggers something in my brain that makes me want to drink its contents, helping me achieve my 4 liters by day personal goal. By the way, what a great beer =)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How does this routine can improve my productivity?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Good performance is about the capacity of focusing to get the work done. However, everything around us seems to dispute for our attention: social media, chats, emails, and even your coworkers. They are distractions that surround us and &lt;strong&gt;distractions are killers of productivity&lt;/strong&gt;. You can't go on 8 hours without any distractions, but you can manage your distractions in such a way that they don't affect your work so much.&lt;/p&gt;

&lt;p&gt;In this sense, &lt;a href="https://medium.com/swlh/how-to-work-40-hours-in-16-7-d9038681e652"&gt;Pomodoro&lt;/a&gt; is a highly used technique to improve your focus and performance to accomplish tasks. It is based on dividing the workflow into intense concentration blocks separated by distraction periods. If you haven't heard about the Pomodoro technique yet, you can easily find &lt;a href="https://dev.to/search?q=pomodoro%20technique"&gt;tons of articles&lt;/a&gt; explaining how to use it, its benefits, challenges, drawbacks, possible adaptations, and so on.&lt;/p&gt;

&lt;p&gt;At the end of the day, the best benefit of &lt;strong&gt;Pomodoro&lt;/strong&gt; is providing a proper way to manage our time aimed to accomplish our tasks by proposing the periodization of focused work with intervals to handle distractions.&lt;/p&gt;

&lt;h2&gt;
  
  
  You don't need a Pomodoro. You need to drink water!
&lt;/h2&gt;

&lt;p&gt;Well, my point is that you can use the &lt;strong&gt;"drink water and pee" routine as your Pomodoro&lt;/strong&gt;. Instead of using a timer to mark your focus periods, let your physiological system tell you when you need to take a break. By doing&lt;br&gt;
this, you will be improving your health and your productivity at the same time.&lt;/p&gt;

&lt;p&gt;In my case, by applying the "drink water and pee" I have about 1 hour and 15 minutes of focus period for every 10 minutes of distractions. The distraction phase includes going to the restroom to pee, fulfill the bottle of water, check my smartphone or perform any other activity that is not directly related to the development of the software that I’m working on, such as &lt;strong&gt;take a walk&lt;/strong&gt; into the office.&lt;/p&gt;

&lt;p&gt;To enable this routine, you need to manage your environment so that you can really be productive during the focus period by turning-off social media notifications and asking your colleagues to do not interrupt you during this period. If they need to talk to you, ask them to leave a message or an email that you can handle at the beginning of the next cycle.&lt;/p&gt;

&lt;p&gt;Moreover, different from Pomodoro, the “drink water and pee” forces you to &lt;strong&gt;stand up from your chair and take a walk&lt;/strong&gt;. That’s great for, again, improving your productivity and health.&lt;/p&gt;

&lt;p&gt;Developing software requires you to tackle a set of different problems constantly, from designing the system to fixing bugs, which considerably involves creativity skills and processes. According to &lt;a href="https://www.ncbi.nlm.nih.gov/pubmed/24749966"&gt;science&lt;/a&gt;, taking walks during your work period can significantly help solving problems, especially when you are &lt;a href="https://news.stanford.edu/2014/04/24/walking-vs-sitting-042414/"&gt;stuck in a hard problem&lt;/a&gt;, taking a walk helps you to look at it with different perspectives.&lt;/p&gt;

&lt;p&gt;Also, walking during your work time can positively impact your health since it prevents you from sitting for long periods of time. An impacting text titled &lt;a href="https://www.startstanding.org/sitting-new-smoking/#extended"&gt;"Sitting is the new smoking"&lt;/a&gt; explains the main threats to your health caused by spending too much time in your chair, including cancers, diabetes, and cardiovascular disease. While sitting kills, moving heals. The text also exposes that even if you work out several times per week, it cannot overcome the damage done by extended periods of sitting. I strongly recommend the reading of this text.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;By the way, do you know any developer who has to treat back problems constantly?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Back pain is a major productivity killer since it destroys your focus and forces you to go to the doctor more often than you would like =)&lt;/p&gt;

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

&lt;p&gt;Obviously, the "drinking water and pee" routine works for me on a regular working day as well as may vary from day-to-day. That's totally fine. When this routine becomes a habit, that cycle becomes so natural that you run it without even thinking about it, while still getting its benefits.&lt;/p&gt;

&lt;p&gt;Adopting new healthy habits such as drinking water can be hard and "improving your health" reason may not be enough to convince you to adopt&lt;br&gt;
them (otherwise, you would have already adopted them). The same can be said for productivity techniques, such as Pomodoro. However, associating health habits with practical productivity gains can be effective in convincing your brain to develop new habits. At least it works for me =)&lt;/p&gt;




&lt;p&gt;&lt;span&gt;&lt;strong&gt;Let's get moving on!&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>health</category>
      <category>career</category>
      <category>habit</category>
    </item>
    <item>
      <title>The Bolsonaro's Bug - The end of Daylight Saving Time in Brazil may affect your system</title>
      <dc:creator>Arthur Del Esposte</dc:creator>
      <pubDate>Sun, 17 Nov 2019 17:06:23 +0000</pubDate>
      <link>https://dev.to/arthurmde/the-bolsonaro-s-bug-the-end-of-daylight-saving-time-in-brazil-may-affect-your-system-2e38</link>
      <guid>https://dev.to/arthurmde/the-bolsonaro-s-bug-the-end-of-daylight-saving-time-in-brazil-may-affect-your-system-2e38</guid>
      <description>&lt;p&gt;&lt;small&gt;&lt;a href="https://arthurmde.me/pt-br/hacking/design/2019/11/17/bolsonaro-bug.html" rel="noopener noreferrer"&gt;This text is also available in Portuguese&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;

&lt;p&gt;Several software products and applications had bugs related to Brazil's time zone recently due to &lt;a href="https://time.is/time_zone_news/no_dst_in_brazil_in_2019" rel="noopener noreferrer"&gt;Bolsonaro's arbitrary decree&lt;/a&gt; that ends the DST (Daylight Saving Time / Summer Time). Many people are still using browsers operating with daylight saving time. You may have noticed this if you use WhatsApp or Telegram in your browser. At &lt;a href="http://peerdustry.com" rel="noopener noreferrer"&gt;Peerdustry&lt;/a&gt;, we also faced an interesting bug in our platform which we affectionately named it &lt;strong&gt;Bolsonaro's Bug&lt;/strong&gt; that deserves to be discussed in more detail.&lt;/p&gt;

&lt;h1&gt;
  
  
  Context
&lt;/h1&gt;

&lt;p&gt;Before explaining our specific bug, let me give you a simplified model of our system. The Peerdustry platform is composed of a Rails API Backend and a Frontend based on EmberJS.&lt;/p&gt;

&lt;p&gt;One of the main flows implemented is related to the quotation process in which a &lt;strong&gt;Client&lt;/strong&gt; requests a quotation for producing a mechanical part which will be evaluated and answered by several &lt;strong&gt;Manufacturers&lt;/strong&gt; that comprise our network. Such manufacturers are chosen by the system's administrators through the creation of a task for each of them to answer to the quotation. These tasks must be answered within before a certain &lt;strong&gt;deadline&lt;/strong&gt; established by the &lt;strong&gt;Client&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Recently, some manufacturers complained that their tasks were expiring before the &lt;strong&gt;deadline&lt;/strong&gt;. In addition, our administrators also reported that they have seen strange dates and times in the system. We immediately imagined that these bugs arose due to changes in daylight saving time. We were right! However, this could be impacting multiple modules of the system. Handling with date and time, time zones, and different formats can be tricky, hindering the investigation to actually find out where the problems were.&lt;/p&gt;

&lt;h1&gt;
  
  
  A Simpler System
&lt;/h1&gt;

&lt;p&gt;For simplification purposes, let's drive into the problem considering a simpler system with only the most important components to the problem: A college Web system composed of a Rails Backend and an EmberJS Frontend. In this system, a &lt;strong&gt;Professor&lt;/strong&gt; can generate tasks for &lt;strong&gt;Students&lt;/strong&gt; that must be accomplished before a given &lt;strong&gt;deadline&lt;/strong&gt;. Otherwise, they will expire.&lt;/p&gt;

&lt;p&gt;The &lt;strong&gt;Professor&lt;/strong&gt; informs the &lt;strong&gt;deadline&lt;/strong&gt; date while creating the tasks for &lt;strong&gt;Students&lt;/strong&gt; by selecting a date through the &lt;a href="https://github.com/Pikaday/Pikaday" rel="noopener noreferrer"&gt;Pikaday JS component&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fp8o0n4wf33f9ybvinath.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fp8o0n4wf33f9ybvinath.png" alt="Pikaday JS Component"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Before sending this data to the Backend, the Frontend will format it as a timestamp attribute set at the end of the chosen date with &lt;a href="https://momentjs.com/docs/#/manipulating/end-of/" rel="noopener noreferrer"&gt;MomentJS' endOf function&lt;/a&gt; which considers the browser time zone. For instance, if the professor chose 15/11/2019 as the deadline, the formatted data to be sent to the Backend will be &lt;code&gt;15/11/2019 at 11:59:59 pm&lt;/code&gt; (or &lt;code&gt;23h59m59s&lt;/code&gt;). It is worth noticing that every timestamp attribute is formatted and stored in &lt;strong&gt;ISO-8601 UTC&lt;/strong&gt;. The &lt;strong&gt;GMT&lt;/strong&gt; format is only used for UI presentation purposes.&lt;/p&gt;

&lt;p&gt;Each student will be given a task that expires at the task's &lt;strong&gt;deadline&lt;/strong&gt;, which will become unavailable after this date. To this end, whenever a task is created for a student, the Backend will schedule an asynchronous job with &lt;a href="https://github.com/mperham/sidekiq" rel="noopener noreferrer"&gt;Sidekiq&lt;/a&gt; to be run at the &lt;strong&gt;deadline&lt;/strong&gt; to mark the task as expired if it has not been accomplished yet.&lt;/p&gt;

&lt;p&gt;Students can track their pending tasks through a page that presents the list of tasks and their respective deadlines. Our deadlines are displayed for end-users formatted as simple Brazilian dates (e.g.; 24/11/2019) since it implicitly indicates that the task is available until the end of the informed day, as illustrated below.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F94u42fdz9fvqp3aqzgb9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F94u42fdz9fvqp3aqzgb9.png" alt="Tasks list"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We also use the &lt;a href="https://momentjs.com/docs/#/displaying/format/" rel="noopener noreferrer"&gt;MomentJS lib&lt;/a&gt; to display such dates, which also considers the browser's time zone.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;So far, so good.&lt;/strong&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  The Bug
&lt;/h1&gt;

&lt;p&gt;After the Bolsonaro's decree, we made sure that our servers would not be using DST wrongly so that the Backend's jobs would run in the proper time. Given that the Backend is working with the right time zone (&lt;strong&gt;UTC -3&lt;/strong&gt;) and that the Frontend always provides the &lt;strong&gt;deadlines&lt;/strong&gt; in UTC format, the Backend will always schedule the jobs to expire the pending tasks in the &lt;strong&gt;received timestamp&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;However, the problem emerges when either the &lt;strong&gt;Professor&lt;/strong&gt; or the &lt;strong&gt;Student&lt;/strong&gt; is using the platform in an outdated browser that still operates considering Brazil's DST. Some users of the system may have either their browsers with UTC -3 (Brazil's default time zone) or UTC -2 (former Brazil's DST time zone) which led us to some very odd situations.&lt;/p&gt;

&lt;p&gt;Let's imagine that a Professor needs to create a task with a deadline to 01/01/2020. We have the following situations:&lt;/p&gt;

&lt;h2&gt;
  
  
  1. When the Professor's browser is correctly operating with UTC -3
&lt;/h2&gt;

&lt;p&gt;In this scenario, the deadline informed by the Professor is right since we do not have DST anymore and the original Brazilian time zone is UTC-3.&lt;/p&gt;

&lt;p&gt;If the Professor's input is 01/01/2020, the Frontend will send 02 Jan 2020&lt;br&gt;
02:59:59 UTC to the Backend (01/01/2019 23:59:59 UTC-3). As the Backend's time zone is also right, it will schedule the jobs to expire tasks at the time the Professor expected.&lt;/p&gt;

&lt;h4&gt;
  
  
  1.A. When the Student's browser is correctly operating with UTC -3
&lt;/h4&gt;

&lt;p&gt;In this case, the student reading the message will not be confused, since MomentJS lib is using the proper time zone to display the date. In other words, the Student will see the deadline date &lt;code&gt;01/01/2019&lt;/code&gt;, which is correct.&lt;/p&gt;

&lt;h4&gt;
  
  
  1.B. When the Student's browser is incorrectly operating with UTC -2 (DST)
&lt;/h4&gt;

&lt;p&gt;In this case, the MomentJS lib will apply the UTC -2 time zone to the deadline received form the Backend in UTC format, obtaining &lt;code&gt;02 Jan 2020 00:59:59 UTC -2&lt;/code&gt;. Since we display only the date and hide the time, the user would see 02/01/2020 (Brazil's date format) instead of 01/01/2020 as the deadline for his task, leading him to a misunderstanding of the correct date. While the Student thinks he will be able to finish his task until 02/01/2020 (Brazil's date format), at this date the task will not be available anymore.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. When the Professor's browser is incorrectly operating with UTC -2 (DST)
&lt;/h2&gt;

&lt;p&gt;In this scenario, we have a problem regardless of the Student's browsers since the deadline provided to the Backend is incorrect.&lt;/p&gt;

&lt;p&gt;If the Professor's input is 01/01/2020, the Frontend will send 02 Jan 2020&lt;br&gt;
01:59:59 UTC to the Backend (01/01/2019 22:59:59 UTC -3). This means that the deadline will expire 1 hour earlier than expected.&lt;/p&gt;

&lt;h4&gt;
  
  
  2.A. When the Student's browser is correctly operating with UTC -3
&lt;/h4&gt;

&lt;p&gt;In this case, the student has no confusion about the date, even though the&lt;br&gt;
MomentJS lib is using a time zone different from the original to display the date. Applying the UTC -3 to the original deadline will produce &lt;code&gt;01 Jan 2020 22:59:59 UTC -3&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Thus, the Student would see 01/01/2020 as the deadline date, which is correct. However, he will be expecting to have the deadline available until 23:59:59h, which will not occur.&lt;/p&gt;

&lt;p&gt;You could argue that displaying the time along with the date to the Student in the system would minimize the problem: 01/01/2020 22:59h. But the time is likely to be ignored by him as he is used to having tasks available until 23:59h.&lt;/p&gt;

&lt;h4&gt;
  
  
  2.B. When the Student's browser is incorrectly operating with UTC -2 (DST)
&lt;/h4&gt;

&lt;p&gt;Although MomentJS lib will use the same time zone of the original deadline&lt;br&gt;
to display the date, we still have some problems.&lt;/p&gt;

&lt;p&gt;Applying the UTC -2 to the original deadline will produce 01 Jan 2020 23:59:59 --02:00. In this case, the Student would see 01/01/2020 as the deadline date, which is correct. However, he will face the same problem of UTC -3 users since he expects to have the deadline available until 23:59h, which will not occur. Even worse, we cannot display the time to him as we did in the last example since the displayed time would be wrong (displaying 23:59h even though it will expire at 22:59h).&lt;/p&gt;

&lt;h1&gt;
  
  
  How to fix?
&lt;/h1&gt;

&lt;p&gt;There are some approaches to minimize the impact of the Bolsonaro's bug.&lt;br&gt;
Most of them are quite hacky for me.&lt;/p&gt;

&lt;p&gt;In general, if you make sure that your system stores and process date/time data on UTC, your concern lies mostly on your presentation layer.&lt;/p&gt;

&lt;p&gt;In the specific context of the Peerdustry's platform, both roles, Manufacturers and Clients, hardly ever use the platform after 7 pm (the end of their companies business hours), which means that the main problem is displaying the wrong deadline date for the &lt;strong&gt;Manufacturers&lt;/strong&gt; (Scenario 1.B). In this sense, if we change the Frontend to always set the deadline to &lt;code&gt;22:59:59 UTC -3&lt;/code&gt; before sending it to the Backend, the Manufacturers will always see the correct &lt;strong&gt;date&lt;/strong&gt;. Even though the tasks will expire one hour earlier than expected, almost nobody would be impacted by this.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;This approach could never be applied to a college system =D&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It is also possible to change the time zone used by &lt;a href="https://momentjs.com/time%20zone/docs/" rel="noopener noreferrer"&gt;MomentJS&lt;/a&gt; to mimic Brazil's new time zone rules. However, this is the kind of approach that will give you headaches when you have users on more than one time zone, besides jeopardizing the internationalization of your system.&lt;/p&gt;

&lt;p&gt;In my opinion, the most appropriate solution to bugs similar to our Bolsonaro's bug is:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Display the time to along with the deadline date&lt;/li&gt;
&lt;li&gt;Inform users when their browsers are operating with outdated time zone information, warning them about possible bugs and requesting them to upgrade their browsers.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;What about you? Have you faced any odd bug after Bolsonaro's decree?&lt;/strong&gt;&lt;/p&gt;




&lt;p&gt;&lt;small&gt;The cover image is from Fábio Rodrigues Pozzebom/Agência Brasil &lt;a href="https://creativecommons.org/licenses/by/2.0" rel="noopener noreferrer"&gt;CC BY 2.0&lt;/a&gt; via Wikimedia Commons&lt;/small&gt;&lt;/p&gt;

&lt;p&gt;&lt;span&gt;&lt;strong&gt;#ELENAO - Let's get moving on! ;)&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>timestamps</category>
      <category>rails</category>
    </item>
  </channel>
</rss>
