Segmented sleep for 5 weeks

For the next 5 weeks, I will be sleeping from 23:00-2:00 and 4:00-7:00, totaling in 6 hours of sleep per day. This is known as the segmented sleep schedule. If it goes well, I will likely continue with this schedule. For some of you 6 hours probably sounds like a lot, but I usually get 8 hours, so cutting out 2 is a significant improvement.

My motive behind doing this is that I was recently offered a research opportunity that I could not refuse (I will likely post about it later). To make time for it, I had to sacrifice something – my choice was sleep. About a year ago I was on a similar routine and it worked well, but I haven’t had the motivation to start doing it again until now.


Week 1 Summary

During the 2:00-4:00 waking phase, I felt groggy for probably the first hour each night. Waking up was difficult as well, since my body was not adjusted to the schedule.

I had 3 successful trails and 4 unsuccessful trails. Since I was still trying to figure out the alarm clock and bar code scanning stuff, I guess this is not too bad.

Week 2 Summary

This week I started to feel less groggy in the 2:00-4:00 waking phase. I only needed about 10 minutes to wake up, as opposed to feeling groggy for the entire waking phase, as in week 1.

I had 5 successful trails and 2 unsuccessful trails. Despite the lack of sleep, I was able to function completely normal.

My goal for week 3 is to have a maximum of one failed trail.

Week 3 Summary

I think this week was when my body was really adapted to the schedule. I had no problems when waking up in the night or the morning.

I had 6 successful trails and 1 unsuccessful trail, which was intentional. Plus, I achieved my goal!

Week 4 Summary

This week, a bunch of things got in the way that messed up my schedule. Despite this, I was able to bounce back into the routine easily.

Night 1 (October 24 – October 25)

Changes from previous day:

  • Installed the “I Can’t Wake Up” app
  • Configured it so I have to scan a QR to wake up
  • Set up a sunlight lamp

In my waking period from 2:00-4:00, I felt a little groggy, but I ended up getting a lot of reading done.

After my second sleep cycle, I felt über tired and took several 5 minute naps until 7:30.

Night 2

Again, my waking period from 2:00-4:00 was productive. However, in the morning when I woke up at 7:00: I scanned the QR code, the alarm turned off, I crashed in my bed, and I slept in until 9:00. So yeah, I failed my second night 🙁

Despite the second night failing, I am going to be an optimist! My waking period in the middle of the night went well, so all I need to work on is the second wake up period.

Night 3

Changes from previous day:

  • Installed “Keep Me Awake”
  • Configured “I Can’t Wake Up” so I have to shake the device viciously after scanning the QR
  • Configured “I Can’t Wake Up” to auto start “Keep Me Awake”

It is currently 3:52. The alarm must have been too soothing, because I didn’t wake up for my waking period until 2:45. Once I got up, having to scan the QR code PLUS shake my device for about 30 seconds helped quite a bit. However, I need to get in the habit of not setting a 5 minute alarm to simulate snoozing.

So I forgot to set my 7:00 alarm… I guess I didn’t need to go to that stats class.

Night 4

So I should have read through the settings of “I Can’t Wake Up” more thoroughly. Apparently there is an option to make it repeat every day so I don’t have to remember to set them.

Changes from previous day:

  • Made “I Can’t Wake Up” repeat both alarms every day
  • Changed my alarm to a really annoying buzzing sound

The waking phase was really good last night. I had no problems getting up. However, the app appears to have issues doing what it was meant to do – be an alarm clock. It didn’t turn on at 7:00.

Night 5

In the past I have used Sleep as Android for my alarm clock. I stopped because I was dumb and didn’t configure the alarm properly, so the QR scanning wasn’t working. Needless to say, I figured out the issue (had to due with my change of address) and I plan to use that from now on.

Changes from previous day:

  • Switched to “Sleep as Android” for my alarm
  • Moved the QR code from my lamp to the opposite side of the room (to force me to turn on the main light)

It is now my waking period. Due to an assignment that was due at midnight, I had to push back my first sleeping phase to 11:30-2:30, at which point I immediately had a 5 minute nap after, so I woke up around 2:35. I always feel that naps will help me wake up (hint: they don’t). Since I shifted my first cycle, I decided to shift my second to 4:30-7:30.

Success! I woke up around 7:15, then felt inclined to do what I always do and snooze a couple times until 7:30. I won’t be missing stats today! Again, snoozing was probably just detrimental, but at the time I convinced myself that it would help (AsapSCIENCE has an interesting video on why snoozing is terrible).

Night 6

No complaints besides a bit of snoozing. That really needs to stop :/

Night 7

I ended up staying up too late and it screwed up by routine… Interestingly enough, I naturally woke up at 7:00 without an alarm. However, shortly thereafter I went to bed again. Despite this night being a complete failure, it will provide resiliency results for Night 8 when I go back to my routine.

Night 8 (October 31 – November 1)

Thanks to George Hudson, I only needed to sleep from 0:00-2:00 in my first cycle to get 3 hours of sleep – Happy daylight savings, everyone!

Despite having deviated from my routine on Night 7, I had no issues getting up after 3 hours for my waking phase. Yay!

Ugh. So of course, I woke up at 6:44 feeling chipper, then made the terrible decision that I should nap a bit to reduce my “sleep debt” by 10 minutes, and slept in until 8:00. I had a problem doing this even before I started my routine, so I don’t think it is anything related to the reduced sleep. To counter my groggy-selfed-argument, I am going to set a range from 6:45-7:15 for my alarm instead of 6:40-7:10 so that I know on average I will be getting 3 hours per sleep cycle. I also set up a second bar code that I will have to scan.

Night 9

Changes from previous day:

  • Adjusted sleep range (n:45 to (n+1):15)
  • Added an extra bar code to scan to disable my alarm

Success! For both alarms, looking at my university card (where the second bar code is located) probably reminded me why I started doing this whole experiment in the first place. And I didn’t snooze! 😀

Night 10

According to the sleep depth chart, Sleep as Android decided to wake me up in the middle of deep sleep :@ I am still going to stay awake until 4 for experimental purposes.

Strangely enough, when I woke up for my second alarm, I felt much better than normal.

Night 11

Something got messed up with my alarm and the maximum amplitude of the ring tone was reduced. Hence, I slept until 2:30. It goes without saying that I fixed this. Other than that, all is well.

Other than that anomaly, last night went well and I got a lot of work done in my waking phase.

Night 12

Just for fun I am going to try changing my alarm sound to shuffle from a set of random bird noises and random synthetic alarms.

Changes from previous day:

  • Changed the alarm to be a shuffled playlist of annoying tones

Turns out waking up to a seagull is a very effective way to wake up.

Tonight is the first time that I have been on my new sleep routine before writing a midterm in the morning. It will be interesting to see the manifested cognitive detriments – if they occur. Wish me luck!

I don’t think my cognition was affected by the new sleep schedule. I was able to focus just as well as normal during my test!

Night 13

I ended up going to bed at 00:15 last night due to an assignment that I was working on at the university. Hence I adjusted my wake up time to be 3:15 +- 15 minutes. Interestingly, I felt absolutely terrible when I woke up. I suppose this is to be expected since consistency is important with sleep schedules.

I decided to go back to bed at 4:00 so that my second sleep phase will note deviate from the normal time.

Night 14

So I stayed up later than I should have, and again screwed up my routine. Gur.

Night 15 (November 7 – November 8)

I ended up sleeping from 23:38-2:48 tonight because I couldn’t fall asleep at 23:00 (probably due to the previous night :|). Despite that, I had no detriments in my waking phase.

To get back on track with my routine, I slept again from 4:00-7:00. I feel fine this morning – yay!

Night 16

Argh. I woke up at 2:00 to discover that my OS was kernel panicking. I have an important assignment due tomorrow, so it looks like I won’t be getting my second sleep phase in.

I ended up sleeping initially from 23:41-2:49 with success and then took two 20 minute naps. Fun fact: this is basically the Everyman sleep schedule (the schedule I plan to do after this 5 week trial).

Night 17

Everything was normal this night, except I slept from 5:00 to 8:00 in my second sleep phase. Surprisingly, I didn’t feel the side effects of Night 16 where I only got 4 hours of sleep.

Night 18

Another mostly normal night – I slept from 1:00 to 4:00 and 5:00 to 8:00 instead, though. According to my sleep tracker, I had an average of 59% deep sleep, so I am thinking that maybe sleep times don’t matter as much as I thought. Just an idea.

Night 19

Nothing interesting on this night.

Night 20

So according to my sleep tracker, I have been waking up around 10-15 minutes after my alarms go off. This results in quite a bit of extra sleep. To compensate, I am going to change my alarms to go off at 1:50±15 and 6:50±15.

Something I forgot to mention: for those who don’t know, Sleep as Android is a sleep tracker which will set off an alarm within a certain range. It determines when to do so based on predicted sleep cycles – e.g. if you are rolling around, it will detect movement, which implies that you are in light sleep. Hence at that point it would wake you up.

Changes from previous day:

  • Changed my alarms to go off at 1:50±15 and 6:50±15.


Night 21

Tonight I ended up visiting my brother – so I had an excuse to stay up late and mess up my routine :3

Night 22 (November 14 – November 15)

Another ordinary success.

Night 23

I’m not exactly sure how… but I ended up waking up at 2:00, then setting another alarm for 4:00 followed by going back to bed – resulting in 5 hours of (basically) contiguous sleep. So here I am, awake at 4:00, needing only one more hour of sleep.

Sleeping for that extra 2 hours really threw off my sleep pattern, and I ended up sleeping in after trying to get only 1 more hour of sleep. Gur.

Night 24

Night 25

One thing I have been noticing is that it is easier to wake up at 2:00 than it is to wake up at 7:00. I think I am going to automate my lamp to turn on at 6:30 at some point to see if that helps.

Night 26

Night 27

So all went well until waking up at 7:00. I felt really groggy, so shortly thereafter I slept again until 8:00.

According to my sleep tracker, I was in deep sleep when it woke me up, but an hour before (at 6:00) I was in light sleep. I noticed a similar pattern among other nights, so I am wondering if moving my sleeping phase back would help.

Night 29

Night 30 (November 21 – November 22)

Changes from previous day:

  • Changed second sleeping phase to be from 3:30-6:30

It seemed like it was easier to wake up at 6:30 today. I will try this for a few more days to see if it helps.

Night 31

Night 32

Sleep as Android sucks. According to what I have read online, it occasionally decides to turn itself off… yep, you guessed it – I missed stats class again.

Night 33

So I heard good things about the Timely Alarm Clock, which includes wake-up challenges and alarm-sooth-in features. I decided to give this a whirl for the rest of my experiment.

Changes from previous day:

  • Switched to the Timely Alarm Clock
  • Changed the alarms back to 2:00 and 7:00

Stay tuned…

Dabbling around with Haskell

So last night I went to a Haskell workshop.

One of the examples my professor gave was the factorial function:

The first line is the function signature, the second line is the base case, and the third line is the recursive step of the function. One thing I really like about Haskell so far is how clean recursive functions are.

Today I started dabbling a bit more with Haskell and created a recursive function to calculate pi using the Gregory–Leibniz formula:

I had to name it “pie” because “pi” was a reserved keyword. The “fromIntegral n” is there to allow an integer to be part of a fractional calculation. This is necessary because Haskell is über strict with types.

Here it is in action:

Gravity Simulator

A while ago I made a physics simulator for projectile motion which would gravitate towards the ground. I decided to build off this idea and make a free space gravity simulator!!!

To launch new planets, click and drag. When the planets collide, they will create a larger planet with a greater mass. The dynamics of this were done in a 3D perspective, so that is why planets grow very slowly in proportion to their mass build up (the mass is proportional to the cube root of the radius).
Check it out!

Conservation of momentum is followed, so launching a small planet with a high velocity at a large planet will produce a small velocity change due to the mass difference 🙂

I made a Chrome plugin!

So I am currently facilitating the hardware room at the UTM Hacks hackathon… Currently, everyone is settled down and hardware registration has been dead for a while, so I created a Chrome plugin!

The functionality is to play elevator music whenever you are on a login page. In my opinion, this is arguably one of the best plugins ever written 😉

Without further ado, here it is!