20 random bookmarks
Тут будут ссылки на всё-всё, что я найду интересным
Тут будут ссылки на всё-всё, что я найду интересным
We backed up Spotify (metadata and music files). It’s distributed in bulk torrents (~300TB). It’s the world’s first “preservation archive” for music which is fully open (meaning it can easily be mirrored by anyone with enough disk space), with 86 million music files, representing around 99.6% of listens.
Plenty of books and blogs will tell you how to develop your functional programming skills or teach you algorithms. But if you’re already pretty good at that stuff, you might be better off trying to become a more virtuous human being: more in control of your emotions, more able to hold your nerve in times of crisis, and humbler about the institutional power your technical knowledge grants you.
PostgreSQL Query Plan Visualizer add new plan
17:00 - 20:00 - отпустить тормоза. Избегайте наркотиков, но в остальном дайте себе полный карт-бланш в том, что вы себе обычно не позволяете.
20:00 - 22:00 - прислушайтесь к своим чувствам. Включите музыку, побейте грушу, посидите в тишине. У каждого свой метод. На этом этапе важно дать волю эмоциям.
22:00 - 7:00 - сон. Чем дольше, тем лучше. Но важно не валяться, если вы уже проснулись.
07:00 - 10:00 - уборка. Чем больше вы выкинете или подарите кому-то, тем лучше. Делайте это с предельной жестокостью.
10:00 - 13:00 - спорт, массаж, баня (безусловно можно сочетать). Помните о том, что здесь важно почувствовать тело. Вернуться в реальность через ощущения и движения.
13:00 - 14:30 - десять дел. Важно не делать больше, не делать сложного, но использовать этот метод для разгона внутреннего генератора и перевода его в созидательное русло.
14:30 - 17:00 - потоковое творчество. От футбола до рисования. Это очень индивидуально. Принципиально важно на этом этапе создать что-то свое, вернуть вкус творчества и игры.
Макс на Луне. Одна из моих любимых поинт-н-клик игр. С милой анимацией и озвучкой на нескольких языках.
Также есть и другие части, но эта мне нравится особенно.
Most people are not autonomous in their use of computers to solve their problems because they cannot use the languages listed. They must hope for an app to solve their problem. But they can use a spreadsheet to solve their problem!
The sad reality is, however, that today we buy computers that essentially boot into the app store.
Первая — программист закладывает абстракции там, где не следует.
Бритва Оккама ?
Вторая проблема — наоборот: программист не оставляет шанса поправить его код.
The coolest thing I've seen today!
Доклад с описанием истории электронной почты и некоторыми техническими подробностями
Из комментариев под статьёй:
Кто-то не очень понимает, что ORM в первую очередь - маппер. Да, и называется он Object-Relational Mapper. Отвечает за взаимосвязь между реляционными данными и объектно-ориентированным миром.
Тот, кто хотя бы раз сталкивался с опечаткой при загрузке поля в объект, уже не задаёт вопросы, оправдан ли ORM. Когда за тебя связку делает кодогенератор с нулевой возможностью ошибки на любой сложности схеме - начинаешь ценить надёжность такого решения.
Что касается SQL. ORM не может в принципе покрыть весь синтаксис SQL. И не должен, это не его задача. Его задача - сделать простым синтаксис 95% случаев, когда дальше джойна и WHERE ничего не надо. ORM не мешает использовать чистый SQL, а чаще всего может его дополнить, переводя результат сложного запроса в набор объектов.
Про автомобили, химию, эксперименты, скандалы, историю, политику, сферы влияния, махинации, войны итд итп.
3 часа восторга!
Whenever I explain my research at Google into mobile text editing, I’m usually met with blank stares or a slightly hostile “Everyone can edit text on their phones, right? What’s the problem?”
If you want a single piece of advice to reduce your bug count, it’s this:
Re-read your code frequently. After writing a few lines of code (3 to 6 lines, a short block within a function), re-read them. That habit will save you more time than any other simple change you can make.
If you make a div with overflow:scroll;transform:skewX(45deg); and give it a child element with transform:skewX(-45deg); you can make a diagonal scroll bar. It seems pretty useful if you want to hurt people's eyes.