• Хабразвук

      Увидев наполненный красивыми графиками и трагическим пафосом пост "Хабр умирает?", я задумался: а как бы вся эта красота могла звучать? Когда выдалось немного свободного времени, я скачал данные и натравил на них Sonic Pi. Теперь я знаю, как звучит Хабрахабр, и хочу поделиться этим забавным опытом.
      Читать дальше →
    • Создание архитектуры программы или как проектировать табуретку

      Взявшись за написание небольшого, но реального и растущего проекта, мы «на собственной шкуре» убедились, насколько важно то, чтобы программа не только хорошо работала, но и была хорошо организована. Не верьте, что продуманная архитектура нужна только большим проектам (просто для больших проектов «смертельность» отсутствия архитектуры очевидна). Сложность, как правило, растет гораздо быстрее размеров программы. И если не позаботиться об этом заранее, то довольно быстро наступает момент, когда ты перестаешь ее контролировать. Правильная архитектура экономит очень много сил, времени и денег. А нередко вообще определяет то, выживет ваш проект или нет. И даже если речь идет всего лишь о «построении табуретки» все равно вначале очень полезно ее спроектировать.

      К моему удивлению оказалось, что на вроде бы актуальный вопрос: «Как построить хорошую/красивую архитектуру ПО?» — не так легко найти ответ. Не смотря на то, что есть много книг и статей, посвященных и шаблонам проектирования и принципам проектирования, например, принципам SOLID (кратко описаны тут, подробно и с примерами можно посмотреть тут, тут и тут) и тому, как правильно оформлять код, все равно оставалось чувство, что чего-то важного не хватает. Это было похоже на то, как если бы вам дали множество замечательных и полезных инструментов, но забыли главное — объяснить, а как же «проектировать табуретку».

      Хотелось разобраться, что вообще в себя включает процесс создания архитектуры программы, какие задачи при этом решаются, какие критерии используются (чтобы правила и принципы перестали быть всего лишь догмами, а стали бы понятны их логика и назначение). Тогда будет понятнее и какие инструменты лучше использовать в том или ином случае.

      Данная статья является попыткой ответить на эти вопросы хотя бы в первом приближении.
      Читать дальше →
    • Как красиво оформить публикацию на Хабре

      • Tutorial
      Публикация – основная единица связи автора с читателем. Практика показывает, что на Хабре можно разместить почти любой формат: небольшой анонс и лонгрид-обзор, интервью, фотоотчёт, трансляцию события, урок и многое-многое другое. Нередко успех публикации зависит и от её оформления – приятно оформленный материал читать одно удовольствие. В этой статье мы постараемся предоставить вам много полезных советов по хорошему оформлению материала.

      И первый лайфхак – кликабельная картинка до ката, которая ведёт сразу внутрь публикации:


      Читать дальше →
    • Опыт получения Data Science specialization на Coursera за 6 месяцев

        Приветствую,

        В этом посте я бы хотел зафиксировать свои уже гаснущие воспоминания о получении «Data Science, a 9-course specialization by Johns Hopkins University on Coursera. Specialization Certificate», фокусируясь на организационной стороне вопроса. Т.е. я не буду рассуждать о том, насколько это престижный сертификат, какой преподаватель скучнее и достаточно ли знаний дается. На мой взгляд — это вопросы субъективные. Вместо «зачем», я расскажу о том «как»: в каком порядке и как проходить курсы, на что обращать внимание при сдаче тестов и курсовых, и что получается в результате.
        Читать дальше →
        • +20
        • 28k
        • 8
      • О плохих словах, или Как написать текст, не сделав из него какашку

        Здравствуйте.
        В первой части статьи я расскажу о некоторых стилистических «косяках», которые придают текстам характерный канцелярский унылый стиль. Вторая часть посвящена более серьёзной ошибке, которая, к сожалению, грозит в ближайшее время стать правилом.
        Читать дальше →
      • Ущербно-ориентированное программирование

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

        Ущербный — имеющий изъян, неполноценный. Вредный, недостаточный.

        Наследование


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

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