fun
Follow the fun
An Article by Dave RupertAnother great dissertation from Mark Brown of Game Maker’s Toolkit: The Games that Designed Themselves. It’s the radical idea that designers should ignore their preconceived notions and look to the game itself to find out where the development should lead. How does something design itself? Well… the answer is: Prototypes.
A lot of great indie game masterpieces are the result of experimentation and early gameplay demos that changed the course of game’s development. As Brown points out, there’s a whole history of groundbreaking games that were developed “almost by accident” where bugs and glitches were turned into features.
Exit pages
An Idea by Brad EnslenToday I made an Exit page. So many people end their visit by hitting the Back button on their browser. The exit page is a last attempt to get them to explore the Blog Directory to find an entertaining blog. Or failing that to try a search on a search engine they may have never tried before.
The Whimsical Web
A Website by Max BöckA curated list of sites with an extra bit of fun.
APL386 Unicode
A Font by Adám BrudzewskyAPL font based on Adrian Smith's APL385 font with a fun, whimsical look, inspired by Comic Sans Serif.
APL (named after the book A Programming Language) is a programming language developed in the 1960s by Kenneth E. Iverson. Its central datatype is the multidimensional array. It uses a large range of special graphic symbols to represent most functions and operators, leading to very concise code. It has been an important influence on the development of concept modeling, spreadsheets, functional programming, and computer math packages. It has also inspired several other programming languages.
The Taft Test
A Tool by Maciej CegłowskiDoes your page design improve when you replace every image with William Howard Taft?
Party in a shared google doc
An Article by Marie FoulstonIn the absence of the cultural spaces my work usually occupies, I’ve found myself chasing the social rituals they evoke and the reverence they embody through abstract digital recreations and pastiche. In these spaces, familiar feelings and experiences reverberate and mix with new ones.
They are events that all at once feel both practical and absurd.
In a time of such flux and uncertainty, maybe that is as good a place as any to be.
Deadlines are bullshit
In software development deadlines are a necessary evil. It is important to understand when they are necessary, and it is important to understand why they are evil.
- External vs. internal deadlines
- Why are internal deadlines evil?
- Engineers who love their work
External vs. internal deadlines
When are deadlines necessary?
- Contractual obligations
- Technical liabilities (e.g., dependency EOL)
- Compliance, government, investors, and other external stakeholders
What do all of these deadlines have in common? They are all important. They are all deadlines that cannot be missed. They are all external.
When are deadlines evil?
- Your manager says you have a deadline
- Your software development methodology says you have deadlines
What do all of these deadlines have in common? None of them are important. They are arbitrary. They are all internal. They are all bullshit.
Why are internal deadlines evil?
- Estimation: When estimating engineering work a substantial time investment is required by an engineer in order to get an accurate estimate.
- Misaligned Incentives: There is an incentive to lie and give estimates much longer than the feature is truly expected to take.
- Low Morale: Deadlines are likely to be missed often. Repeated failure has a cost to the morale of the team.
- Micromanagement: Deadlines are wielded by middle managers as a whip to harass and annoy engineers working on features.
- High Stress: When engineers feel the pressure of other stakeholders holding deadlines over their heads it creates an environment of high stress.
- High Turnover: On teams with high turnover rates the best engineers have an easy time finding new work and leave quickly, the worst engineers have a difficult time finding work and remain. This selects for a lower quality team over time.
Engineers who love their work
The resolution is simple. Never have internal deadlines. Operate on a prioritized and ordered list of features. Estimate only when necessary to prioritize and do so in a t-shirt sizing way. Trust your engineers and they will begin to love their work. Engineers who love their work are happy and productive.