Как стать автором
Обновить
83
0
Денис @besisland

Программист

Отправить сообщение

Дайджест событий для эйчаров и рекрутеров в IT на февраль 2021

Время на прочтение7 мин
Количество просмотров2.1K

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

Следите за обновлениями поста и за комментариями, я мониторю новые анонсы и добавляю их по мере появления.

Читать далее
Всего голосов 14: ↑14 и ↓0+14
Комментарии2

Поддержание аккуратной истории в Git с помощью интерактивного rebase

Время на прочтение5 мин
Количество просмотров42K

Interactive rebase — один из самых универсальных инструментов Git'а. В этой статье от автора Git-клиента Tower рассказывается, как корректировать сообщения при коммитах и исправлять свои ошибки.

Читать далее
Всего голосов 55: ↑54 и ↓1+53
Комментарии44

Как мы делали дрон, который не боится упасть, и что общего между архитектурой, роботом-манипулятором и коптером

Время на прочтение8 мин
Количество просмотров15K
У нас было десять разбитых дронов за год, тестовые полеты два раза в день, три кандидата технических наук в команде, прототип из палочек для суши и желание найти способ больше не бить дроны.

Очень спорно, очень необычно, очень странно, но работает! На стыке архитектуры, коллаборативной робототехники и беспилотных летательных аппаратов. Представляем: Tensodrone™.



Tensodrone (Тенсодрон) — беспилотный летательный аппарат (БПЛА) мультироторного типа новой конструкции с защитой от столкновений, сделанный по принципу тенсегрити. Такой подход позволяет повысить устойчивость к ударам при меньшей массе, совместив защитную клетку и конструкцию несущей рамы.

Проект является ярким примером взаимодействия различных команд Центра компетенций НТИ по направлению «Технологии компонентов робототехники и мехатроники» на базе Университета Иннополис.
Всего голосов 33: ↑33 и ↓0+33
Комментарии18

Как программируют слабовидящие программисты?

Время на прочтение9 мин
Количество просмотров42K

От переводчика

Что это за пост? Он не похож на статью


Это действительно не статья. Это компиляция самых интересных, на мой взгляд, ответов на заглавный вопрос: «Как программируют слабовидящие программисты?» из обсуждения на Quora.com.

Почему я сделал перевод?


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

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

Это не так. Совсем не так.

Нет никаких специально обученных разработчиков.

Нет никакого особого веба.

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

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

Давайте же делать веб чуточку лучше, доступнее для всех и каждого, и пусть никто не уйдёт обиженным.

Читать дальше →
Всего голосов 67: ↑65 и ↓2+63
Комментарии38

30 советов, как эффективно трудиться и не сойти с ума, работая дома

Время на прочтение5 мин
Количество просмотров16K
Тем, кому знакомы прелести работы дома (на себя, фрилансером или удаленно на ставку), также знаком соблазн поваляться на диване и затягивание сроков.

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

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

Так как же работать эффективно и в то же время не довести себя до нервного истощения? Я недавно уволился с постоянной работы и поэтому спросил совета у читателей своего блога. Они, как и всегда, откликнулись на мою просьбу, и я отобрал наиболее понравившиеся мне рекомендации, чтобы люди могли использовать их как руководство (ну, я тоже собираюсь руководствоваться этими советами).
Читать дальше →
Всего голосов 125: ↑123 и ↓2+121
Комментарии198

Ванька (по Чехову)

Время на прочтение5 мин
Количество просмотров979
Ванька Жуков, девятнадцатилетний веб-девелопер, устроившийся три месяца тому назад в столичное интернет-агентство, в ночь под выход новой версии Ubuntu не ложился спать. Дождавшись, когда тех. директор и менеджеры ушли на совещание, он достал из-под стола сотовый телефон, USB-кабель, мышку с заедающим шариком и, разложив перед собой обшарпанный ноутбук, стал набирать. Прежде чем нажать первую клавишу, он несколько раз пугливо оглянулся на двери и окна, покосился на портрет Артемия Андреевича, по обе стороны которого тянулись полки с «атмарками», и прерывисто вздохнул. Ноутбук лежал на офисном кресле, а сам он стоял перед креслом на коленях.

Читать дальше →
Всего голосов 140: ↑128 и ↓12+116
Комментарии52

Семь заповедей быстрого чтения

Время на прочтение5 мин
Количество просмотров22K
— Чувак, наточи топор!
— Да некогда мне! Дрова нужно рубить!


Далеко не каждый хабраюзер может позволить себе систематический курс скорочтения, будь то «Доминанта» Олега Андреева (как одна из ступеней комплексного интеллектуального развития), или «Техника быстрого чтения» Хромова. В этой статье я попытаюсь простым языком описать основные приёмы, которые можно легко запомнить и стараться применять их на практике без отрыва от работы, или учёбы.

Читать быстро
Всего голосов 87: ↑78 и ↓9+69
Комментарии198

Как я завел дружбу с асинхронностью в JavaScript

Время на прочтение12 мин
Количество просмотров43K
JavaScript встречает разработчиков асинхронностью можно сказать чуть ли не с порога. Начинается все с DOM-событий, ajax, таймерами и библиотечными методами, связанными с анимацией (например jQuery-методы fadeIn/fadeOut, slideUp/slideDown). В целом, это все не очень сложно и разобраться с асинхронностью на этом этапе не представляет проблем. Однако, как только мы переходим к написанию более или менее сложных приложений, в которых комбинируется все вышеуказанное, асинхронный поток может сильно затруднить понимание происходящего в коде. Цепочки асинхронных действий, например, анимация > ajax-запрос > инициализация -> анимация, создают достаточно сложную архитектуру, которая не подчиняется строгому направлению «снизу верх». В этой статье я намерен рассказать про свой опыт преодоления трудностей связанных с асинхронным JS.
Читать дальше →
Всего голосов 58: ↑32 и ↓26+6
Комментарии15

Методы в примитивных типах PHP

Время на прочтение10 мин
Количество просмотров21K
Некоторое время назад назад Энтони Феррара выразил мысли по поводу будущего PHP. Соглашусь с большинством его взглядов, но не со всеми. В статье я остановлюсь на одном конкретном аспекте: преобразования примитивных типов данных, таких как строки или массивы, в “псевдо-объекты”, позволяя выполнять в них вызовы методов.

Начнем с нескольких примеров:

$str = "test foo bar";
$str->length();      // == strlen($str)        == 12
$str->indexOf("foo") // == strpos($str, "foo") == 5
$str->split(" ")     // == explode(" ", $str)  == ["test", "foo", "bar"]
$str->slice(4, 3)    // == substr($str, 4, 3)  == "foo"

$array = ["test", "foo", "bar"];
$array->length()       // == count($array)             == 3
$array->join(" ")      // == implode(" ", $array)      == "test foo bar"
$array->slice(1, 2)    // == array_slice($array, 1, 2) == ["foo", "bar"]
$array->flip()         // == array_flip($array)        == ["test" => 0, "foo" => 1, "bar" => 2]

Здесь $str — это обычная строка и $array является простым массивом — они не объекты. Мы просто даем им немного объектного поведения, позволяя вызывать в них методы.

Обратите внимание, такое поведение совсем не за горами. Это уже не сон, кое-что уже существует прямо сейчас. PHP расширение scalar objects позволяет определить методы для примитивных типов.

Читать дальше →
Всего голосов 47: ↑44 и ↓3+41
Комментарии35

Кто возьмёт билетов пачку… или о монетизации игровых приложений

Время на прочтение7 мин
Количество просмотров23K
image

В данном посте речь пойдёт о казуальных играх в соц. сетях.
Прежде чем читать нижеприведённый текст, я попрошу всех отринуть от себя всё человечное, что в вас есть. Далее речь пойдёт только о деньгах и о том, как эффективнее их заработать.
Читать дальше →
Всего голосов 75: ↑57 и ↓18+39
Комментарии64

Цифры, числа и числительные

Время на прочтение9 мин
Количество просмотров37K
По следам хабралинча имени Рюмкина коснёмся темы правильного типографического оформления чисел. В голову пришли следующие темы, если что-то вдруг забыто — пишите в комментариях, добавлю в статью.
  • Минускульные и маюскульные цифры
  • Целые числа и десятичные дроби
  • Простые дроби
  • Буквенные сокращения (тысяча, миллион, миллиард)
  • Диапазоны
  • Порядковые числительные и числительные в составе сложных слов
Ещё в комментариях к хабралинчу возникло интересное обсуждение согласования и управления при употреблении порядковых числительных, но это, как мне кажется, скорее отдельная тема для блога Пишу правильно.

Читать дальше →
Всего голосов 85: ↑81 и ↓4+77
Комментарии51

Всё (или почти всё) о пробеле

Время на прочтение13 мин
Количество просмотров134K
Как следует из заголовка, речь в статье пойдёт о неотъемлемой части любого русскоязычного (и не только) текста — о пробеле. Мы затронем историю пробела, виды пробелов, вопросы употребления пробела в веб-типографике.

Вообще говоря, пробел — это любое пустое место в рукописном, печатном или отображаемом на любом другом носителе тексте. Так что пробелы бывают разные:
  • спусковые (большие вертикальные пропуски в первой полосе издания) и концевые пробелы полосы,
  • абзацные отступы и концевые пробелы абзаца,
  • межстрочные пробелы (между строками текста),
  • межсловные пробелы (между словами в одной строке),
  • межбуквенные пробелы (между буквами в слове).
Далее речь пойдёт о межсловных пробелах, разделяющих слова, и функционально принадлежащих к знакам препинания.
Читать дальше →
Всего голосов 134: ↑130 и ↓4+126
Комментарии132

Информация

В рейтинге
Не участвует
Откуда
Berlin, Berlin, Германия
Зарегистрирован
Активность