Sunday December 30th

A Little Haskell and a Little C

This will probably be short

  • I want to make sort of a post about my year and expectations for the New Year (as I did last year), but I will save it for tomorrow evening. I need to process things a bit more, first.
  • I’ve been staying up late, which is one of the wonderful things about being home for these past couple of days. I went to sleep around 2 this morning, and am probably going to be up late again today (it’s already after 11pm as I write this.)
  • My mind has been distracted by all the loose ends I don’t have answers to in the New Year yet, so much so that it’s been making me mentally forgetful in other more social areas of my life. For example, someone will call or text me, and I will only respond to them several hours later because I can only focus on reading and writing code, because those things calm my anxiety about unanswered questions I have with respect to the New Year. It’s difficult to imagine that by March, my life could have an entirely different trajectory, or it could not at all.

I’ve been learning both Haskell and Linux

  • Specifically, I’ve been diving into trying to understand Haskell better, and in understanding more about the Linux Kernel and how it works. So basically a lot of C and some Bash and Python. I’ve already learned so much, and don’t regret it at all!
  • Also, I’ve been seeing so many similarities between things I’ve seen in Haskell that have been inexplicable to me as a learner, and things that I’m learning now about the Linux Kernel. This is perhaps because the compiler for Haskell is LLVM. So in a way, I’m learning two things at once. It’s been really rewarding.
  • I’m learning a terrible amount about flags and system calls at the moment. And I actually have been finding it to be immensely enjoyable.
  • I’ve also been revisiting areas of Haskell that I breezed through before because I was clueless about them (this is still at a beginner level) and really trying to understand them. So taking my time to work through excercises and make them break and try to fix them. I’ve noticed I’m getting better! Not quite there, but definitely better than I was even a few months ago! Sandy’s book helped because it was very difficult for me (because it is more intermediate). I really struggled, but I went back to some old material and suddenly found that I improved. I need to do this more often (ie pick something ridiculously hard, make my way through it, and then go back to something a bit closer to my reach).
  • Someone (a few months ago) identified something I may have a natural talent for, and I’ve been musing about it lately. It’s been puzzling, but the more I think about it, it makes a lot of sense, and it would tie into everything I’ve already been doing. It has just been unexpected.
  • It also means that in the future, I can realistically contribute to the Haskell compiler if I so chose to do so. Right now, I really would like to help on an open source project I volunteered to work on a few weeks ago, but I want to learn a bit of this first. I’m not in a rush.

I think because I’m learning

  • I really am trying to make a deliberate effort to just keep going, even if slowly, with specific goals. That is, to stick with Haskell, and learn more about what is under the hood of it, while learning the language. I know that I’m slow, and that I don’t consider myself a rock-star or anything, but I’m eager to learn and I find the language to be very enjoyable. So I’m going to stick with it.
  • It ties into what I proposed for my line of study, too. It’s strange how all these pieces just seem to fit together. It’s been eerie, almost frightening. When things are right they just sort of fit together, like a puzzle.

Anyways, that’s it for me.

  • Probably going to spend a few hours continuing to work, and tomorrow evening or something I’ll write a note on 2019 and what I hope to accomplish, etc.

And that’s it!

Written on December 30, 2018