• Тренируемся дома: отжимания по программе Пола Уэйда

    • Перевод

    image


    Представляю программу Тюремных Тренировок Пола Уэйда. Начнём с серии классических упражнений со своим весом для верхней части тела — отжиманиям.


    Тюремные Тренировки представляют собой самые лучшие и эффективные методы обучения работе со своим весом, из когда-либо существовавших. Многие из этих забытых, но действенных техник находятся на грани исчезновения. Современный бодибилдинг меняет наше мышление, навязывая свои убеждения. И даже заключённые сейчас получили доступ к тренажёрным залам.


    Серия сосредоточена на цепочке из 10 последовательных упражнений. Когда освоите одно упражнение, то перейдёте к следующему и так далее…
    Мы называем базовые упражнения как «10 уровней», и достигнув 10 уровня, вы станете сильнейшим настолько, насколько это возможно для человека в этих движениях. По этой причине, последняя ступень именуется «уровнем мастера». Вам станет понятнее, как это работает, если дополнительно ознакомитесь с книгой Тренировочная Зона (Издательство Питер).

    Читать дальше →
  • Мышление письмом



    Начните записывать мысли, чтобы усилить мышление. Этот совет я слышал много раз, но только в этом году решил сам попробовать. Результаты так впечатлили, что я решил описать опыт и поделиться теоретическими рассуждениями.

    Что же я получил после полугода использования мышления письмом?
    Читать дальше →
  • Больше разработчиков должны знать это о базах данных

    • Перевод
    Прим. перев.: Jaana Dogan — опытный инженер из Google, которая в данный момент занимается вопросами наблюдаемости production-сервисов компании, написанных на Go. В этой статье, снискавшей большую популярность у англоязычной аудитории, она в 17 пунктах собрала важные технические детали, касающиеся СУБД (а иногда — распределённых систем в целом), которые полезно учитывать разработчикам крупных/требовательных приложений.



    Подавляющее большинство компьютерных систем отслеживают свое состояние и, соответственно, нуждаются в некой системе хранения данных. Я накапливала знания о базах данных в течение длительного времени, попутно совершая ошибки при проектировании, приводившие к потере данных и перебоям в работе. В системах, обрабатывающих большие объемы информации, базы данных лежат в сердце системной архитектуры и выступают ключевым элементом при выборе оптимального решения. Несмотря на то, что работе БД уделяется пристальное внимание, проблемы, которые пытаются предусмотреть разработчики приложений, часто оказываются лишь верхушкой айсберга. В этой серии статей я делюсь некоторыми идеями, которые будут полезны для разработчиков, не специализирующихся в этой области.
    Читать дальше →
  • 68 непрошеных советов

    • Перевод
    Это перевод самого недавнего поста Кевина Келли, со-основателя журнала Wired, писателя, фотографа, футуролога.


    Сегодня мой день рождения. Мне 68. Хочется пододвинуть кресло-качалку и пораздавать советы юнцам. Вот 68 непрошеных советов, которые я предлагаю всем вам как подарок ко дню рождения.

    • Научитесь учиться у тех, с кем вы не согласны, или даже тех, кто вас раздражает. Нет ли истины в их убеждениях?
    • Энтузиазм эквивалентен 25 баллам IQ.
    • Всегда требуйте дедлайн. Дедлайн избавляет от лишнего и заурядного. Он останавливает попытки достичь совершенного, поэтому вам приходится делать необычное. Необычное лучше.

    Читать дальше →
  • 3D-печать: три с половиной дома за четыре дня

    • Перевод

    Компании COBOD и PERI продемонстрировали сверхскоростное создание жилых домов на выставке Bautec. Фото:3dprintingmedia.network

    Один 3D-печатный домик в день

    Посетителям Международной строительной выставки Bautec, прошедшей в период с 18 по 21 февраля 2020 в Берлине, была предоставлена уникальная возможность увидеть процесс создания жилого дома в течение одного дня, благодаря технологии трехмерной печати. Датская компания COBOD, занимающаяся строительством с применением 3D-печати, совместно с компанией PERI Group взялась за амбициозный проект, чтобы продемонстрировать, как строительный 3D-принтер способен напечатать дом менее чем за 24 часа.

    В ходе выставки COBOD и PERI успешно напечатали 3,5 дома площадью 64 квадратных метра каждый. Четвертый дом не был завершен, потому что партнерам так же предстояло создание двух 3D-печатных логотипов для выставки Bautec. В целом, компания COBOD заявляет, что печать логотипов в 3D эквивалентна печати 8 квадратных метров дома в час.

    Посетители Bautec могли наблюдать за работой крупноформатного принтера BOD2 в период с 9:00 до 17:00. Таймлапс-видео с каждого дня печати теперь доступны для тех, кто не смог присутствовать на мероприятии лично.
    Читать дальше →
  • Мой путь к секционированию в PostgreSQL



    Когда мы перестаем контролировать размер таблицы — обслуживание и обеспечение доступности данных становится нетривиальной задачей. Я с такой проблемой столкнулся уже в продакшне, данных с каждым днем становится больше, таблица не влезает в память, сервера отвечают долго, но решение было найдено.

    Привет, Хабр! Меня зовут Алмаз и сейчас я хочу поделиться методом, который помог мне реализовать секционирование.
    Читать дальше →
  • Топ ошибок со стороны разработки при работе с PostgreSQL

      HighLoad++ существует давно, и про работу с PostgreSQL мы говорим регулярно. Но у разработчиков все равно из месяца в месяц, из года в год возникают одни и те же проблемы. Когда в маленьких компаниях без DBA в штате случаются ошибки в работе с базами данных, в этом нет ничего удивительного. В крупных компаниях тоже нужны БД, и даже при отлаженных процессах все равно случаются ошибки, и базы падают. Неважно, какого размера компания — ошибки все равно бывают, БД периодически обваливаются, рушатся.



      С вами такого, конечно, никогда не случится, но проверить чек-лист не трудно, а сэкономить будущих нервов он может очень прилично. Под катом перечислим топ типичных ошибок, которые совершают разработчики при работе с PostgreSQL, разберемся, почему так делать не надо, и выясним, как надо.


      О спикере: Алексей Лесовский (lesovsky) начинал системным администратором Linux. От задач виртуализации и систем мониторинга постепенно пришел к PostgreSQL. Сейчас PostgreSQL DBA в Data Egret — консалтинговой компании, которая работает с большим количеством разных проектов и видит много примеров повторяющихся проблем. Это ссылка на презентацию доклада на HighLoad++ 2018.
      Читать дальше →
      • +75
      • 28,9k
      • 8
    • PostgreSQL Antipatterns: обновляем большую таблицу под нагрузкой

        Как стоит поступить (а как точно не надо), если в «многомиллионной» активно используемой таблице PostgreSQL нужно обновить большое количество записей — проинициализировать значение нового поля или скорректировать ошибки в существующих записях? А при этом сохранить свое время и не потерять деньги компании из-за простоя.


        Читать дальше →
        • +14
        • 9,9k
        • 7
      • Никто (почти) не знает, что такое авторизация


          За время работы архитектором в проектах внедрения IdM я проанализировал десятки реализаций механизмов авторизации как во внутренних решениях компаний, так и в коммерческих продуктах, и могу утверждать, что практически везде при наличии относительно сложных требований они сделаны не правильно или, как минимум, не оптимально. Причиной, на мой взгляд, является низкое внимание и заказчика и разработчиков к данному аспекту на начальных этапах и недостаточная оценка влияния требований. Это косвенно подтверждает повсеместное неправильное использование термина: когда я вижу словосочетание «двухфакторная авторизация», у меня начинаются боли чуть ниже спины. Ради интереса мы проанализировали первые 100 статей на Хабре в выдаче по запросу «авторизация», результат получился неутешительный, боли было много:
          Читать дальше →
        • Знакомство с XACML — стандартом для Attribute-Based Access Control

            В предыдущей статье мы рассказывали о том, что такое Attribute-Based Access Control и в чем его преимущества по сравнению с наиболее распространенным на сегодняшний день Role-Based Access Control. Пришло время рассмотреть ABAC более детально, через существующий стандарт под названием XACML.

            Стандарт переживает уже третью и, скорее всего, не последнюю редакцию, история его ведет свой отсчет с 2003 года. Курирует и поддерживает стандарт организация OASIS. Этот стандарт описывает необходимые компоненты системы, их назначение, способ их взаимодействия и использования. По сути, он охватывает все, что нужно, до мелочей.

            В данной статье будут рассматриваться способ выражения бизнес-правил в виде политик безопасности, основные компоненты системы безопасности, ее интеграция и другие моменты, стандартом не затрагиваемые, но не менее важные и интересные. Приглашаю всех читателей познакомиться с этими вопросами подробнее. Также приветствуются любые замечания, комментарии, вопросы и критика.
            Читать дальше →
            • +15
            • 43,1k
            • 6
          • Подходы к контролю доступа: RBAC vs. ABAC

              В этой теме хотелось бы познакомить читателей с относительно новым подходом к контролю доступа под названием Attribute-based access control. Знакомство будет происходить на примере сравнения с популярным нынче Role-based access control.
              Читать дальше →
            • PostgreSQL Antipatterns: передача наборов и выборок в SQL

                Периодически у разработчика возникает необходимость передать в запрос набор параметров или даже целую выборку «на вход». Иногда попадаются очень странные решения этой задачи.

                Пойдем «от обратного» и посмотрим, как делать не стоит, почему, и как можно сделать лучше.
                Читать дальше →
              • Как быстро выучить язык, не наступая на грабли? Мнение полиглота

                  Всем привет! Это моя вторая публикация на Хабре, в ней я хочу своими наблюдениями на тему ошибок, которые совершают люди при изучении иностранных языков.

                  Коротко о себе: меня зовут Егор Пак, я преподаю немецкий, английский и испанский, владею еще несколькими языками на хорошем уровне. Опыт преподавания 6 лет, 9 жил и работал за рубежом. Работал как индивидуально, так и с группами, сюда же относятся семьи. Недавно вернулся в Россию, завел канал на Ютубе. Сейчас преподаю в России, как онлайн, так и лично.

                  Дисклеймер: я сторонник комплексного подхода к обучению языкам. Я считаю, что достичь достаточно хорошего уровня (B1-B2) можно за более короткий срок, чем думают многие. Сам я являюсь тому живым доказательством, мой опыт работы с людьми показывает то же самое.

                  Я не пропагандирую волшебные таблетки, мои методы построены на логике и опыте. Банальный пример: когда вы занимаетесь с тренером в тренажерном зале, он пишет вам план тренировок и питания, но заниматься с весом и готовить еду предстоит вам лично. Для получения видимого результата необходимо заниматься регулярно, не пропуская занятиями неделями. От сидения на диване прогресса не будет.
                  Читать дальше →
                • Как заговорить на английском через месяц. 9 простых и проверенных шагов

                  Хабр, привет!

                  Меня зовут Марина Могилко, я кофаундер онлайн-платформы LinguaTrip.com.

                  Мы с командой помогаем людям выучить язык и поступить в зарубежный университет. Я знаю, что за месяц английский не выучишь, но иногда бывают ситуации, когда надо срочно подтянуть язык — предстоит поездка за рубеж или намечается работа в англоязычном проекте. А возможно, просто нет больше сил учить язык и хочется уже начать на нём разговаривать. Для таких случаев мы подобрали простые шаги, которые доступны любому работающему человеку с часом свободного времени в день.

                  Все советы рассчитаны на тех, кто уже обладает минимальным уровнем английского — учил его в школе или на курсах. Но заговорить через месяц смогут и те, кто только знакомится с языком, правда, им будет труднее. В статье не будет рекомендаций типа «учите язык вместе с носителем языка» или «погрузитесь в языковую среду». Это действенные методы, но они не всегда подходят.

                  Итак, начинаем! Осторожно: под катом мини-словарик на все случаи жизни.

                  image
                  Читать дальше →
                • Почём Грамы в Телеграме?

                    В этой статье я познакомлю вас с деталями экономики и начального распределения главного токена разрабатываемой братьями Дуровыми сети Telegram Open Network — GRM, он же ГРАМ (с одной м).

                    Как обычно, основным источником информации послужит официальный вайтпейпер сети TON, в самом конце, последние пять страниц посвящены описанию монеты и различных деталей, связанных с циркуляцией и правилами распространения. Так же добавим общедоступную и не такую общедоступную информацию, чтобы примерно представлять, что случится с этим токеном, какая цена справедлива на текущий момент и как она, вероятнее всего, будет изменяться.
                    Читать дальше →
                  • Эволюционирующие клеточные автоматы



                      Соединим клеточные автоматы с генетическим алгоритмом и посмотрим, что из этого получится.

                      В статье присутствуют Gif (трафик!) и контрастные картинки. У эпилептиков может случиться эпилептический припадок.
                      Читать дальше →
                    • Разгоняем Google PageSpeed до 100 и больше

                        Google PageSpeed

                        Простые и полезные советы, которые позволят вам максимально разогнать сайт без необходимости закапываться в метриках Google PageSpeed и Lighthouse.
                        Читать дальше →
                      • Руководство по SQL: Как лучше писать запросы (Часть 2)

                        Продолжение статьи Руководство по SQL: Как лучше писать запросы (Часть 1)

                        От запроса к планам выполнения


                        Зная, что антипаттерны не статичны и эволюционируют по мере того, как вы растете как разработчик SQL, и тот факт, что есть много, что нужно учитывать, когда вы задумываетесь об альтернативах, также означает, что избежать антипаттернов и переписывания запросов может быть довольно сложной задачей. Любая помощь может пригодиться, и именно поэтому более структурированный подход к оптимизации запроса с помощью некоторых инструментов может быть наиболее эффективным.

                        Следует также отметить, что некоторые из антипаттернов, упомянутых в последнем разделе, коренятся в проблемах производительности, таких, как операторы AND, OR и NOT и их отсутствие при использовании индексов. Размышление о производительности требует не только более структурированного, но и более глубокого подхода.

                        Однако этот структурированный и углубленный подход будет в основном основан на плане запроса, который, как вы помните, является результатом запроса, впервые проанализированного в «дерево синтаксического анализа» или «дерево разбора» («parse tree»), и точно определяет, какой алгоритм используется для каждой операции и как координируется их выполнение.
                        Читать дальше →
                        • +15
                        • 28,5k
                        • 5
                      • ООП, «святая троица» и SOLID: некоторый минимум знаний о них

                          Необходимое вступление


                          Я не гарантирую, что изложенные здесь трактовки общепринятых терминов и принципов совпадают с тем, что изложили в солидных научных статьях калифорнийские профессора во второй половине прошлого века. Я не гарантирую, что мои трактовки полностью разделялись или разделяются большинством IT-профессионалов в отрасли или научной среде. Я даже не гарантирую, что мои трактовки помогут вам на собеседовании, хоть и предполагаю, что будут небесполезны.


                          Но я гарантирую, что если отсутствие всякого понимания заменить моими трактовками и начать их применять, то код вами написанный будет проще сопровождать и изменять. Так же я прекрасно понимаю, что в комментариях мной написанное будут яростно дополнять, что позволит выправить совсем уж вопиющие упущения и нестыковки.


                          Столь малые гарантии поднимают вопросы о причинах, по которым статья пишется. Я считаю, что этим вещам должны учить везде, где учат программированию, вплоть до уроков информатики в школах с углублённым её изучением. Тем не менее, для меня стала пугающе нормальной ситуация, когда я узнаю, что собеседник мой коллега, причём работающий уже не первый год, но про инкапсуляцию «что-то там слышал». Необходимость собрать всё это в одном месте и давать ссылку при возникновении вопросов зрела давно. А тут ещё и мой «pet-project» дал мне изрядно пищи для размышлений.


                          Тут мне могут возразить, что учить эти вещи в школе рановато, и вообще на ООП свет клином не сошёлся. Во-первых, это смотря как учить. Во-вторых, 70% материала этой статьи применимо не только к ООП. Что я буду отмечать отдельно.



                          Читать дальше →
                        • Time series данные в реляционной СУБД. Расширения TimescaleDB и PipelineDB для PostgreSQL

                            Time series данные или временные ряды — это данные, которые изменяются во времени. Котировки валют, телеметрия перемещения транспорта, статистика обращения к серверу или нагрузки на CPU — это time series данные. Чтобы их хранить требуются специфичные инструменты — темпоральные базы данных. Инструментов — десятки, например, InfluxDB или ClickHouse. Но даже у самых лучших решений для хранения временных рядов есть недостатки. Все time series хранилища низкоуровневые, подходят только для time series данных, а обкатка и внедрение в текущий стек — дорого и больно.



                            Но, если у вас стек PostgreSQL, то можете забыть о InfluxDB и всех остальных темпоральных БД. Ставите себе два расширения TimescaleDB и PipelineDB и храните, обрабатываете и проводите аналитику time series данных прямо в экосистеме PostgreSQL. Без внедрения сторонних решений, без недостатков темпоральных хранилищ и без проблем их обкатки. Что это за расширения, в чем их преимущества и возможности, расскажет Иван Муратов (binakot) — руководитель отдела разработки в «Первой Мониторинговой Компании».
                            Читать дальше →