Back in 1999, the threat of a collapse at a technological level due to the dreaded “Effect 2000” or “Millennium Error” caused widespread fear in society about the failure that would cause computer systems to go into overdrive after December 31, 1999. January 1, 1900 instead of January 1, 2000 because many systems encoded the year in two digits. This “Effect 2000” that was corrected with a few thousand million euros, helps us to explain the “Effect 2038” or “Y2K38”.
The “2038 Effect” is just another “bug” related, in this case, to the time coding in 32-bit systems (the clock they use), which would affect us in January 2038 . And it is that the clock that many computers have is based on POSIX, a simple seconds counter that increases with each passing second and whose reference date is January 1, 1970; therefore, the time is equal to the number of seconds that have elapsed since this reference date.
However, as in 32-bit systems the times are encoded with an integer and a sign, there will come a time when the counter will reach the maximum number that it can store in positive and will begin to count in negative (we will return to 1901 ). Systems that count the time since (21:00, 12/31/1969) would cause the calculation error at 00:14:07 on January 19, 2038, since they will confuse the date with December 13, 1901 .
At the moment the exact consequences that this computer problem will cause in just over 20 years are unknown, but it is clear that there is still time to solve it effectively and without creating the panic that was generated with the Y2K or Effect 2000.
The “2038 Effect” will mainly affect the Unix operating system , on which both Android and iOS are based, as well as many Internet servers, Wi-Fi access points or routers.
Almost all operating systems in use today date back to UNIX . When engineers developed the first operating system for UNIX machines in the 1970s, they arbitrarily decided that time would be represented as a 32-bit signed integer and measured as the number of seconds since 12:00:00 a.m. on 1 January 1970. Bit date and time systems can only count to 2,147,483,647, which translates to January 19, 2038 (3:14:08 am). On this date, any C program that uses the standard 32-bit time_t library will have trouble calculating the date.
Most support functions that use the time_t data type cannot handle negative time_t values. They fail and return an error code, and this causes the calling program to crash dramatically.
Planning for 2038 requires a progressive and proactive approach at this stage . To fix it, you have to focus on:
1) software that deals with future dates and times;
2) file formats and online messages;
3) devices with a long service life and their dependencies.





