• Мастер-класс «Почему Стив Джобс любил шрифты» (Алексей Каптерев)

    • Tutorial


    Привет, Хабр! Давно у нас в блоге не было расшифровок мастер-классов. Исправляемся. В этом посте вас ждет грандиозное путешествие в мир шрифтов от древнейших времен до наших дней. Если вы хотите понять, каким образом шрифты влияют на наши эмоции и наконец научиться отличать гуманистический гротеск от ленточной антиквы — добро пожаловать под кат. И да, там очень много картинок. Передаем слово автору.




    Шутка, написанная гарнитурой Times, на 10 % смешнее той, что написана гарнитурой Arial. Почему? Чёрт знает. Лучшее объяснение, которое я видел: юмор ассоциируется с агрессией, с остротой, с остроумием — а Times выглядит более острым, чем Arial.


    Ещё один любопытный эксперимент, в котором участвовало 45 тыс. человек. Заходишь на сайт, тебе показывают статью Дэвида Дойча, британского физика. В статье автор пишет, что сегодня очень трудно внезапно умереть. Например, от инфекционного заболевания или в уличной драке. Лет сто назад это случалось намного чаще. Главный вывод статьи — сейчас мир безопасен как никогда. В среднем, конечно, ведь где-то постоянно идут локальные военные конфликты.

    Читать дальше →
  • Сударь, ваша команда — не команда

      За свои 12 лет работы в сфере разработки ПО, мне посчастливилось поработать в команде только два раза. Хотя я сменил порядка десяти мест работы. Но попробовав раз, ем и сейчас… Т.к. я не жадный, и готов своими достижениями делиться с сообществом, то решил я предпринять попытку вывести из равновесия неумных руководителей, которые до сих пор не осознали важность команды, а также тех руководителей, которые профессионально занимаются самообманом — мол, они строят команду, а на деле — тьфу, а не команда.
      Читать дальше →
    • Открываем доступ к видеозаписям HighLoad++ за последние пять лет

        image

        Мы выложили в открытый доступ видеозаписи последних пяти лет конференции разработчиков высоконагруженных систем HighLoad++. Смотрите, изучайте, делитесь и подписывайтесь на канал YouTube.

        Более терабайта записей и 500 видеороликов! Это всё, под катом только реклама :)

        Перейти в канал YouTube!

        Читать дальше →
      • Структуры данных для самых маленьких

        • Перевод
        James Kyle как-то раз взял и написал пост про структуры данных, добавив их реализацию на JavaScript. А я взял и перевёл.

        Дисклеймер: в посте много ascii-графики. Не стоит его читать с мобильного устройства — вас разочарует форматирование текста.


        Читать дальше →
      • 14 вопросов об индексах в SQL Server, которые вы стеснялись задать

        • Перевод
        • Tutorial
        Индексы — это первое, что необходимо хорошо понимать в работе SQL Server, но странным образом базовые вопросы не слишком часто задаются на форумах и получают не так уж много ответов.
        Роб Шелдон отвечает на эти, вызывающие смущение в профессиональных кругах, вопросы об индексах в SQL Server: одни из них мы просто стесняемся задать, а прежде чем задать другие сначала подумаем дважды.


        От переводчика
        Данный пост является компиляцией двух статей Роба Шелдона:

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

        Перейти к чтению
      • 40 ключевых концепций информационных технологий доступно и понятно

        • Перевод
        Представляю вашему вниманию перевод очень ёмкой, и в то же время достаточно краткой (для такого масштаба проблемы) статьи Карла Чео. Я решил, что очень хочу сделать её перевод практически сразу, как только начал читать, и очень рад, что в итоге сделал это.
        Для того, чтобы сделать обучение более веселым и интересным, представляю вам перечень важных теорий и концепций информатики, объяснённых с помощью аналогий с минимальным количеством технических деталей. Это будет похоже на очень быстрый курс информатики для всех с целью просто дать вам общее представление об основных концепциях.

        Важные замечания:
        • Пункты с неуказанным источником написаны мной самостоятельно. Поправьте меня, если вы заметите какие-то неточности. Предложите лучшую аналогию, если это возможно.
        • Заголовки ссылаются на соответствующие им статьи в Wikipedia. Пожалуйста, читайте эти статьи для более серьезных и детальных объяснений.
        • Аналогии — отличный способ объяснить материал, но они не идеальны. Если вы хотите по-настоящему понять перечисленные концепции, вам следует начать с фундаментальных азов и рассуждать, исходя из них.

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



          «Возьми себя в руки, тряпка!» — сказал я себе, когда понял, что работа скоро доконает. Или она тебя, или ты её.

          Дорога в тысячу ли начинается с первого шага.
          Первым шагом стала книга Дэвида Аллена «Как привести дела в порядок: искусство продуктивности без стресса». Точки над i расставил курс Максима Дорофеева «Джедайская техника пустого инбокса, или Как доводить дела до конца».
           
          Нельзя питать иллюзий, ступив на тропу войны. Проблемы не заставили себя долго ждать. Работа на компьютере требовала автоматизации. Дело стало за малым, поиск подходящего программного обеспечения для Getting Things Done (GTD).

          Бесконечные пробы GTD-программ не принесли счастья. Комфортной работе мешало большое количество данных.
          Не получалось связать задачи и данные внутри одной GTD-программы. Поток писем складировался в Outlook, документы и другие файлы на диске, часть информации на web ресурсах и так далее. Решая дела, приходилось тратить время на поиск связанных с ними данных. Возникали проблемы с синхронизацией информации на разных устройствах и многое другое.
           
          Но кто ищет, тот всегда найдёт! Выходом из патовой ситуации оказался Microsoft OneNote 2013, который простыми настройками легко превратился в полноценный GTD-инструмент. Только такой подход позволил преодолеть все проблемы и ощутить комфорт от использования GTD.
          Читать дальше →
        • Как работает реляционная БД

          • Перевод
          • Tutorial
          Реляционные базы данных (РБД) используются повсюду. Они бывают самых разных видов, от маленьких и полезных SQLite до мощных Teradata. Но в то же время существует очень немного статей, объясняющих принцип действия и устройство реляционных баз данных. Да и те, что есть — довольно поверхностные, без особых подробностей. Зато по более «модным» направлениям (большие данные, NoSQL или JS) написано гораздо больше статей, причём куда более глубоких. Вероятно, такая ситуация сложилась из-за того, что реляционные БД — вещь «старая» и слишком скучная, чтобы разбирать её вне университетских программ, исследовательских работ и книг.

          На самом деле, мало кто действительно понимает, как работают реляционные БД. А многие разработчики очень не любят, когда они чего-то не понимают. Если реляционные БД используют порядка 40 лет, значит тому есть причина. РБД — штука очень интересная, поскольку в ее основе лежат полезные и широко используемые понятия. Если вы хотели бы разобраться в том, как работают РБД, то эта статья для вас.
          Читать дальше →
        • Барьеры памяти и неблокирующая синхронизация в .NET

          Введение


          В этой статье я хочу рассказать об использовании некоторых конструкций, применяющихся для осуществления неблокирующей синхронизации. Речь пойдёт о ключевом слове volatile, функциях VolatileRead, VolatileWrite и MemoryBarrier. Мы рассмотрим, какие проблемы вынуждают нас воспользоваться этими языковыми конструкциями и варианты их решения. При обсуждении барьеров памяти вкратце рассмотрим модель памяти .NET.
          Читать дальше →
        • Почему я не преподаю SOLID и «принцип устранения зависимостей»

          • Перевод

          Статья 1. Почему я не преподаю SOLID


          Если вы разговариваете с кем-то, кому небезразлично качество кода, уже достаточно скоро в разговоре всплывёт SOLID — аббревиатура, помогающая разработчикам запомнить пять важных принципов объектно-ориентированного программирования:

          SOLID полезен. Его разработали знатоки в нашей области. Он помогает людям рассуждать о дизайне. Помогает создавать системы, устойчивые к изменениям.

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

          Сегодня SOLID остается для меня важным, но я больше не пытаюсь сделать мой код SOLID. Я редко упоминаю его, когда говорю про дизайн. И тем более я не учу пользоваться им разработчиков, которым хочется почерпнуть хорошие дизайнерские методы проектирования. Он больше не находится у меня под рукой в моем «ящике для инструментов». Он лежит в пыльной коробке на чердаке. Я храню его, потому что он важен, но редко им пользуюсь.
          Читать дальше →
        • Управленческие инструменты: 5 вопросов для прояснения целей или для чего нужен BMW X5?

            Давным давно в одной из компаний, лидере мирового производства микропроцессоров, меня однажды поразила менеджерская напасть. Решил, знаете ли, заняться развитием сотрудников. (Периодически, такое с менеджерами случается, да.)

            Подхожу к своему сотруднику — назовем его Серега:

            — Серега, — говорю, — ты в какую сторону вообще хочешь развиваться: в техническую или в менеджерскую?

            — Сань, ну голова варит уже не очень, возраст… (Серега старше меня на 3 года) Поэтому, наверное, в менеджерскую.


            Ну, в менеджерскую — так в менеджерскую. Я ж на тот момент был менеджер опытный, уже 4 года опыта! Энергии много, желания помочь людям — через край!

            Короче, Серега стал моим заместителем, начал посещать всякие тренинги. Взял в управление какой-то мощный студенческий проект, там ребята что-то делали.

            А кончилось все тем, что пришлось нам с Серегой расставаться. Как так получилось, где Серега в итоге реализовал себя, и какой правильный управленческий инструмент я мог бы тогда применить — об этом сегодня и поговорим.

            Заодно поговорим, что делать, если вы обнаружили себя и/или своих сотрудников в квадрате C в статье:

            Читать дальше →
          • Лекции Технопарка. 2 семестр. Базы данных

            • Tutorial


            Очередной пост в рамках нашей постоянной рубрики «Лекции Технопарка». В этот раз предлагаем вашему вниманию лекции, посвящённые базам данных. Цель курса — получение студентами знаний в области проектирования реляционных баз данных, эффективной работы с базами данных, оптимизации запросов и схем данных, изучение особенностей использования баз данных в проектах с высокой нагрузкой и/или использующих большие массивы данных, noSQL и его применение для решения прикладных задач в WWW.
            Читать дальше →
          • Лекции Технопарка. 1 семестр. Алгоритмы и структуры данных

            • Tutorial
            Очередной пост в рамках нашего цикла лекций Технопарка. В этот раз мы предлагаем вашему вниманию курс, посвящённый алгоритмам и структурам данных. Автор курса — Степан Мацкевич, сотрудник компании ABBYY.

            Лекция 1. Основы


            Начало первой лекции посвящено обсуждению основных понятий, на которых строится вся дальнейшая программа курса: что такое алгоритм и структура данных. Описаны базовые виды алгоритмов, их характеристики и методы анализа. Далее рассматриваются примеры создания алгоритмов для вычисления чисел Фибоначчи, проверки числа на простоту, быстрого возведения числа в целую степень. В конце лекции рассказывается об особенностях использования алгоритмов для работы с массивами: создание однопроходных алгоритмов, поиск минимального элемента, бинарный поиск.


            Читать дальше →
          • Лекции Технопарка. 3 семестр. Проектирование высоконагруженных систем

            • Tutorial


            И снова в эфире наша постоянная рубрика «Лекции Технопарка». На этот раз предлагаем вам ознакомиться с материалами курса «Проектирование высоконагруженных систем». Цель курса — получение студентами навыков проектирования высокоэффективных программных систем.
            Читать дальше →
            • +50
            • 62,1k
            • 5
          • 10 сайтов для поиска работы в Европе

              Поиск работы – задача не из простых, особенно в текущих неблагоприятных экономических условиях. Европейский ресурс Tech.eu в честь запуска своего сервиса по поиску работы подготовил список из десяти сайтов, которые помогут вам подыскать себе место под европейским солнцем, если вы, по какой-либо причине, желаете уехать на заработки в ЕС.
              Завожу трактор
            • Роман в мейлах: советы программисту, переезжающему в Мюнхен

              Полгода назад мне написал знакомый приятеля, попросив ответить на несколько вопросов относительно жизни в Мюнхене — он заключил контракт на позицию Senior Software Developer и планировал переезд из Петербурга в Мюнхен. На правах старожила (15 лет) я дал ему несколько бытовых советов, причесанная компиляция которых, как мне кажется, естественным образом продолжит недавние публикации. Я осознаю, что несколько емейлов — это не статья, а Q&A, но я уже не в первый раз отвечаю на подобные вопросы и они мне кажутся достаточно типичными, чтоб представить их именно в таком виде и порядке, как они задавались. Last but not least — согласие другой стороны на публикацию получено.

              Итак, в хронологическом порядке:
              Читать дальше →
              • +30
              • 16,2k
              • 3
            • Взгляд назад, или что бы я сделал по-другому, переехав работать в Германию сейчас. Часть 3 (Образование в Германии)

                Часть 1.
                Часть 2.

                Как и обещал во второй части — этот пост про детские сады и школы. Про ВУЗы ничего написать пока не могу — не сталкивался. Подрастет детвора — столкнемся и потом уж напишу, если не забуду.

                Опять-таки, все, что написано ниже — относится к региону моего проживания. Возможно, в другой земле ситуация лучше, но судя по отзывам друзей из земли Baden-Württemberg — у них то же самое.
                Читать дальше →
              • Взгляд назад, или что бы я сделал по-другому, переехав работать в Германию сейчас. Часть 2

                  Первая часть здесь.

                  Великое и ужасное ABH (Ausländerbehörde)


                  Итак, вы где-то обосновались и уже отмечаете переезд. Рано радоваться. Не важно, где вы живете, Вам нужно зарегистрироваться — фактически, это аналог российской прописки, только штамп в паспорт не ставится, а выдается специальная бумажка (да-да, в Германии «без бумажки ты...» ну сами, знаете). Идете в Ваш Rathaus (мэрия, сельсовет и т.п. — вообщем орган местного самоуправления), несете с собой Mietvertrag (при перерегистрации в случае смены жилья в том же населенном пункте у меня уже ни разу не просили его, а при первом, когда вы только с самолета — да) и просите Вас зарегистрировать по данному адресу. Если приехали с семьей — предъявите всю семью, т.к. надо ставить подпись, а совершеннолетним детям выдается уже отдельная бумажка.
                  Читать дальше →
                • Взгляд назад, или что бы я сделал по-другому, переехав работать в Германию сейчас. Часть 1

                    Пост навеян недавней публикацикй «Как айтишнику уехать в Германию. Часть 1» от FlashXL. Не то, чтобы я начал все по-другому, но было бы меньше граблейошибок. Я не претендую на полноту картины — просто хочется поделиться своим опытом и предостеречь от возможных ошибок тех, кто находится сейчас в процессе найма на работу в Германии (в IT индустрии), а также, возможно, дать какие-то советы.
                    Читать дальше →
                  • Как айтишнику уехать в Германию. Часть 1

                      В последние пару дней мне часто приходится отвечать на вопросы, как я нашёл работу в Германии, поэтому я решил объединить весь свой путь (ещё незаконченный) в единый текст и опубликовать здесь, потому как тема мне кажется интересной и актуальной.

                      Идея уехать жить куда-нибудь за пределы этой страны была давно, но как-то не сказать, что здесь всё было совсем плохо и невыносимо. Однако вернувшись в октябре из двухнедельной поездки по Европе (Барселона, Брюссель, Амстердам и Прага), желание заметно укрепилось. Плюс уже изрядно достали все эти #крымняш, нефть, рубль и великий Пу.

                      Вариант с Германией мне подсказала знакомая, которая собирается ехать туда учиться. Погуглил, и действительно — для айтишников (я джава-разработчик) всё очень хорошо. Информации на эту тему в интернете полно, не буду лишний раз дублировать (гуглить по ключевому слову bluecard). Если коротко — достаточно желания работодателя платить вам больше, чем 37 000 евро в год.
                      Читать дальше →