Search
Write a publication
Pull to refresh
12
7
Alexander Kardapolov @akardapolov

User

Send message

«Симпсоны» — лучшее TV-шоу для изучения английских слов. Доказано Big Data

Reading time6 min
Views17K

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

«Симпсоны» занимают особое место среди остальных сериалов и мультиков. Мы советуем его студентам из-за разнообразной лексики из разных сфер жизни. Но наше мнение основывалось на опыте преподавателей, а не на статистике и аналитике.

И вот мы нашли материал, который полностью подтверждает нашу точку зрения с помощью аналитики big data. Френк Андраде, Python-программист и data-аналитик, проанализировал 679 серий «Симпсонов» с точки зрения используемой лексики.  Спешим поделиться тем, что мы в нем узнали.

Читать далее

Позвольте сделать экспланацию

Reading time3 min
Views4.2K

Чем похожи немецкий и английский и почему

Когда инфоцыгане убеждают публику, что за день можно выучить тыщу-другую английских слов, они прекрасны в своей простоте. Берется как бы русское слово на – ция (например, революция), суффикс заменяется как бы английским суффиксом – tion и вуаля, получаем английское слово. И таким макаром, мол, можно сфигачить добрую треть словарного фонда. И овладеть ей.

Читать далее

От Планеты GitHub с любовью

Reading time3 min
Views4.8K

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

В ноябре прошлого года более 500 российских технологов присоединились к нашему первому GitHub Meetup на русском языке и сейчас наше комьюнити насчитывает уже больше 1000 человек. Недавно мы открыли Telegram канал. Для нас это большая честь - привлекать такое внимание, и мы всегда будем рады слушать, учить и вдохновлять русскоязычное сообщество на вашем родном языке.

Вот краткое изложение того, о чем мы рассказали на данный момент.

http://github.co/habr

Пол Грэм: Свирепые нёрды

Reading time5 min
Views5K
image

Большинство людей думают о нёрдах (ботанах) как о тихих и застенчивых людях. В обычных социальных ситуациях они такие же тихие и застенчивые, какими был бы звёздный квотербек, оказавшись в центре симпозиума по физике. И по той же причине: это как рыба, которую вытащили из воды. Но очевидная неуверенность нёрдов — это иллюзия, потому когда не-нёрды видят нёрдов, то это происходит в обычных социальных ситуациях. На самом деле, некоторые нёрды довольно свирепы.

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

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

Еще одно качество, которое можно найти у большинства свирепых нёрдов, — это интеллект. Не все нёрды умны, но свирепые нёрды всегда хотя бы в меру умны. Если бы это было не так, у них не было бы уверенности в себе, чтобы быть свирепыми. [1]
Читать дальше →

Введение в транзакционную память от Мориса Херлихи

Reading time24 min
Views7.1K

Как при распараллеливании кода не мучиться из-за блокировок? На Хабре уже писали о транзакционной памяти, но когда о ней говорит Морис Херлихи, это особый случай. В 1993-м и Хабра никакого не было, и многоядерные процессоры ещё не заявили о себе — а Морис уже стал соавтором основополагающей работы о транзакционной памяти. Так что он главный в мире авторитет по этому вопросу, и если вам нужно введение в тему, логично слушать его.

В прошлом году на нашей конференции Hydra он выступил с докладом для широкой публики, в котором всё начинается с самых азов, а позже доходит до менее очевидных вещей. Сейчас мы ждём его на Hydra 2021 с новым докладом — а в ожидании этого решили сделать для Хабра текстовый перевод прошлогоднего выступления на русский (видеозапись тоже прилагаем). Далее повествование будет от лица спикера.

Читать далее

Как решать сложные (технические) проблемы

Reading time4 min
Views15K
image


Мировоззрение


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


Поиск первопричины


  • Постарайтесь воспроизвести проблему
    • Можете ли вы воспроизвести это из командной строки?
      • Другим людям легче воспроизвести проблему
      • Легче проверить исправление
  • Есть ли логи? Что за сообщение об ошибке?
    • Прочтите описание ошибки. Каждое его слово. Дважды.
    • Есть ли где-нибудь опечатка (командная строка / конфигурация / код)?
  • Изолируйте проблему
    • Удалите некоторые части системы и попробуйте воспроизвести ошибку
    • Меняйте одно за раз, сохраняя все остальное постоянным
Читать дальше →

Программирование и писательство

Reading time3 min
Views5.9K
Год назад я приостановил свой путь в программировании и начал писать роман думая, что моя новая деятельность сильно отличается от предыдущей. Спустя много написанных слов, но чаще переписанных, я почти уверен в обратном: программирование больших систем и написание романов имеют много общих черт и схожие процессы.

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

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

Аарон Шварц: как стать продуктивнее

Reading time10 min
Views11K
image

Прим. ред: Я сейчас делаю Ontol — это Github для знаний/мудрости. Онтол — это курируемые списки материалов (тексты и видео), которые существенно повлияли на мировоззрение и доступные бесплатно и в 1 клик. Этот текст попадает в онтол «продуктивность». (канал в телеграм: t.me/ontol)

Об Авторе: Аарон Шварц — американский интернет-активист, программист, писатель, хактивист. Умер за свободу информации.

  • В 12 лет создал сайт Info, где каждый мог писать о том, что знает (а другие могли дополнять и комментировать). Это был предвестник Википедии.
  • В 14 лет Шварц стал соавтором спецификации RSS 1.0.
  • Аарон Шварц работал под руководством Тима Бернерса-Ли в составе основной рабочей группы RDF в Консорциуме W3C.
  • Попал на первую программу в Y Combinator со стартапом Infogami, который впоследствии слился с популярным сайтом Reddit.
  • Работал над Open Library и Creative Commons
  • Внес существенный вклад в Markdown.

«За это время, что ты смотришь телевизор», говорят мне, «ты бы уже новый рассказ написал». С этим трудно не согласиться — написание рассказа, ясное дело, лучшее применение свободному времени, чем просмотр телепередачи, — но тут не всё так просто, ведь под этим подразумевается, что смотреть телевизор и писать рассказ — равноценные вещи, что, к сожалению, не всегда так.

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

Фишки IDEA. Часть 1

Reading time4 min
Views19K

Функционал IntelliJ IDEA велик, так что вряд ли найдется много разработчиков, кто использует все ее возможности без исключения. Но у каждого есть свой набор любимых фишек и опций. Около месяца назад во внутреннем чате Максилекта родилась идея пошарить эти фишки внутри компании. Коллеги восприняли ее с таким энтузиазмом, что одного запланированного часа обсуждений на это не хватило - встречу повторили через неделю.

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

Читать далее

Профилирование с точностью до ассемблерных инструкций

Reading time12 min
Views3.6K

Работая над темой низкоуровневого профилирования, я обнаружил отсутствие подробного руководства по настройке окружения и сбору материала. Всё пришлось делать самому путём проб и ошибок. Итогом стала эта статья, в которой я по шагам описал профилирование кода, горячее место в котором не в силах обнаружить не только какой-нибудь VisualVM, но и титаны вроде async-profiler-а. В качестве примера использован код из ранее упоминавшейся статьи The volatile read surprise.

Читать далее

Storytelling R отчет против BI, прагматичный подход

Reading time6 min
Views4.9K

Проблематика


Когда говорят про отчеты к данным (неважно, какая тема) все хотят гибкие дашборды, МНОГО дашбордов, играют конкурсы про BI, выдумывают разные сложные требования и кейсы, отсматривают массу вендоров и решений, разбиваются на непримиримые лагеря и на 100% уверены, что это то, без чего жизнь на работе тяжела, уныла и печальна.


Так ли это? По описанию очень сомнительно (похоже на серебряную пулю), а практика дает подтверждение «отнюдь не так».


Является продолжением серии предыдущих публикаций.

Читать дальше →

Документируй это

Reading time7 min
Views5.1K

Всем привет! В данной статье хотел бы рассмотреть инструменты документирования в принципиально разных подходах в разработке API, а именно для CodeFirst - инструменты Spring Rest Docs (а также его надстройки Spring Auto Rest Docs) и для ApiFirst - инструменты экосистемы Swagger(Open-Api).

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

Итак, начнем

Turbolift — инструмент для масштабного рефакторинга

Reading time6 min
Views3.1K

Системы Skyscanner сложно назвать маломасштабными. Наш сайт и приложение каждый месяц используются миллионами путешественников, мы обрабатываем умопомрачительные объёмы запросов, используя микросервисную архитектуру, которая сама по себе далеко не маленькая. В общей совокупности у нас задействовано несколько сотен микросервисов и микросайтов (веб-приложений, поддерживающих определённую часть нашего сайта), обслуживаемых сотнями экземпляров AWS Lambda и библиотек. Каждое из этих средств хранится в своём собственном репозитории GitHub, что даёт некоторые преимущества с точки зрения разделения задач, но имеет и свою цену: когда одно и то же изменение нужно выполнить во всех этих репозиториях, как это можно осуществить?

Читать далее

Размышления о Java 8 и Java 11 в ожидании Java 17

Reading time5 min
Views13K
Этот материал посвящён некоторым особенностям Java 8 и Java 11. Его можно рассматривать как отправную точку для подготовки к освоению очередного LTS-релиза платформы — Java 17.



В мире Java есть одна приятная особенность, которая связана с жизненным циклом версий платформы. А именно, новый релиз Java выходит каждые 6 месяцев, а каждые 3 года появляется новый LTS-релиз — версия с долгосрочной поддержкой. В настоящий момент LTS-версия платформы представлена Java 11. Поэтому многие компании переходят на неё. Это — заметное движение, так как среди его последствий можно отметить тот факт, что, с выходом в сентябре 2021 года Java 17, новые фреймворки не будут поддерживать Java 8, а в качестве минимальной версии платформы будут рассматривать Java 11.

Цель этой статьи заключается в том, чтобы рассмотреть некоторые общие базовые API Java 8 и Java 11.
Читать дальше →

Личный сервер shadowsocks за 10 минут без затрат (часть 2)

Reading time4 min
Views41K

Это - отдельное руководство, описывающее ещё один способ получить личный прокси-сервер shadowsocks бесплатно и служащее продолжением к моей предыдущей статье. В этот раз мы воспользуемся сервисом platform.sh.

От читателя требуется только обладание адресом электронной почты и умение залить файлы в git.

Читать далее

5 фразовых глаголов с get и 33 их значения, или Почему студенты не любят английский

Reading time7 min
Views88K

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

Мы решили запустить новую рубрику и рассказывать про фразовые глаголы весело. Чтобы не зубрить их, а нормально запоминать на примерах из фильмов и сериалов.

И начнем со слова «get». По нашему опыту, студенты делают во фразовых глаголах с ним огромное количество ошибок. Так что не будем затягивать, поехали!

Читать далее

JAVA преступно недооценена

Reading time5 min
Views16K
Точка зрения невежественного студента информатики

image


Вероятно, вы прочитали заголовок этого поста и подумали: «Что этот парень курит? Java повсюду!» Вы правы, Java по-прежнему доминирует в отрасли и c ее помощью запускаются одни из крупнейших в мире критически важных приложений. Но распространение Java — это не то, о чем я говорю, я говорю о шумихе вокруг нее. Я провожу много времени с неопытными программистами. А что любят делать неопытные программисты? Быть взволнованным и самоуверенным в отношении таких инструментов, как языки программирования. Ни один из студентов CS, с которыми я встречаюсь, не восхищается Java, и я думаю, что так не должно быть.

Молодые/наивные разработчики (включая меня) часто попадают в ловушку фетишизации новых языков и инструментов в ущерб производительности и здравомыслию. До работы в Halp (теперь принадлежащей $TEAM) у меня были почти романтические отношения с серверным TypeScript. Я думал, что экосистема node.js была самой крутой вещью: мне понравилась идея транспилированного кода, отладки в реальном времени, огромной библиотеки пакетов и даже странных и фрагментированных систем сборки. Когда я действительно использовал его в разработке и поговорил с более опытными инженерами, магия быстро исчезла.
Читать дальше →

Для чего нужно интеграционное тестирование?

Reading time9 min
Views66K

Эта статья является конспектом книги «Принципы юнит-тестирования». Материал статьи посвящен интеграционным тестам.

Юнит-тесты прекрасно справляются с проверкой бизнес-логики, но проверять эту логику «в вакууме» недостаточно. Необходимо проверять, как разные ее части интегрируются друг с другом и внешними системами: базой данных, шиной сообщений и т. д.

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

Читать далее

Люди не меняют свою жизнь, потому что в глубине души знают — они фиговые специалисты

Reading time4 min
Views45K

Сколько людей в стране не любят свою работу и вообще ненавидят свою жизнь? Три года назад мне в руки попало одно очень занятное исследование Google: Barriers, motives & triggers of entrepreneurship. Три тысячи респондентов, очищенная выборка, больше ста российских городов, интервью дольше 20 минут. Там были несколько чисел, которые меня, мягко говоря, ошеломили.

Читать далее

Развитие BI-систем: тренды и движение в сторону ABI. Взгляд со стороны визуализации

Reading time8 min
Views14K

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

Читать далее

Information

Rating
1,465-th
Location
Екатеринбург, Свердловская обл., Россия
Date of birth
Registered
Activity