Week 24 - 2022
The weeknote for 6/13 - 6/19.
This week on Wednesday, the Internet Explorer officially ended its support period. So any website don't need to support IE anymore. This has huge implication in frontend development because so many web features are blocked by the existence of IE. From this week we don't need to support IE in website, which means we can use huge number of new web features, such as grid layout, css variables, etc, etc (countless!).
IE was the front-runner of the web in early 2000s. IE6 was a dominant web browser when it was released. Now it was superceded by Edge, and even the successor already halted development and was already replaced by ChromiumEdge. The things are changing very quickly in web frontend.
This week I continued working on the Calendar App. This week I mainly worked on time zone handling. The handling of time zone was unexpectedly difficult. It become especially difficult around the shift of the standard time and daylight saving time. Japan currently doesn't have the daylight saving time, so it's relatively easy in Japan. However the app needs to handle all time zones so I need to handle all time zones and it was very difficult around shift of standard and daylight saving times.
There seemed no built-in way of converting zoned time to UTC time. So I need to do some work on my own. I compared several libraries, and I found that ptera was the nearest to what I want. So I partially borrowed the idea of handling time zone shift. But ptera still had bug on handling time zone shift. I can return 1-hour wrong time around time zone shift depending on how far from UTC the time zone is. For example, if it handling Australian time zone, then it can be wrong 9 hours twice in a year around the shifts.
This was the first time I handled the zoned time to UTC conversion. I found one interesting thing about it. While the UTC to zoned time conversion is 'a function' in usual sense, the opposite is not event 'a function'. On March 27, 2022 in London time zone, people need to turn clock 1 hour forward at 1:00am, which means there's no time like 1:05, 1:10, etc on March 27, 2022 in London. So the time doesn't exist in those range. So the conversion is not 'defined' in this range. Also on October 30, 2022 in London, clocks will be turned backward 1 hour at 2:00. So you experience 1:05, 1:10,... 2:00 twice on that day. That means the conversion of those times to UTC has 2 values. So conversion of zoned time to UTC is not 'a function' in normal sense.
I needed quite long time to realize this and the app implementation was largely delayed because of it. I hope this knowledge works in some future work and it will save time then.
Started living in Toyosu since the last week. Our apartment is next to a large shopping mall, called LaLaport, which has a large number of shops, restaurants, cafes, etc. This week on Monday I visited Bubba Gump Shrimp restaurant, which features Forrest Gump movie.
- Had Denobata 10 with @uki00a. Talked about Deno 1.23 and other miscellaneous things together.
Edit this page