Thursday December 6th
Haskell and Forgiveness
My blog’s been pretty personal lately
- That’s okay. I’ve been spending time coding, but I don’t feel the need to write everything down right now. I have the rest of my life to write technical posts and sound like I know amazing things in Haskell. This is sort of an opportunity for me to note things along the way. I want to be able to read this blog years from now. I enjoy reading old letters and emails.
I’ve been thinking about forgiveness a lot
Both my parents are seriously amazing, but my dad talks about some of his relationships and how he struggled with a few very close ones in which he was treated badly. He said, it embittered him for years until he realized that he had to forgive those people, even if they would never apologize. He had to do it for himself. I have been thinking about that this week, particularly within the Haskell community, and in other instances in my own life.
SPJ made a post about CoCs and treating each other with respect today. I’ve had some really sour experiences in the Haskell community, but I’ve kept going. I want to believe that in an ideal universe, some of these people will come around (maybe when they become parents), and will suck it up and say “you know, that was really immature of me. I’m sorry”. But I have to accept that it may never happen. It’s been a tough pill for me to swallow, because I often want people to do the right thing.
Similarly, I’ve been thinking about some of my own experiences before this current path. In high school, I wrote up an article for a Languages major because I was the fastest typist (our school was weird and was divided into Sciences, Business and Languages..also, thanks Mavis Beacon!) and I didn’t know the word “juxtaposed”. She looked at me and said “let me guess, Science major, right?”. It hurt, but I was also curious to find out what I was lacking. So I didn’t do engineering in college. Somehow, after college, I found engineering again. But once again, I found myself in an environment where one embittered engineer once told me that I would never become one, and that no one would ever hire me. Somehow, I had to find a way to forgive him, as I knew he was projecting pain in his own life and where he ended up. If I were a different person, it would not have been so easy.
The last instance of “forgiveness” I’ve been thinking about is forgiveness for myself, for feeling like I don’t deserve any of the good things that have been coming my way. I was in a rut previously, where I would try really hard, and just have the worst luck. Tech has been different for me. People want to help me, and I feel like there is a positive relationship between the work I put in and the level of fulfillment I experience, and my level of competence.
I attended a Haskell Meetup on Tuesday night locally where I really struggled. And all of a sudden, all the feelings of inferiority came back. I’ve also been doing “Book of Types”, which is no walk in the park, and reading code so I can contribute to an open source project in the near future (I have to study for exams and sit my test this upcoming Monday, first, though!). This is what I mean by “forgiveness for myself”. I want to get better at telling myself it’s okay to keep failing and getting better, especially as I came from an educational system where the price for failing was significant (different path/ different school system). Somehow, Haskell makes it okay, because (as I was telling my friend), it’s like a conversation when I work with the compiler. I try to imagine SPJ is saying the errors that the compiler is spitting out. That helps! :D He definitely wouldn’t yell! (and I recommend this highly!)
That’s pretty much about it
I can’t say where my ability to bounce back comes from. Certainly, with Haskell, I do this again and again. Something about the language keeps me going. It’s encouraging, even as you fail over and over. It pushes you. I’m determined to learn it and get very good at it. It doesn’t matter to me if it takes a lifetime.
I have a bunch of homework to do, and I have to study for my test. Hopefully afterwards, I will be doing just the work for the open source project, prepping for the summer internship and finishing up the Types book. Also, starting Little Typer and Mathematics for Programmers.