-
Databases
Custom Fields with a Normalized Relational Database
Last time we discovered that it’s relatively easy to build a Grid View application using a Normalized Relational Database. True, it was a toy example with a small number of fixed fields. However, given some reasonable functional limitations, we showed how it could scale to manage large collections with 100,000 items or more.
-
Databases
Normalized Relational Database Grid View
Let me take you back to a time before NoSQL, when E.F. Codd’s relational rules and normal forms were the last word in database design. Data was modelled logically, without redundant duplication, with integrity enforced by the database.
-
Databases
Cloud Architecture
The Ubiquitous Database Grid View
You’re building a full stack application that enables teams of people to do … something. In order to manage the process of doing something, the teams collaborate by creating, filling in, finding, sorting and archiving forms. There will be some industry specific bits of workflow that let you convince yourself that you’re not building the same thing over and over again.
-
Spreadsheets
Cloud Architecture
Making Spreadsheet Snapshots work with Insert and Delete
When you’re implementing a cloud spreadsheet, it’s tempting to think of it as just another kind of database. Each row of the spreadsheet is equivalent to a row in a database. Each column in the spreadsheet is equivalent to a column in a database. Yes, spreadsheets don’t have schemas. Yes, spreadsheets can have lots of columns. However, there are plenty of examples of NoSQL databases that are schemaless and have wide column stores.
-
Computer Graphics
Compiling Unreal Engine
I want to use Unreal Engine 5 as a starting point for implementing Navisworks like features with a modern graphics pipeline. Every journey starts with the first step. Which in my case is compiling Unreal Engine from source code.
-
Gear
My Desk Setup
I know what you’re thinking. How do I manage to put out high quality content, week after week, without fail? What kind of desk setup can make me this productive? Well, today you get to find out.
-
Cloud Architecture
Cambridge University
Navisworks
Autodesk
Choosing a Language Stack
First off, let’s get our terms straight. What do I mean by Language Stack? Is that the same as a Tech Stack, or is it more like a Software Stack? Then again, what’s the difference between a Tech Stack and a Software Stack?
-
Cambridge University
Navisworks
Autodesk
A Career in Business Cards
I have a lot of business cards. Every significant change in my career was accompanied with a new set of business cards. Business cards came in sets of 500 or 1000. I used at most 50 out of any set, which means I have lots left over. I’ve used them to play games when the kids were young, to scribble notes on, and as cue cards when public speaking.
-
Spreadsheets
Cloud Architecture
AWS
Data Structures for Spreadsheet Snapshots
I have a plan. After a round of brainstorming and benchmarking, I’ve decided to use Event Sourcing to store the sequence of operations applied to a spreadsheet. Every so often I’ll create snapshots of the current spreadsheet state. I can then load the spreadsheet at any point in time by loading a snapshot and applying changes from that point on in the event log.
-
Organizational Anti-Patterns
Organizational Anti-Patterns #7: Product Managers
Obviously, I’m not suggesting that the entire role of Product Manager is an anti-pattern. Somebody has to identify customer needs, understand business objectives and articulate what success looks like. The Harvard Business Review says that great product managers need highly developed emotional intelligence to forge connections with internal and external stakeholders, and to sway them to their point of view. Not usually a core competency for more engineering focused roles.