So today I encountered a very strange &quot;bug&quot; in some code. I was converting timezones using a time and date library, and they were being converted totally wrong.<p>I probed a little deeper and discovered that converting to e.g. &quot;GMT+1&quot; from GMT was actually subtracting an hour.<p>I opened a ticket on the library, and the owner linked me to this: https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Tz_database#Area<p>&gt; <i>&quot; In order to conform with the POSIX style, those zone names beginning with &quot;Etc&#x2F;GMT&quot; have their sign reversed from the standard ISO 8601 convention. In the &quot;Etc&quot; area, zones west of GMT have a positive sign and those east have a negative sign in their name (e.g &quot;Etc&#x2F;GMT-14&quot; is 14 hours ahead&#x2F;east of GMT.)&quot;</i><p>Does anyone know <i>why?</i>
Ask HN: Why are GMT{+,-}N timezones sometimes reversed?