Some really weird product decisions this year. E.g. they are also hellbent on showing me "shorts" in my search results. I can't think of a single occasion lately when I didn't want to see the full description and comments and they make it hard to get directly to the video. Worse still they are applying this "shorts" concept retrospectively to any video that happens to be short in length, meaning I get videos that were never intended for that format by the creator.
Fortunately this bookmarklet (which i've named "eat my shorts" in my bookmarks) does the job:
> With Yarn Workspaces, installing packages across workspaces becomes faster and lighter. Additionally, it prevents package duplication across workspaces and also makes it possible to create links between directories that depend on each other, ensuring that all directories are consistent in the monorepo.
Nice that they included a footnote about pnpm. Makes me want to write a counter article about using pnpm instead. pnpm is faster than yarn 1 (variable with yarn 2, depending on use) and workspaces are just easier. Lest we forget hoisting and dependency dedupe, which is far and away superior with pnpm.
My pnpm + TS setup is as follows:
- /shared/ directory at root that contains tsconfig.base.json, tsconfig.eslint.json, tsconfig.json (which is only symlinked to, has relative settings for the directories it's linked into)
- tsconfig.json at the root, extending shared/tsconfig.base.json, including all things that an editor might care about
- /packages/ (or /services/) at the root
- /packages/{package}/tsconfig.json -> symlinked to -> /shared/tsconfig.json
This setup allows various editors to validate code in any directory that might have TS (and JS!), editor plugins that use ESLint to have a TS config reference, and allows deployment and/or build processes to operate on individual entities in packages|services without having to build the world. Note that this isn't ideal in monorepos where you want to build the world. In monorepos where I have packages and services, for example, and the services are dependent on the packages build built, I leverage pnpm's recursive script ability with filtering to build some of the world, but not all.
This stuff has got SO MUCH better over the past few years.
The hardest thing about it these days is mainly that there are so many historical artifacts, so if you're trying to figure out how to use packaging there are a lot of outdated resources.
- [98.css](https://github.com/jdan/98.css): A Windows 98 inspired framework for building faithful recreations of old UIs.
- [Office 97 clipart in svg format](https://archive.org/details/mso97clipart)
- [XP.css](https://github.com/botoxparty/XP.css): A Windows XP inspired framework for building faithful recreations of operating system GUIs. An extension of 98.css.
- [7.css](https://khang-nd.github.io/7.css/)
- [System.css](https://sakofchit.github.io/system.css/) Retro Apple-inspired UI
- [Commodore 64 CSS](http://pixelambacht.nl/2013/css3-c64/)
- DOS: [BOOTSTRA.386](https://github.com/kristopolous/BOOTSTRA.386): A vintage 1980s DOS inspired Twitter Bootstrap theme
Fortunately this bookmarklet (which i've named "eat my shorts" in my bookmarks) does the job:
raw: