31 days 11 hr 0 min and 21 sec
How my vacation calculator actually works
A bunch of technicalities for the curious ones...
- I have written the summer vacation calculator code in PHP 7. As complex as it looks (see detailed explanation below), it takes a modern computer only a fraction of a second to process and get the job done!
- Well, I hope that most students will gladly agree with the concept of the School Closing Ceremony day being considered as the first day of summer vacation! Now, according to the regulation by the Polish Minister of National Education as of August 11th, 2017, the Closing Ceremony at school should be held on the first Friday coming after June 20th. As simple as it sounds, there are potential complications that need to be taken into account, specifically when the public holiday of Corpus Christi falls on the preceding Thursday. In such a case, the Closing Ceremony is traditionally rescheduled for a Wednesday earlier that week. The problem is that Corpus Christi is a movable feast whose date is totally dependent on Easter and is not at all that easy to predict when you are trying to look into the future. Therefore, my vacation calculator follows the Computus, or more specifically Gauss's Easter algorithm in order to figure out the exact date of Easter. As a matter of fact, it does the computation according to the improved Gauss's method published in the New Scientist on March 30, 1961 (Vol. 9, No. 228, ISSN 0262-4079). The date of Corpus Christi which always comes on a Thursday exactly 60 days after Easter Sunday can be then easily calculated.
- In fact, it is much easier to get the date of the last vacation day as according to the above mentioned regulation, the first day of school falls on the first weekday of September unless it is a Friday, in which case school starts on the closest Monday.
- I solemnly promise that if I am aware of any irregularities in terms of the school year duration I will introduce the new dates (whatever they are) into my code in the form of the PHP associative arrays (hashes). I made the PHP interpreter prioritize the date hashes every time it processes the code.
- So, if you are stressing out that you might miss the beginning of summer vacation, you are more than welcome to check it out right here as many times as you need (refresh countdown with F5 key) with up to seconds precision!!!