39 private links
Restore and save multi-display resolutions and arrangements on macOS
77 выдающихся травелогов от Афанасия Никитина до Эдуарда Лимонова
A gentle introduction to why Webpack exists, what problems it solves, and how to use it.
How an emerging CSS standard can fix old problems and raise the bar for web apps
When optimizing for long-term maintenance, we have a few choices. I like to bet on monorepo. A monolithic repository is a simple idea. You organize the code of all your services in a single repository. It has a few advantages over using a separate repository for each service.
Reusing code is easy. Once you abstract a coherent unit of code into a module, you can then import it from anywhere.
Continuous integration runs tests against the entire monorepo, so once PR is merged you bump the version of all sub-services and there is no doubt what versions are compatible with each other. Version 1.2 of service A is always compatible with version 1.2 of service B. This is why complex projects with multiple dependencies often use monorepo as well (Babel, React, Angular, Jest). Due to the very same reason, large-scale refactorings are also feasible.
You maintain one third-party dependencies tree. It's too easy, especially with all NPM goodies, to end up with two different versions of the same library and having to sync them across different repositories manually gives me a headache. Having one main package-lock.json is a real time-saver.
Monorepo forces collaboration, it encourages having the same coding style by having a single config for your linter/code formatter/module bundler and so on.
Custom Elements are the lynchpin in the Web Components specifications. They give developers the ability to define their own HTML elements. When coupled with Shadow DOM, Custom Elements should be able to work in any application. But things don't always work seamlessly.
This project runs a suite of tests against each framework to identify interoperability issues, and highlight potential fixes already implemented in other frameworks. If frameworks agree on how they will communicate with Custom Elements, it makes developers' jobs easier; they can author their elements to meet these expectations.
Custom Elements and Shadow DOM don't come with a pre-defined set of best practices. The tests in this project are a best guess as to how things should work, but they're by no means final. This project is also about driving discussion and finding consensus, so don't be afraid to open a GitHub issue to discuss places where the tests could be improved. ✌️
Unifying the frontend development toolchain
Sapper is a framework for building web applications of all sizes, with a beautiful development experience and flexible filesystem-based routing.
Snowpack is a modern, lightweight toolchain for faster web development. Traditional JavaScript build tools like webpack and Parcel need to rebuild & rebundle entire chunks of your application every time you save a single file. This rebundling step introduces lag between hitting save on your changes and seeing them reflected in the browser.
Everything on npm, delivered directly to your browser.
Free with the July 2000 edition of Fast Car Magazine. Mixed by Dem 2.
Learn how to avoid sudden layout shifts to improve user-experience
Тест (via Намочи манту)
uDiscoverMusic.com takes an in-depth look at some of the most influential music in the world – and the artists that created it. Full of news, reviews, features, videos, curated playlists and quizzes, it’s an essential home for fans of all types of music. Among its contributors, the site has a team of respected authors and journalists who are passionate about what they do, with decades’ worth of experience in print, online, radio and TV journalism.
We set out to make the WordPress project bootstrap process painless and future-proof. To do this, we use a combination of Jenkins, some custom WP-CLI commands, and a custom Pantheon upstream.
An extensive guide on how to style for RTL in CSS
On MacOS High Sierra I had to create the directory KeyBindings and then create the file switching the ^ and @ symbol. Then I had to close Atom and open it again.
{
"@^\UF701" = "noop:";
"@^\UF702" = "noop:";
"@^\UF703" = "noop:";
}
This site contains 29761 parsed manpages from sections 1 and 8 found in Ubuntu's manpage repository. A lot of heuristics were used to extract the arguments of each program, and there are errors here and there, especially in manpages that have a non-standard layout.
It is written in Python and uses bashlex, a bit of NLTK (to find the interesting parts of the manpage), a little d3.js (for the connecting lines graphic) and Flask. It is served with uwsgi and nginx. Source code is available on github.
My name is Idan Kamara and you can contact me at idan at explainshell dot com for any questions or suggestions.
Parsec works simply as a screen-sharing technology. You either share your screen with yourself (remotely), with your friends (for co-op), or with gamers around the world (to play your favorite games).
Ежечасный беспорядочный скроллинг ленты в соцсетях, беглые взгляды на ТОП-5 новостей и последующее неизбежное залипание на них, а также бесчисленные переходы по...