Search
Write a publication
Pull to refresh
6
0
Send message

Почему «angina» — это не «ангина», а «resin» — не «резина», или Ложные друзья переводчика

Reading time5 min
Views9.4K
У немцев, которые изучают английский как второй язык, очень распространен анекдот.

Английское слово «become» и немецкое «bekommen» очень похожи по написанию и звучанию. Но означают разное. «Become» — «становиться, превращаться», а «bekommen» — «получить, найти».

Немец перепутал слова и, придя в мясной магазин, спросил: «Where can I become a sausage?». Вместо «Где я могу найти колбасу?» получилось «Где я могу стать колбасой?».

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


Code review Терминатор. Ревью, за которое вам скажут спасибо

Reading time4 min
Views7.3K

Рыжик помогает мне ревьюить код. А когда ему что-то не нравится — тоже настоящий Терминатор

«Code review Терминатор», — однажды назвал меня коллега после особо продуктивного ревью. С одной стороны, это тешило ЧСВ и было приятно. С другой — коллега действительно научился чему-то новому, и это позволило писать ему более качественный код. Так что win-win.

После смены работы сменились и коллеги. Но и на новом месте тоже начали благодарить за ревью. Решил разобраться, почему, и разложил по полочкам. Получилось 11 рекомендаций.
Читать дальше →

Восемь цветов радуги: о цвете с точки зрения математики

Reading time9 min
Views15K
Больше пяти лет мы публикуем на Хабре статьи на различные темы компьютерного зрения. Чаще всего они связаны с распознаванием документов, потому что нам всегда очень не терпится поделиться с вами всем крутым и новым, что мы сделали в Smart IDReader. Хотя мы честно стараемся изложить наши знания в «универсальном» ключе, чтобы вы, наши читатели Хабра, могли легко их использовать в своих проектах и стартапах. Сегодня мы решили пойти дальше и представить широкой аудитории фундаментальный математически стройный материал на тему цвета, изложенный простыми словами.
Читать дальше →

Реальная стоимость жизни в Кремниевой Долине для разработчика

Reading time5 min
Views153K

Зачем это читать?


Всем привет! Меня зовут Винсент, и я с 2018 года живу в Кремниевой Долине со своей супругой и сыном.


Своим фильмом, Дудь хотел поднять стартапный ажиотаж в России, но в итоге возбудил всех моих товарищей гораздо больше здесь, в Silicon Valley.


Этот пост — расчет стоимости жизни "обычного разработчика" (не "стартапера"), который работает "на дядю". Все максимально честно и подробно.

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

C2x: будущий стандарт C

Reading time7 min
Views41K


Я ловлю в далёком отголоске,
Что случится на моём веку.
(«Гамлет», Борис Пастернак)

Признаться, пишу на чистом C я не так уж и часто и за развитием языка уже давно не слежу. Но тут произошло два неожиданных события: С вернул себе звание популярнейшего языка программирования по версии TIOBE и случился анонс первой за долгие годы действительно интересной книги, посвящённой этому языку. Поэтому я провёл несколько вечеров за изучением материалов о C2x — следующей версии C.


Самыми, на мой взгляд, интересными нововведениями я и хочу поделиться с читателями Хабра.

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

Ваш профессиональный спад придет (гораздо) раньше, чем вы думаете

Reading time24 min
Views63K
Вот как извлечь из него максимум.


Изображение: Люси Гутьеррес

«Неправда, что ты больше никому не нужен».

Эти слова исходили от пожилой женщины, сидящей позади меня на позднем вечернем рейсе из Лос-Анджелеса в Вашингтон. В самолете было темно и тихо. Мужчина, которого я счел за ее мужа, почти беззвучно пробормотал в ответ что-то вроде «Лучше бы я был мертв».

И снова женщина: «О, прекрати это говорить».

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

Когда в конце рейса включился свет, я наконец-то увидел опустошенного человека. Я был в шоке. Я узнал его – он был и остается знаменитым на весь мир. Тогда, в возрасте восьмидесяти лет, он был любим как герой за мужество, патриотизм и достижения многих десятков лет назад.
Читать дальше →

Полигоны Another World

Reading time4 min
Views11K

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


Хорошим выбором для этого мог бы стать DOOM. Мегахит 1994 года от id Software был портирован на всё, что только можно. Игра спроектирована вокруг ядра, чётко разделённого на слои. Обычно легко найти и прочитать реализацию шести подсистем ввода-вывода.


Другим выбором могла бы стать Another World 1991 года от Эрика Шайи, в Северной Америке более известная под именем Out Of This World. Я бы сказал, что на самом деле её интереснее изучать, чем DOOM, из-за полигональной графики, подходящей для диких оптимизаций. В некоторых случаях хитрые трюки позволяли игре работать на оборудовании, созданном за пять лет до выхода игры.



Как скомпилировать декоратор — C++, Python и собственная реализация. Часть 1

Reading time6 min
Views8.7K

Данная серия статей (как выяснилось, целых две) будет посвящена возможности создания декоратора в языке С++, особенностям их работы в Python, а также будет рассмотрен один из вариантов реализации данного функционала в собственном компилируемом языке, посредством применения общего подхода для создания замыканий — closure conversion и модернизации синтаксического дерева. Вторая часть уже доступна: здесь.



Дисклеймер
В данной статье под декоратором понимается не паттерн проектирования, а декоратор в Python — способ изменить поведение функции. Декоратор в Python это функция, применяемая к другой (декорируемой). Функция-декоратор создает замыкание (новую функцию), вызывающее декорируемую функцию внутри себя и делающее что-то еще нужное программисту (логгирование вызовов, захват ресурсов и т.д.), а интерпретатор Python затем «привязывает» к названию целевой функции получившееся замыкание.
Читать дальше →

Основы ZFS: система хранения и производительность

Reading time17 min
Views121K


Этой весной мы уже обсудили некоторые вводные темы, например, как проверить скорость ваших дисков и что такое RAID. Во второй из них мы даже пообещали продолжить изучение производительности различных многодисковых топологий в ZFS. Это файловая система следующего поколения, которая сейчас внедряется повсюду: от Apple до Ubuntu.
Читать дальше →

ЕГЭ по информатике или страдания длиною в года

Reading time5 min
Views77K


Почему я решил написать на эту тему


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

60+ игр для гиков

Reading time35 min
Views54K
Приветствую всех брутальных Хабрачан и чувственных Хабрачаночек!

Благодаря вашей поддержке я смог написать статьи про сериалы в мире IT. Вместе мы прошли через многое. В последней статье я попросил вас рассказать своё мнение о том, стоит ли мне писать статью про гиковские игры и вы снова поддержали меня. Спасибо за это!

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

Так как подборка очень большая, я не буду детально описывать каждую игру, но расскажу интересные особенности про все. Сортировал игры я не по значимости, а по алфавиту, чтобы было проще и читать, и искать.

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

Что же. Давайте не будем тянуть время и поговорим о подобранных мною для вас играх!


systemd десять лет спустя. Историческая и техническая ретроспектива

Reading time18 min
Views51K
Десять лет назад был анонсирован systemd, который устроил революцию в управлении системой дистрибутивов Linux, тем самым разделив пользователей Linux на несколько лагерей. Качество и природа дебатов не сильно улучшилась со времён пламенных войн 2012-2014 годов, и systemd всё ещё остаётся не до конца понятым и изученным инструментом и с технической, и с общественной стороны, несмотря на пристальное внимание к нему сообщества.

Это пост не совсем о том, как пользоваться systemd. Тут, скорее, будет говориться об истории его возникновения, о его компонентах в целом, и о том, как понять систему, которая начиналось как просто PID 1 и стала тем, что я бы назвал middleware современного дистрибутива Linux.

А может, это просто набор крайне вольных переводов различных материалов с блогов, каналов и статей на Arch wiki. Вам решать.

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

Но прежде чем начать речь о systemd, хочу рассказать об init.
Читать дальше →

Айзек Азимов: Откуда людям приходят новые идеи?

Reading time7 min
Views19K
Эссе Айзека Азимова о творчестве от 1959 года. Айзек Азимов (1920–1992) – американский писатель и профессор биохимии Бостонского университета, известный как автор научно-фантастических и научно-популярных произведений. Азимов считается одним из «большой тройки» писателей-фантастов своего времени наряду с Робертом Хайнлайном и Артуром Кларком.

Заметка Артура Обермайера, друга автора:

В 1959 году я работал ученым в Allied Research Associates в Бостоне. Компания была порождением MIT и изначально изучала воздействие ядерного оружия на конструкции летательных аппаратов. Компания заключила с ARPA контракт с аббревиатурой GLIPAR (Guide Line Identification Program for Antimissile Research) с целью выявления наиболее творческих подходов к созданию противоракетной оборонительной системы. Правительство понимало, что сколько бы ни было потрачено на совершенствование и дополнение существующих технологий, они все равно останутся неудовлетворительными. Они хотели, чтобы мы и несколько других подрядчиков думали нестандартно.

Когда я только подключился к проекту, я предположил, что Айзек Азимов, который был моим хорошим другом, будет достойным участником. Он согласился и присутствовал на нескольких встречах. Позже он решил не продолжать, потому что не хотел иметь доступ к какой-либо засекреченной информации; это ограничило бы его свободу самовыражения. Однако перед уходом он написал в качестве своего единственного формального вклада это эссе о творчестве. Это эссе никогда не публиковалось и не выходило за рамки нашей небольшой группы. Когда я недавно вновь обнаружил его при разборе старых бумаг, я понял, что его суть столь же актуальна сегодня, как и когда он его написал. Оно описывает не только творческий процесс и природу творческих людей, но и среду, которая способствует творчеству.
Читать дальше →

Внутри виртуальной машины Python. Часть 2

Reading time27 min
Views17K

Привет, Хабр. Перевод этой статьи занял намного больше времени, чем ожидалось. Мне очень хотелось сделать всё качественно и без обмана, но если найдёте неточности, буду рад услышать о них. Также я буду сам перечитывать и исправлять ошибки предыдущих статей, если где-то оказался не прав. Мне предстоит перевести ещё около 4-5 статей такого объёма, поэтому прошу оценить мой труд, если вам понравилось.
Читать дальше →

Основные недостатки языка Python

Reading time8 min
Views45K

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


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


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

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

Аспирантка решила задачу «Узла Конвея», над которой бились десятки лет

Reading time8 min
Views10K
image

Лизе Пиччирильо (Lisa Piccirillo) потребовалось меньше недели, чтобы ответить на давний вопрос о странном узле, обнаруженном более полувека назад легендарным Джоном Конвеем.

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

“Я не позволяла себе работать над этим днем, — сказала она, — потому что не считала это настоящей математикой. Я думала, что это была моя домашняя работа.»

Вопрос заключается в том, является ли узел Конвея — рычаг, открытый более полувека назад легендарным математиком Джоном Хортоном Конвеем, — кусочком узла более высокого измерения. «Срезанность» — это один из первых естественных вопросов, которые теоретики узлов задают об узлах в пространствах с более высокими измерениями, и математики смогли ответить на него для всех тысяч узлов с 12 или менее пересечениями, за исключением одного. Узел Конвея, который имеет 11 пересечений, десятилетиями дразнил математиков.

Исключения C++ через призму компиляторных оптимизаций

Reading time14 min
Views13K


На дворе 21-й век, непроизводительная реализация обработки C++ исключений на основе setjmp/longjmp уже в прошлом. Современные компиляторы, такие как gcc и clang, используют продвинутую реализацию C++ исключений, называемую zero-cost exception handling. Но насколько действительно это zero-cost?

На конференции C++ Russia 2019 Piter Роман Русяев рассказал, каким образом С++ исключения оказывают влияние на компиляторные оптимизации: какие оптимизации не могут быть применены в случае, если функция может бросить исключения, а какие оптимизации становится труднее применять.

Роман — разработчик компиляторов C/C++ и компиляторов нейронных сетей для специализированных платформ, таких как Neural Processing Unit, работает в Samsung.

Под катом текстовая расшифровка и видео доклада.

Аспирантка решила топологическую задачу полувековой давности

Reading time7 min
Views99K

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




Летом 2018 года на конференции по низкоразмерной топологии и геометрии Лиза Пиччирилло услышала о небольшой математической проблемке. Она показалась неплохим испытательным полигоном для некоторых техник, которые Лиза разрабатывала, будучи аспиранткой в Техасском университете в Остине.

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

Вопрос состоял в следующем: является ли узел Конвея – сложное переплетение верёвки, открытое более пятидесяти лет назад легендарным математиком Джоном Хортоном Конвеем – срезом узла более высокой размерности. «Срезанность» – один из первых естественных вопросов, которые специалисты по теории узлов задают об узлах из пространств высоких разрешений, и математики смогли ответить на него для многих тысяч узлов, имеющих не более 12 пересечений – всех, кроме одного. Узел Конвея, имеющий 11 пересечений, дразнил математиков много десятилетий.

Англицизмы захватывают русский язык: почему так происходит

Reading time6 min
Views84K
«Если он этот таск зафакапит, а мне опять придется баги фиксить, я засабмичу шефу репорт и не буду аппрувить энгежмент на следующий проект».

Такой монолог вполне можно услышать в каком-нибудь IT-офисе. Если перевести его на нормальный русский, то получится что-то вроде:

«Если он провалит и это задание, а мне опять придется исправлять ошибки, я подам шефу отчет и просто не буду участвовать в следующем проекте».

Но почему не использовать нормальный русский язык? Ведь англицизмы постепенно захватывают его, и теперь вместо встреч во многих компаниях митинги, вместо кадровиков — эйчары, а вместо особенностей продукта — фичи.


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

О качестве водопроводной воды замолвите слово (ОПРОС)

Reading time1 min
Views2.6K


Добрый день!

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

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

Information

Rating
Does not participate
Location
Новосибирск, Новосибирская обл., Россия
Date of birth
Registered
Activity