Full-stack Foray

The name for this website comes from the word my friends use to describe when I space out and completely lose all awareness of the world around me, a state of being in "Fahnland". I used to regularly go into this space when reading Vince Flynn novels, and someone could be talking to me directly, and I would be oblivious. This website started as a research idea from high school, but I have not completed the research or website to share it until now. You can read more about the main purpose behind this website here.
I originally wrote this website with HTML and raw CSS, but in college, I was curious to learn a new language and try something new. A friend raved to me about Tailwind CSS which is a JavaScript framework replacement for CSS. I also heard that React is one of the most popular JavaScript libraries/frameworks nowadays and works well with Tailwind. So away I went, making the HTML code into React components and following a great MERN stack guide on YouTube. Overall, it was a lot of work to make the website, and I'm not sure if rewriting it in modern languages was worth it in the long run, especially with great open source blogging options available. Tailwind is nice CSS shorthand, but I'm really not doing anything that spectacular, and the classNames tend to clutter the divs. State and Context are also concepts that continue to elude me. React also tends to make everything complicated and convoluted by making functions and callbacks for basic features. It was certainly good experience to learn new languages though. I learned about how to integrate AWS into the project to store images and a MongoDB database to store text and the links. I learned how to use packages to rate-limit login attempts, how to handle passwords, authentication, and salts. I learned that the Google Login API is...messy and difficult to deal with (I will admit there might be some user error involved as well). I learned about CORS and a bit about browser security.
At the end of the day, I ended up just installing the Ghost blog and MySQL. It works great, and also integrates analytics so I can see what pages are popular and get the most clicks. This saves me from integrating Matomo, or something similar into the project. Also, there is something to be said for pushing the responsibility of making secure software onto someone else instead of "home-rolling" it yourself. At the end of the day, I just wanted to be able to blog, and not have to edit static React components cluttered with inline Tailwind, and I learned enough about React to know that I don't want to do it full-time, so I'm okay with sidelining the MERN blog website in favor of Ghost. Next time, I'll try something else like Ruby on Rails or something in Python.