constructed startin with 1x1mm square; last square is 144x144
Published on

Upcoming Website Updates

  • avatar
    Curtis Mitchell

I'm closing in on one year since I've written a new piece for this site, but I wanted to leave one now to avoid the impression I'm no longer maintaining this project. Part of the reason has been a recent move and starting my current role at NASA Ames back in May. More recently I've been busy working on refactoring parts of the site, primarily on the frontend. When I first created the site I didn't spend much of my effort on the client-side code. At the time I was enrolled in Springboard's machine learning engineering program, and since I was spending a lot of my time working through that curriculum I wanted to focus on this site's content and to a lesser extent getting the backend up and running (the backend is built on Django, which I hadn't previously worked with).

In any case it's now time for an upgrade. There's nothing obviously wrong with the site as it is, but there are some additional optimizations I could make and newer React patterns and best practices I'm keen on incorporating. First and foremost, I'm migrating the frontend framework I'm using from Create React App to Next.js. Next is also a React-based framework, but it incorporates several new features I haven't previously used such as server-side rendering and asset optimizations that should improve loading and rendering performance. Additionally, I'll be switching from standard JavaScript to TypeScript for better type safety, updating Material-UI to utilize server-side rendering, and incorporating modern React patterns like hooks and functional components. I have been attempting to perform this migration more directly, but after several cumulative hours of troubleshooting, reading documentation and Stackoverflow, and banging my head against the wall I've decided instead to wholly rebuild the frontend as a new Next app. Dealing with various build and undefined errors got frustrating and since this is a side-project I feel it should be a mostly enjoyable experience! Once the transition is complete the content should all be the same, but the final UI might look slightly different. And once that's completed (hopefully by New Year's!) I have a lot of interesting posts planned such as finally writing a walkthrough of the Urdu number classifier (note: this app is not currently available) and a post about the history of cryptography.

Stay tuned!