Cozumel travel guide
A brief guide on having a successful trip to the SCUBA diving island paradise of Mexico, Cozumel.
A brief guide on having a successful trip to the SCUBA diving island paradise of Mexico, Cozumel.
Embark on a journey to learn about how OOP has been done throughout JavaScript's history, with our destination set on understanding how we should do it today and what all the modern syntax is doing for us under the hood.
A deep dive into neovim config, controlling focus, pane management with edgy.nvim, and a little open source contribution to boot!
Imagine a world where something as simple as editing text becomes a fun and challenging puzzle to be solved.
Thinking about the same concept in a different way is often a big unlock to deeper and clearer understanding
Identity functions make it possible to provide a much better developer experience at API boundaries by improving the type
I've learned a lot from this course, and use this note to record bits I want to remember and riff on some of my observations.
TypeScript playground has a URL param to specify the code content. This makes it possible to always have up-to-date playground links for example code!
Seeing example code with syntax highlighting is great, but sometimes you've just gotta run the code and see what happens...
Whenever possible, make code interactive. Interaction is the single most effective way to teach anything, including code!
TypeScript is a structurally typed language, but can have nominal typing semantics using a technique called type branding
Theory and practice are often at tension with each other, but they shouldn't be. Each benefits from a health dose of the other.
How I transform the code in my markdown files into beautifully rendered snippets on this site.
Pulling together a bunch of language tools can be a bother, but I find automated formatting & code review tools are worth the hassle.
A structural type can be "branded" to add context to values by using the type system for annotations as is done with nominal types. Doing so makes them incompatible with structurally equivalent types.
Cross-origin resource sharing requests let a user access resources on one site from another, but only if the server performs the secret CORS handshake with the browser.
An improvised pasta dish made to drawn inspiration from the flavors and sounds of the Middle East. It is hearty and surprisingly bright.
Assertion functions let the programmer narrow types using a named function, making type narrowing much more readable.
Being hard to misuse is an underrated characteristic of exceptional APIs, especially when the possibility needs to be exposed to the client for advanced scenarios.
An overview of how I avoided needing to copy+paste my notes into blogging software to publish them.
There are many ways to Svelte a component...
Special characters aren't valid in URLs, so custom slugs are used to make links easier to read.
Structural types are only concerned with the shape of data, rather than the names of types. This makes data types more compatible.
Tips from my travels to PDC, including where to eat, stay, and visit!
Various tips, hotkeys, and software I use on my Mac that I find to be broadly helpful and think everyone should know about.
When building a B2B product, most customers will want to invite their team members. This post explores how I added support for that to Doc Duck, a documentation feedback solution I'm building.
The way(s) a product or service benefits its target customers and the statement describing it.
A curated list of my favorite Seattle area cafes to sit, sip, and relax or work.
A list of some of my favorite places to get a meal in the Seattle area.
As a tech guy, I'm often interested in the latest and greatest gadget. This has historically meant the biggest and best smart phone, but no longer...
Some common scenarios and how to resolve them using git.
10 questions to ask about any startup idea that will help you evaluate if it's worth pursuing.
These are my reflections on how I view work-life balance, and how that view has changed over time.
A position statement explains how a product fits into its market.
Microeconomics tool for quantifying the change in demand for a product in response to price changes for substitute goods.
Price changes impact the demand for goods and services. PED is a microeconomics tool for quantifyng that impact.
The market for currency and the mechanics that govern it, such as interest rates, money supply, and the required reserve ratio.
Setting up Storybook on a SvelteKit project doesn't work out of the box using the config tool. This guide walks you through a few extra steps needed to get SvelteKit and Storybook running.
Perhaps the icon of a generation, avocado toast is a delicious and nutritious way to start the day.
Cognitive biases lead people to evaluate options in context. There are strong biases that impact decision making when there are one or two options.
People are biased against deciding on a single option. Multiple options enable people to compare and make informed decisions.
An overview of my notes on microeconomics.
Understanding the costs facing a business is an important part of evaluating its profitability. There are two categories of costs - fixed and variable.
The most valuable alternative that must be given up.
Price elasticity measures how much the demand for a good changes in response to price changes.
The incremental value gained from have one more of something.
Consumer demand looks at the three types of relationships between goods and how price changes to one product affects demand for another.
The factors that impact the price of goods and services, which in turn drives supply and demand changes.
An area of microeconomics focused on how price influences the behavior of producers and consumers.
UI shadows should create an illusion of depth. For the best illusion, imitate reality.
When there is a conflict in priorities between one party (the principal) and another party (the agent) that executions on their behalf.
Grapow is a sweet & spicy Thai dish made with ground meat, Thai chilis, and Thai basil. This dish is often requested by friends joining for dinner.
Some webpages have nice previews when shared on social media. These can be specified in the page HTML. Previews make the site user-friendly before users even visit it!
Value innovation is how companies offer dramatically higher value at lower costs, escaping competition.
Visual focus is naturally drawn to contrast. Use contrast in design to direct attention.
The less differentiated the options are, the harder it is to choose one.
A decision dichotomy based on if the decision can be mitigated or reversed.
Giving unprompted advice is ineffective. Instead, lead people to ask for advice.
Self-reinforcing cycles that act as compound growth systems. Negative cycles are vicious, positive cycles are virtuous.
These simple behaviors are often challenging, but provide a rock solid foundation for the rest of life.
Customer attributes can be grouped as demographic, psychographic, geographic, or behavior.
Utility is the microeconomics concept for how much satisfaction, pain reduction, happiness, or value a buyer gets from a product or service.
Blue oceans are markets that haven't been created yet. They are lucrative business opportunities.
Great strategies have a clear focus, diverge from competition, and are easy to explain.
The line on a strategy canvas showing the emphasis a company places on each factor of competition in its industry.
Group consumers into segments, determine which to target, and estable the product's position for them.
Blue ocean strategy is about creating new markets to escape competition.
The factors that companies/products within an industry typically compete on to provide value to customers.
Helps identify which factors a business should eliminate, reduce, raise, and create. Typically used with a strategy canvas.
An analytical tool that shows how much emphasis companies place on value areas in their industry.
Crowded markets where customers have many options to choose from, resulting in cutthroat competition.
The interactions a business has with customers and the strategies around those interactions.
A modern alternative to a business plan. It has 9 sections with details of the business, its customers, and how it provides value.
The pain caused by a lack of infrastructure proves the infrastructure is necessary.
Distribution channels are how products and services get from a business to its customers.
New content creates new organic inbound traffic and retains the audience. Old content creates more value from new audience.
Any system in which growth is proportional to the principal, added to that principal, and then repeated.
Compound growth is exponential. Each compounding period generates more growth than the previous one.
The groups of people a business aims to serve.
A tool for identifying and evaluating the market conditions for a product or service.
A repeating cycle of receiving input, processing it to create output, evaluating that output, and evaluating results to improve future processing.
The setup and workflow I use to retain what I learn and deepen my understanding.
The same things happen across domains and contexts all over the world. Very little is unique or novel.
Both positive and negative feedback are important, but on high performing teams positive feedback outweighs constructive feedback 5 to 1.