Random Pain
I went to bed last night feeling a little sore on my right side, and I couldn't figure out why. My little girl has a cold right now, and I figured maybe she passed it to me, and this was the first symptom. When I woke up this morning, it felt like I had pulled every muscle in my rib area on my right side, to the point where I can't even take a deep breath. I kind of remember trying to reach for something at some point yesterday, but I can't exactly point to one specific thing I did that caused this to happen. As the day progressed, the pain strengthened, and by the time I got home from work, I basically couldn't move without being in breath-taking pain. I'm 33 now, and I think this is just part of getting older. I'm sure I must have strained a muscle at some point and I'm paying for it now. I was able to lie still for a little while, and the pain subsided to a manageable level, but I ended up with much less time to work on my code and a limitation of focus due to the residual pain. So, instead of going into depth with my course on Udemy or working on my freelance project for my aunt, I succumbed to watching videos on Youtube by MPJ.
I was able to get through his entire series on functional programming and actually learned quite a bit. His style isn't the greatest, but there was some very useful information in there. He covered everything from higher-order functions to monads, along the way touching on functors, currying and promises. I've covered pretty much all of this material in other tutorials, but some of these topics are still pretty difficult to grasp for me. I have never covered monads, however, and from what I understand from the video, they are basically an implementation of flatMap on streams and promises, basically flattening out data structures to be able to iterate through them more easily. I've been using monads this whole time whenever I've created a fetch call and I just didn't know it. In a fetch call, the response is taken and parsed from JSON format into JavaScript. This action is the application of flatMap.
Last night, I started on the website for my aunt. I settled on creating it with Gatsby and using Material UI as a component library. I actually had some difficulties when I started the project and trashed the entire thing 2 or 3 times before landing on the working implementation I have now. I was messing around with different Gatsby themes and also tried out Bootstrap instead of Material UI before deciding I would much rather work with Material UI. While Bootstrap is much simpler to work with, Material UI allows you to be much more flexible. It gives you some basic implementation of different components, but from there, you have much more freedom to customize however you want with CSS. I really like the way Material UI does CSS by creating objects, which I'm sure has a name but I just don't know it. I was able to get the routing and navbar implemented before I had to pass out. The navbar isn't responsive yet, but I'll definitely add that in later. The website, as of now, has 5 main pages, but we may end up changing that to make it a bit simpler. The way they have their site right now is a bit wordy; there's a lot of information and I tend to feel like the user will get overwhelmed by this. So, we're going to try to simplify that a bit by adding pass-through buttons that either open up modals with the information or separate nested pages. Either way, it will give the site a much cleaner look overall without losing that valuable information.
Until tomorrow!