На этот раз мы поговорим о книге, название которой обязывает нас вынести в наш обзор только то, что получится трактовать однозначно. О том, как выбирать стратегии и принимать решения (и какие у этого есть когнитивные подводные камни), рассказывают весьма именитые авторы. Среди них недавно ушедший от нас нобелиат по экономике Даниэль Канеман. Русскоязычному и не только читателю он хорошо известен как автор бестселлера «Думай медленно… Решай быстро». Соавторами выступили Оливье Сибони, профессор в Высшей коммерческой школе Парижа с багажом исследований по качеству стратегических решений, и гарвардский профессор Касс Санстейн.
Пользователь
Введение в тестирование на Swift Testing
XCTest является основным инструментом для тестирования в Swift и широко используется разработчиками. Однако, новая библиотека Testing предлагает дополнительные возможности и синтаксический сахар, который делает процесс тестирования еще более удобным и мощным. В данной статье мы рассмотрим основные аспекты тестирования на Swift, включая использование библиотеки Testing.
[iOS] Создание статической библиотеки Static Library с использованием Cocoapods
В свое время мне понадобилось обернуть написанный модуль в библиотеку. Порядочно погуглив, я нашел кучу туториалов, суть которых - создается библиотека с одним-двумя .swift - файлами. У меня же был целый проект, да еще с подами (а ля Alamofire, Moya, EasyPeasy и др), и создание библиотеки именно этим и усложнялось, было непонятно как переносить поды, нужно ли их вообще переносить и как в целом правильно сбилдить такую библиотеку.
Что тимлиду спросить о компании на собеседовании
По мотивам своих собеседований, а также собеседований коллег и mentee, составил список вопросов от тимлида к компании, что стоит прояснить на собеседовании — что спросить собеседующего.
Вопросы подойдут, возможно, не только тимлиду, но были придуманы для него.
Каковы финансовые показатели компании?
Является ли компания прибыльной или тратит деньги инвесторов? Или даже до инвесторов ещё не дошло, и основатели пока платят из своего кармана? Как выглядит бизнесовый план развития?
Если компания имеет представительство в РФ, официальное ли (по ТК РФ) трудоустройство и полностью ли "белая" зарплата?
Даже сейчас некоторые компании порой используют "серые" схемы выплат зарплат. Также иногда бывают сотрудники, сознательно просящие "серую" схему.
Расскажите про ваше понимание «хорошего тимлида»
У собеседника должно быть четкое и непротиворечивое понимание, что он вкладывает в понятие «тимлид» и какие критерии используются для оценки работы тимлида.
Возможно, это понимание даже прописано в должностных инструкциях.
Где-то тимлид должен быть разработчиком (то есть, писать код) с минимальной общественной нагрузкой, где-то руководителем, где-то пытаться совместить.
Как написать правила для Checkmarx и не сойти с ума
Привет, Хабр!
В своей работе наша компания очень часто имеет дело с различными инструментами статического анализа кода (SAST). Из коробки они все работают средне. Конечно, всё зависит от проекта и используемых в нём технологий, а также, насколько хорошо эти технологии покрываются правилами анализа. На мой взгляд, одним из самых главных критериев при выборе инструмента SAST является возможность настраивать его под особенности своих приложений, а именно писать и изменять правила анализа или, как их чаще называют, Custom Queries.
Мы чаще всего используем Checkmarx - очень интересный и мощный анализатор кода. В этой статье я расскажу про свой опыт написания правил анализа для него.
Что такое Docker: краткий экскурс в историю и основные абстракции
10 августа в Слёрм стартовал видеокурс по Docker, в котором мы разбираем его полностью — от основных абстракций до параметров сети.
В этой статье поговорим об истории появления Docker и его основных абстракциях: Image, Cli, Dockerfile. Лекция рассчитана на новичков, поэтому вряд ли будет интересна опытным пользователям. Здесь не будет крови, аппендикса и глубокого погружения. Самые основы.
О чем стоит задуматься при внедрении дежурств
С появлением Devops, многие инженеры в наши дни так или иначе организуют дежурства, что когда-то было исключительно обязанностью сисадминов или инженеров по эксплуатации. Дежурство, особенно проходящее в нерабочие часы, не является задачей, которая нравится большинству людей. Дежурство Oncall может нарушать наш сон, мешать обычной работе, которую мы пытаемся сделать в течение дня и мешать нашей жизни в целом. Поскольку все больше и больше команд участвуют в дежурствах, мы задались вопросом — «Что мы как отдельные люди, команды и организации, можем сделать для того, чтобы дежурства стали более человечными и стабильными?».
Кастомный скрипт при закрытии крышки ноутбука и блокировка экрана без сна
10 отличных Github репозиториев, которые должен знать каждый веб-разработчик
Кроме огромных репозиториев с источниками для подготовки к интервью, здесь много чего интересного
Я собрал список из десяти отличных репозиториев на Github, которые помогут вам существенно расширить свои знания.
А я его перевел, т.к. показалось, что пост многим будет интересен. Перевод очень вольный: я опустил нерелевантные промо-ссылки и гипер эмоциональные похвалы автора оригинала, чтобы оставить только суть. Еще, обновил цифры, чтобы информация была более актуальной к моменту публикации этого перевода. Итак, перейдем к списку.
Встраиваем своё устройство «Умного дома» в экосистему SmartThings
Рассмотрим, как встроить свое собственное устройство с платформой «Умного дома» Samsung SmartThings. Мы реализуем вариант прямого (Direct) подключения для управления устройством «Умного дома» на примере кнопки-выключателя и трехцветной лампочки.
Linux. Настройка клавиатуры
Для чего вообще специально настраивать клавиатуру?
Можно пользоваться и стандартными настройками, но иногда внесенные изменения дают возможность набирать быстрее (это, конечно, не слепая печать, но все же), совершать меньше ошибок, меньше переключать раскладку...
Почему я захотел изменить свою клавиатуру?
Во-первых, когда я начал использовать vim
как основной редактор, я понял, что не хочу каждый раз тянуться к ESC
. Кроме того, я писал в основном на питоне, поэтому ;
нажимал сильно реже, чем :
, а в vim
разница стала более явной.
Во-вторых, через некоторое время я стал пользоваться вимовскими комбинациями для навигации в браузере, дальше — тайловый оконный менеджер i3
, где они тоже использовались, и хотелось перейти на них везде (вместо обычных стрелок, например, в файловом менеджере).
Docker Compose: упрощение работы с использованием Makefile
Большие монолитные сервисы в наши дни заменяют независимыми автономными микросервисами. Микросервис можно рассматривать как приложение, которое служит единственной и очень специфической цели. Например — это может быть реляционная СУБД, Express-приложение, Solr-сервис.
В наши дни сложно представить себе разработку новой программной системы без применения микросервисов. А эта ситуация, в свою очередь, ведёт нас к платформе Docker.
Мениски в коленном суставе — что это, зачем это, как это лечится если повредилось?
Цель данной статьи – информированность людей.
Кому интересно – заходим под кат.
Метрики — индикаторы здоровья проекта
Под катом Руслан Остропольский (RusOstropolsky) расскажет всё о метриках, которые являются индикаторами здоровья IT-систем. Разберет, какие бывают метрики, как они меняются по мере развития проекта, какие в каком проекте лучше применять. Объяснит, как качество и бизнес помогают друг другу с точки зрения метрик и зачем нужна эта коллаборация.
Service Mesh: что нужно знать каждому Software Engineer о самой хайповой технологии
Комикс от Sebastian Caceres
Введение
Если вы инженер-программист, работающий где-то в районе бэкенд-систем, термин «service mesh», вероятно, уже прочно закрепился в вашем сознании за последние пару лет. Благодаря странному стечению обстоятельств, это словосочетание захватывает отрасль все сильнее, а хайп и связанные с ним рекламные предложения нарастают словно снежный ком, летящий вниз по склону и не подающий никаких признаков замедления.
Service mesh зародилась в мутных, тенденциозных водах экосистемы cloud native. К сожалению, это означает, что значительная часть связанной с ней полемики варьируется от «низкокалорийной болтовни» до — если воспользоваться техническим термином — откровенной чуши. Но если отсеять весь шум, можно обнаружить, что у service mesh есть вполне реальная, определенная и важная функция.
В этой публикации я попытаюсь проделать именно это: представить честное, глубокое, ориентированное на инженеров руководство по сервисным сеткам. Я собираюсь ответить не только на вопрос: «Что это такое?», — но и «Зачем?», а также «Почему именно сейчас?». Наконец, попытаюсь обрисовать, почему (по моему мнению) конкретно эта технология вызвала такой сумасшедший ажиотаж, что само по себе интересная история.
Разбираемся с передачей видео в разрешении 4К на 60 Гц через хаб USB-C
USB-C предлагает новые потрясающие возможности, включая подключение внешних мониторов по USB-порту. Распространены недорогие конвертеры USB-C на DisplayPort и HDMI. Также часто встречаются хабы USB-C с поддержкой внешних мониторов, однако попытки разобраться в их возможностях и ограничениях могут сильно вас запутать. Некоторые из них совместимы с Mac, некоторые – нет. Некоторым нужны драйвера. Очень сильно разнится поддержка разрешений и частоты обновления. Некоторые рекламируются как «не предназначенные для игр». Делаются упоминания об альтернативных режимах, дуальных режимах, и прочем. Цены разнятся от $20 до $300+, причем функции у тех и других очень похожи. Что вообще происходит?
Это инструкция по передаче видео высокого разрешения по USB-C, которую я хотел бы в своё время иметь. Если вы хотите подключить монитор высокого разрешения к своему компьютеру, имеющему выход USB-C, читайте далее.
Как работает Flutter
Как Flutter работает на самом деле?
Что такое Widgets, Elements, BuildContext, RenderOject, Bindings?..
Сложность: Новичок
Вступление
В прошлом году (прим: в 2018), когда я начал свое путешествие в сказочный мир Flutter, в Интернете было очень мало информации по сравнению с тем, что есть сегодня. Сейчас, несмотря на то, что уже написано много материалов, лишь небольшая их часть рассказывает о том, как на самом деле работает Flutter.
Что же такое Widgets (виджеты), Elements (элементы), BuildContext? Почему Flutter быстрый? Почему иногда он работает не так, как ожидается? Что такое деревья и зачем они нужны?
В 95% случаев при написании приложения вы будете иметь дело только с виджетами, чтобы что-то отображать на экране или взаимодействовать с ним. Но неужели вы никогда не задумывались, как вся эта магия работает внутри? Как система узнает, когда обновить экран и какие части должны быть обновлены?
Содержание:
Обратное собеседование: какие вопросы задавать компании?
Этот текст — перевод репозитория viraptor. Вы можете предложить свои вопросы на английском, в оригинальном репозитории, или на русском — в моём форке, а я постараюсь перевести их и передать автору
Обратное собеседование
Это список вопросов, который может быть интересен соискателю должности технического специалиста. Пункты не упорядочены и могут быть неприменимы к конкретной должности или виду работы. Вначале это был просто список вопросов, но со временем он стал включать ещё и те вещи, которых хотелось бы видеть больше, и «красные флажки», то есть вещи, которых хочется избегать. Ещё я обратил внимание, что многие люди, которых я собеседовал, не задавали эти вопросы, и, я думаю, это были упущенные возможности.
Если вы задавали вопросы, которых нет в этом списке, отправьте пожалуйста пулл-реквест!
Блокировки в PostgreSQL: 2. Блокировки строк
Блокировки строк
Устройство
Напомню несколько важных выводов из прошлой статьи.
- Блокировка должна существовать где-то в разделяемой памяти сервера.
- Чем выше гранулярность блокировок, тем меньше конкуренция (contention) среди одновременно работающих процессов.
- С другой стороны, чем выше гранулярность, тем больше места в памяти занимают блокировки.
Нам безусловно хочется, чтобы изменение одной строки не приводило к блокировке других строк той же таблицы. Но и заводить на каждую строку по собственной блокировке мы не можем себе позволить.
Есть разные пути решения этой проблемы. В некоторых СУБД происходит повышение уровня блокировки: если блокировок уровня строк становится слишком много, они заменяются одной более общей блокировкой (например, уровня страницы или всей таблицы).
Как мы увидим позже, в PostgreSQL такой механизм тоже применяется, но только для предикатных блокировок. С блокировками строк дело обстоит иначе.
Что значит unsafe в Rust?
Привет, Хабр! Представляю вашему вниманию перевод статьи "What Is Rust's unsafe?" автора Nora Codes.
Мне доводилось видеть много недопониманий относительно того, что значит ключевое слово unsafe для полезности и правильности языка Rust и его продвижения как "безопасного языка системного программирования". Правда намного сложнее, чем можно описать в коротком твите, к сожалению. Вот как я ее вижу.
В целом, ключевое слово unsafe не выключает систему типов, которая поддерживает код на Rust корректным. Она только дает возможность использовать некоторые "суперспособности", такие как разыменование указателей. unsafe используется для реализации безопасных абстракций на основе фундаментально небезопасного мира, чтобы большая часть кода на Rust могла использовать эти абстракции и избегать небезопасного доступа к памяти.
Information
- Rating
- Does not participate
- Location
- Vernon, British Columbia, Канада
- Date of birth
- Registered
- Activity