# My tone doesn't make me wrong

**URL:** <https://rubytalk.org/t/my-tone-doesnt-make-me-wrong/76022>\
**Category:** ruby-talk\
**Created:** [21 August 2022 07:15 UTC](https://rubytalk.org/t/my-tone-doesnt-make-me-wrong/76022 "2022-08-21T07:15:46Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![Felipe\_Contreras](https://yyz1.discourse-cdn.com/flex029/user_avatar/rubytalk.org/felipe_contreras/32/2355_2.png) [@Felipe\_Contreras](https://rubytalk.org/u/Felipe_Contreras)\
**Post date:** [21 August 2022 07:15 UTC](https://rubytalk.org/t/my-tone-doesnt-make-me-wrong/76022/1 "2022-08-21T07:15:46Z")

</div>

Hi,

I wrote a blog post about the ordeal I went through from 2012 to 2014  
to fix a bug in DateTime.strptime:

> **[My tone doesn’t make me wrong, or how I convinced the Ruby project to fix an...](https://felipec.wordpress.com/2022/08/21/tone-doesnt-make-me-wrong/)**
>
> Back in 2012 I stumbled upon an inconsistency in Ruby’s handling of time zones which took me a lot of discussions to get fixed, but eventually I managed to get it done. Essentially this didn&…

It's a good example of how a meek and polite tone doesn't always work,  
sometimes you have to be bold and combative if you want results.

Cheers.

> **···**
>
> --  
> Felipe Contreras

---

<div class="post-metadata">

**Author:** ![Saji\_Hameed](https://yyz1.discourse-cdn.com/flex029/user_avatar/rubytalk.org/saji_hameed/32/2120_2.png) [@Saji\_Hameed](https://rubytalk.org/u/Saji_Hameed)\
**Post date:** [21 August 2022 15:19 UTC](https://rubytalk.org/t/my-tone-doesnt-make-me-wrong/76022/2 "2022-08-21T15:19:36Z")

</div>

Wonderful! Thanks for posting your experience. I think you were assertive  
in the right way!

saji

> **···**
>
> On Sun, Aug 21, 2022 at 4:16 PM Felipe Contreras \<felipe.contreras@gmail.com\> wrote:
> 
> > Hi,
> > 
> > I wrote a blog post about the ordeal I went through from 2012 to 2014  
> > to fix a bug in DateTime.strptime:
> > 
> > [https://felipec.wordpress.com/2022/08/21/tone-doesnt-make-me-wrong/](https://felipec.wordpress.com/2022/08/21/tone-doesnt-make-me-wrong/)
> > 
> > It's a good example of how a meek and polite tone doesn't always work,  
> > sometimes you have to be bold and combative if you want results.
> > 
> > Cheers.
> > 
> > --  
> > Felipe Contreras
> > 
> > Unsubscribe: \<mailto:ruby-talk-request@ruby-lang.org?subject=unsubscribe\>  
> > \<[http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt](http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt);
> 
> --

---

<div class="post-metadata">

**Author:** ![Brandon\_Weaver1](https://yyz1.discourse-cdn.com/flex029/user_avatar/rubytalk.org/brandon_weaver1/32/1940_2.png) [@Brandon\_Weaver1](https://rubytalk.org/u/Brandon_Weaver1)\
**Post date:** [21 August 2022 16:06 UTC](https://rubytalk.org/t/my-tone-doesnt-make-me-wrong/76022/3 "2022-08-21T16:06:44Z")

</div>

Yikes. Being abusive towards a maintainer ain't it mate. This is sold grade  
A "alpha male" toxicity and you really need to take a step back and reflect  
on it.

> **···**
>
> On Sun, Aug 21, 2022, 12:16 AM Felipe Contreras \<felipe.contreras@gmail.com\> wrote:
> 
> > Hi,
> > 
> > I wrote a blog post about the ordeal I went through from 2012 to 2014  
> > to fix a bug in DateTime.strptime:
> > 
> > [My tone doesn’t make me wrong, or how I convinced the Ruby project to fix an inconsistency | Felipe Contreras](https://felipec.wordpress.com/2022/08/21/tone-doesnt-make-me-wrong/)
> > 
> > It's a good example of how a meek and polite tone doesn't always work,  
> > sometimes you have to be bold and combative if you want results.
> > 
> > Cheers.
> > 
> > --  
> > Felipe Contreras
> > 
> > Unsubscribe: \<mailto:ruby-talk-request@ruby-lang.org?subject=unsubscribe\>  
> > \<[http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt](http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt);

---

<div class="post-metadata">

**Author:** ![Gerald\_Bauer1](https://yyz1.discourse-cdn.com/flex029/user_avatar/rubytalk.org/gerald_bauer1/32/1852_2.png) [@Gerald\_Bauer1](https://rubytalk.org/u/Gerald_Bauer1)\
**Post date:** [21 August 2022 16:14 UTC](https://rubytalk.org/t/my-tone-doesnt-make-me-wrong/76022/4 "2022-08-21T16:14:46Z")

</div>

Hello,

&nbsp;&nbsp;&nbsp;Wow. Thanks for the write-up and lesson why tolerance is so  
important (guess what with all your authority, yes, you might be  
wrong!).

&nbsp;&nbsp;&nbsp;&nbsp;Your patience is incredible in this ordeal. Holy cow!

&nbsp;&nbsp;&nbsp;Anyways, sad to see my good old friends that make my live in  
rubyland miserable to this day:

&nbsp;&nbsp;&nbsp;Eric Hodel - for sure outstanding contributor to ruby in the past  
- but somehow lost his mind not sure why and when and become a justice  
warrior

&nbsp;&nbsp;and Brandon Weaver - not sure why he has a free license to insult  
all critics in rubyland  
and call for bans in the name of making rubyland a "safe space"  
according to his utopia

&nbsp;&nbsp;Anyways, for the record here's my archived series of the CSV  
library / gem write-up  
&nbsp;&nbsp;&nbsp;&nbsp;titled "Why the CSV standard library is broken (and how to fix it)" [1]

As an update now some years later (I have long given up) - the good  
news - the csv library / gem is no longer an orphan and lovely updated  
& patched by Sutou Kouhei (kou)  
- you are a hero! the "parser" that never was is now fixed and - yes  
- is a real parser.

&nbsp;&nbsp;&nbsp;However, the csv model itself is still broken - it should return an  
array simply or an hash and NOT it's own custom table and such and so  
on.

&nbsp;&nbsp;&nbsp;Anways, the saga continued with my pixel art libraries / gem that  
are funnily off-blockchain and  
a parody of crypto art - but that of course gets lost by over eager  
"save spacers" that want me banned  
&nbsp;&nbsp;for promoting crypto or such. Anyways, see the planetruby archive  
[2] for background.

&nbsp;&nbsp;To conclude - allow me to call for more tolerance again and - yes  
- dare to crack some jokes even if there a danger that some take it  
serious. Be a mensch. (that 's my aspiration and code of conduct  
policy -see the Choose A Conduct org [3] to get your own copy.

&nbsp;&nbsp;Cheers. Prost.

[1] [csvreader/docs at master · rubycocos/csvreader · GitHub](https://github.com/rubycocos/csvreader/tree/master/docs)  
[2] [All About Programming Ruby](https://old.reddit.com/r/planetruby/)  
[3] [Choose-A-Conduct · GitHub](https://github.com/chooseaconduct)

---

<div class="post-metadata">

**Author:** ![Tiago\_Cardoso](https://avatars.discourse-cdn.com/v4/letter/t/f19dbf/32.png) [@Tiago\_Cardoso](https://rubytalk.org/u/Tiago_Cardoso)\
**Post date:** [21 August 2022 18:43 UTC](https://rubytalk.org/t/my-tone-doesnt-make-me-wrong/76022/5 "2022-08-21T18:43:31Z")

</div>

Hi,

Thx for sharing your story.

Datetime library has been deprecated in ruby 3, without a clear  
replacement. Did the aftermath of this story play a role, directly or not,  
in this decision?

escreveu:

> **···**
>
> A domingo, 21/08/2022, 08:16, Felipe Contreras \<felipe.contreras@gmail.com\>
> 
> > Hi,
> > 
> > I wrote a blog post about the ordeal I went through from 2012 to 2014  
> > to fix a bug in DateTime.strptime:
> > 
> > [My tone doesn’t make me wrong, or how I convinced the Ruby project to fix an inconsistency | Felipe Contreras](https://felipec.wordpress.com/2022/08/21/tone-doesnt-make-me-wrong/)
> > 
> > It's a good example of how a meek and polite tone doesn't always work,  
> > sometimes you have to be bold and combative if you want results.
> > 
> > Cheers.
> > 
> > --  
> > Felipe Contreras
> > 
> > Unsubscribe: \<mailto:ruby-talk-request@ruby-lang.org?subject=unsubscribe\>  
> > \<[http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt](http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt);

---

<div class="post-metadata">

**Author:** ![Felipe\_Contreras](https://yyz1.discourse-cdn.com/flex029/user_avatar/rubytalk.org/felipe_contreras/32/2355_2.png) [@Felipe\_Contreras](https://rubytalk.org/u/Felipe_Contreras)\
**Post date:** [21 August 2022 20:21 UTC](https://rubytalk.org/t/my-tone-doesnt-make-me-wrong/76022/6 "2022-08-21T20:21:00Z")

</div>

Hi,

> Yikes. Being abusive towards a maintainer ain't it mate. This is sold grade A "alpha male" toxicity and you really need to take a step back and reflect on it.

Did you see the part of the story where being polite didn't work for years?

And the reason I wrote the story is that it's happening again, except  
this time it's not a minor bug, but a huge issue affecting tons of  
people. I am being ignored again, so I'm being forced to blow the horn  
on the issue, and the behavior of maintainers.

Also, I wouldn't call taking the ego of a person down a notch or two  
"being abusive".

Cheers.

> **···**
>
> On Sun, Aug 21, 2022 at 11:07 AM Brandon Weaver \<keystonelemur@gmail.com\> wrote:
> 
> --  
> Felipe Contreras

---

<div class="post-metadata">

**Author:** ![Austin\_Ziegler5](https://yyz1.discourse-cdn.com/flex029/user_avatar/rubytalk.org/austin_ziegler5/32/1985_2.png) [@Austin\_Ziegler5](https://rubytalk.org/u/Austin_Ziegler5)\
**Post date:** [22 August 2022 01:05 UTC](https://rubytalk.org/t/my-tone-doesnt-make-me-wrong/76022/7 "2022-08-22T01:05:26Z")

</div>

I \*believe\* that `Time` in Ruby 3 has been sufficiently enhanced to mostly  
replace `DateTime`. I’ve been doing some work which previously relied on  
`DateTime`, and everything that I was using it for is now present in `Time`  
(although you \*must\* `require 'time'` in the way that you would have  
required `datetime` previously).

-a

> **···**
>
> On Sun, Aug 21, 2022 at 2:44 PM Tiago Cardoso \<honeyryderchuck@gmail.com\> wrote:
> 
> > Datetime library has been deprecated in ruby 3, without a clear  
> > replacement. Did the aftermath of this story play a role, directly or not,  
> > in this decision?
> 
> --  
> Austin Ziegler • halostatue@gmail.com • austin@halostatue.ca  
> [http://www.halostatue.ca/](http://www.halostatue.ca/) • [http://twitter.com/halostatue](http://twitter.com/halostatue)

---

<div class="post-metadata">

**Author:** ![Tom\_Lord](https://yyz1.discourse-cdn.com/flex029/user_avatar/rubytalk.org/tom_lord/32/2215_2.png) [@Tom\_Lord](https://rubytalk.org/u/Tom_Lord)\
**Post date:** [22 August 2022 08:31 UTC](https://rubytalk.org/t/my-tone-doesnt-make-me-wrong/76022/8 "2022-08-22T08:31:18Z")

</div>

The ruby documentation says \<[https://ruby-doc.org/stdlib/libdoc/date/rdoc/DateTime.html&gt;:](https://ruby-doc.org/stdlib/libdoc/date/rdoc/DateTime.html&gt;:)

DateTime \<[https://ruby-doc.org/stdlib-3.0.2/libdoc/date/rdoc/DateTime.html&gt](https://ruby-doc.org/stdlib-3.0.2/libdoc/date/rdoc/DateTime.html&gt); class is considered deprecated. Use Time \<[https://ruby-doc.org/stdlib-3.0.2/libdoc/date/rdoc/Time.html&gt](https://ruby-doc.org/stdlib-3.0.2/libdoc/date/rdoc/Time.html&gt); class.

So no, I think the the replacement is very clear.  
However, I agree that the documentation on why `DateTime` is deprecated and how to migrate code to use `Time` instead could be more articulate.

For example, if you have a specific use-case for `DateTime` that (you believe) cannot be resolved by the `Time` class, then this is definitely worth raising.

> **···**
>
> > On 21 Aug 2022, at 19:43, Tiago Cardoso \<honeyryderchuck@gmail.com\> wrote:
> > 
> > Datetime library has been deprecated in ruby 3, without a clear replacement.

---

<div class="post-metadata">

**Author:** ![Tiago\_Cardoso](https://avatars.discourse-cdn.com/v4/letter/t/f19dbf/32.png) [@Tiago\_Cardoso](https://rubytalk.org/u/Tiago_Cardoso)\
**Post date:** [22 August 2022 08:35 UTC](https://rubytalk.org/t/my-tone-doesnt-make-me-wrong/76022/9 "2022-08-22T08:35:21Z")

</div>

The (deprecated) datetime documentation contains this section:

> **[Class: DateTime (Ruby 3.1.2)](https://ruby-doc.org/stdlib-3.1.2/libdoc/date/rdoc/DateTime.html#class-DateTime-label-When+should+you+use+DateTime+and+when+should+you+use+Time-3F)**
>
> Class : DateTime - Ruby 3.1.2

.

Can you perform the same type of calculations using Time?

Tom Lord \<lord.thom@gmail.com\> escreveu no dia segunda, 22/08/2022 à(s)  
09:31:

> **···**
>
> > The ruby documentation says  
> > \<[https://ruby-doc.org/stdlib/libdoc/date/rdoc/DateTime.html&gt;:](https://ruby-doc.org/stdlib/libdoc/date/rdoc/DateTime.html&gt;:)
> > 
> > DateTime  
> > \<[https://ruby-doc.org/stdlib-3.0.2/libdoc/date/rdoc/DateTime.html&gt](https://ruby-doc.org/stdlib-3.0.2/libdoc/date/rdoc/DateTime.html&gt); class  
> > is considered deprecated. Use Time  
> > \<[https://ruby-doc.org/stdlib-3.0.2/libdoc/date/rdoc/Time.html&gt](https://ruby-doc.org/stdlib-3.0.2/libdoc/date/rdoc/Time.html&gt); class.
> > 
> > So no, I think the the replacement is very clear.  
> > However, I agree that the documentation on \*why\* `DateTime` is deprecated  
> > and \*how \*to migrate code to use `Time` instead could be more articulate.
> > 
> > For example, if you have a \*specific use-case\* for `DateTime` that (you  
> > believe) cannot be resolved by the `Time` class, then this is definitely  
> > worth raising.
> > 
> > On 21 Aug 2022, at 19:43, Tiago Cardoso \<honeyryderchuck@gmail.com\> wrote:
> > 
> > Datetime library has been deprecated in ruby 3, without a clear  
> > replacement.
> > 
> > Unsubscribe: \<mailto:ruby-talk-request@ruby-lang.org?subject=unsubscribe\>  
> > \<[http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt](http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt);

---

<div class="post-metadata">

**Author:** ![Austin\_Ziegler5](https://yyz1.discourse-cdn.com/flex029/user_avatar/rubytalk.org/austin_ziegler5/32/1985_2.png) [@Austin\_Ziegler5](https://rubytalk.org/u/Austin_Ziegler5)\
**Post date:** [22 August 2022 13:37 UTC](https://rubytalk.org/t/my-tone-doesnt-make-me-wrong/76022/10 "2022-08-22T13:37:57Z")

</div>

The same calculations can be performed with `Date`, instead of `DateTime`.  
You lose time of day from that, at least in part, but people were using  
`DateTime` for things that do not require the distinction between calendars  
in that changed in England in 1752 or so.

I absolutely believe that Ruby’s time / datetime handling needs  
improvement, but it should be OK for most purposes unless one is doing  
astronomical calculations BCE.

> **···**
>
> On Mon, Aug 22, 2022 at 4:35 AM Tiago Cardoso \<honeyryderchuck@gmail.com\> wrote:
> 
> > The (deprecated) datetime documentation contains this section:  
> > [Class: DateTime (Ruby 3.1.2)](https://ruby-doc.org/stdlib-3.1.2/libdoc/date/rdoc/DateTime.html#class-DateTime-label-When+should+you+use+DateTime+and+when+should+you+use+Time-3F)  
> > .
> > 
> > Can you perform the same type of calculations using Time?
> > 
> > Tom Lord \<lord.thom@gmail.com\> escreveu no dia segunda, 22/08/2022 à(s)  
> > 09:31:
> > 
> > > The ruby documentation says  
> > > \<[https://ruby-doc.org/stdlib/libdoc/date/rdoc/DateTime.html&gt;:](https://ruby-doc.org/stdlib/libdoc/date/rdoc/DateTime.html&gt;:)
> > > 
> > > DateTime  
> > > \<[https://ruby-doc.org/stdlib-3.0.2/libdoc/date/rdoc/DateTime.html&gt](https://ruby-doc.org/stdlib-3.0.2/libdoc/date/rdoc/DateTime.html&gt); class  
> > > is considered deprecated. Use Time  
> > > \<[https://ruby-doc.org/stdlib-3.0.2/libdoc/date/rdoc/Time.html&gt](https://ruby-doc.org/stdlib-3.0.2/libdoc/date/rdoc/Time.html&gt); class.
> > > 
> > > So no, I think the the replacement is very clear.  
> > > However, I agree that the documentation on \*why\* `DateTime` is  
> > > deprecated and \*how \*to migrate code to use `Time` instead could be more  
> > > articulate.
> > > 
> > > For example, if you have a \*specific use-case\* for `DateTime` that (you  
> > > believe) cannot be resolved by the `Time` class, then this is definitely  
> > > worth raising.
> > > 
> > > On 21 Aug 2022, at 19:43, Tiago Cardoso \<honeyryderchuck@gmail.com\> \>\> wrote:
> > > 
> > > Datetime library has been deprecated in ruby 3, without a clear  
> > > replacement.
> > > 
> > > Unsubscribe: \<mailto:ruby-talk-request@ruby-lang.org?subject=unsubscribe\>  
> > > \<[http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt](http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt);
> > 
> > Unsubscribe: \<mailto:ruby-talk-request@ruby-lang.org?subject=unsubscribe\>  
> > \<[http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt](http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt);
> 
> --  
> Austin Ziegler • halostatue@gmail.com • austin@halostatue.ca  
> [http://www.halostatue.ca/](http://www.halostatue.ca/) • [http://twitter.com/halostatue](http://twitter.com/halostatue)
