After a bit of a break, I still resume my work to keep me busy as the weather gets colder and the slow fall and winter arrive. It reminds me almost of college, but I am my own taskmaster, and have to keep myself motivated and on task.
2018 October 9, Tuesday
Tonight, I finally touch one of my projects again - faithprc.org's website rewrite. After having finally decided on a layout concept (and that I am fine writing it in simple media-query inline css), and after finding a better markdown solution for React, I finally fixed my issues with internal links not being as fast as the navigation links. I hope I can finish this otherwise small project pretty soon, just to get another one off my plate, and because this does help our church out by having a website we can make changes to better.
2018 October 16, Tuesday
My goal tonight was to try to find a good direction forward on my Genealogy project. Technologies I looked at include Redux, GraphQL, Rust, ArangoDB, and a few related projects and technologies. I learned more about where exactly GraphQL sits in a web application architecture - not necessarily at the database layer. It might be possible to implement a GraphQL server at the database level, but it forms a rather strong connection between the storage mechanism and the HTTP api. This is the ideal place where GraphQL is meant to sit - as an as an alternative to a REST-based API. ArangoDB is a graph database, which makes it easier to model data, but the storage api is a bit lover level of an abstraction than GraphQL queries. With GraphQL, the concern is about business-logic type entities and the relationships between them, and at the ArangoDB level, everything is either a vertex or edge, both types of documents with arbitrary data attached. The two are similar, and I love ArangoDB's model as it allows for semantic data storage, but is a bit more difficult to work with than GraphQL, based on my experiences with ArangoDB's api. I'm still open to Foxx implementing GraphQL, but so far, the better solution appears to be GraphQL above the server and business logic layer.
I think I'll start building a GraphQL implementation in server side backed by ArangoDB queries, and see how it goes.
2018 October 18, Thursday
I was also pleased to discover a
--progress option for webpack that I plan to use at work.
2018 October 23, Tuesday
I'm starting to learn GraphQL in earnest, using a wonderful resource - a Fullstack Tutorial for GraphQL. For my projects, I shall be first trying Apollo Client, and I'm not sure about the server. I could use either graphql-js, or Apollo Server. I have yet to decide, but I think I'll follow the tutorial and see where to go from there. I hope that this simplifies things for my personal projects, and I might even be able to use this for work as well.
2018 October 25, Thursday
More GraphQL learning. I'm going through the exercise of building the
hackernews-node clone to learn GraphQL. I paused once I had the basic thing running to see about integrating Flow, and I wound up with a pretty solid combination of Node + Babel + Flow + ESLint, using
babel-node to do development with, and a command to invoke Babel. Flow's setup instructions need to get with the modern Babel-post-v7 times, but that Pull Request should be merged soon, hopefully.