На протяжении последних месяцев я использую Go для имплементаций Proof of Concept (прим.пер.: код для проверки работоспособности идеи) в свободное время, отчасти для изучения самого языка программирования. Программы сами по себе очень просты и не являются целью написания статьи, но сам опыт использования Go заслуживает того, чтобы сказать о нем пару слов. Go обещает быть (прим.пер.: статья написана в 2015) массовым языком для серьезного масштабируемого кода. Язык создан в Google, в котором активно им пользуются. Подведя черту, я искренне считаю, что дизайн языка Go плох для умных программистов.
Дмитрий Кашицын @Halt
Программист, линуксоид, паяльник-железячник
Что делает самолёт с вашей кожей и глазами
4 min
47K
Самолёт удивительно не подходит для жизни. Там внутри очень пересушенный воздух, бьющий по глазам и коже, злобная радиация (на самом деле, только в определённых широтах, и это касается только много летающих пилотов), другое давление, подло заставляющее вас пукать.
Итак, кожа и глаза. Самолёт, химлаборатория или цех производства — это одно и то же. Кондиционированный пересушенный воздух. Если полёт больше 3 часов — глаза начнёт жечь, а на коже могут возникнуть высыпания. Они вам вряд ли нужны, как и красные покраснение глаз, поэтому — готовимся.
+25
Кто такие «седые странники» Австралии
7 min
89K
«Седой странник» пополняет запасы воды из артезианского источника в пустыне NT, насос питается ветряком
В Австралии очень длинный средний срок жизни — 85 лет. Для сравнения — у нас только недавно он перешагнул 70, до этого был в районе 65. Пенсия наступает в 55-65 лет. Остаётся ещё примерно 20-30 лет на то, чтобы что-то делать.
Представьте: вам 55, пенсии нормально хватает на жизнь без излишеств, дети уже разъехались. Вы живёте в своём доме где-то за городом и думаете, что бы такое сделать. Ну а дальше начинается странное. Настолько, что они смогли во многом изменить образ жизни очень многих мелких поселений.
Итак, дом сдаётся в аренду, и бабушки с дедушками покупают себе дом-на-колёсах. Это или прицеп к внедорожнику с контейнером-домом, или фургон типа «сухопутная яхта» или даже переделанный автобус. И едут в «кругосветку» по Австралии — это легко, потому что весь континент — это одна страна (раза в два меньше России), и есть кольцевая дорога вокруг. На годик-полтора, как поначалу думают эти прекрасные люди. И застревают на 10-15 лет.
+186
Договоры — это как отладка
7 min
29K7.2. Как форс-мажор указана забастовка в отрасли и регионе, это лучше вычеркнуть, т.к. неясно, в какой отрасли и в каком регионе.
Чтобы быть плохим юристом, не надо обладать специальными навыками: достаточно здравого смысла, чтобы разбираться в документах. Чтобы быть приемлемым юристом — ещё нужна хорошая память для того, чтобы помнить, что и где в нормативах и прецедентах. А чтобы быть отличным — ещё иметь огромную практику и нездоровое чувство юмора. Хотя последнее необязательно, конечно.
Каждый наш договор страхует юрист-отладчик, который как брекпоинтами размечает точки рисков. Сейчас покажу пару примеров того, что он видит и чувствует.
+79
Путеводитель по исходникам LLVM
6 min
8.4KTranslation
В моём углубленном курсе компиляторов прошлой осенью мы провели некоторое время, изучая дерево исходников LLVM. Миллион строк кода на C++ выглядят пугающе, но я нахожу это интересным упражнением, и, по крайней мере, некоторые студенты с этим согласны, и я подумал, что я попытаюсь написать что-то подобное. Мы будем использовать LLVM 3.9, но предыдущие (и, возможно, будущие) релизы не сильно отличаются.


+13
Штурм и натиск генной терапии старения
66 min
22K
Экспрессия генов и генная терапия
Концепция генной терапии существует на протяжении последних двадцати-тридцати лет. Она заключатся в том, что наиболее радикальный способ борьбы с заболеваниями — это уничтожение самой генетической причины болезни, а не его следствий.
Причиной может быть нарушение определенного гена (мутация), которое передалось от родителей при наследственных заболеваниях, или мутация гена уже во взрослом организме, вызывающая, например, рак. Кроме того, причиной может являться просто слишком высокая (или, наоборот, низкая) активность нормального гена, которая увеличивает риск хронического заболевания, такого как диабет или атеросклероз.
Способ борьбы с этими изменениями заключается во введении в клетку новой генетической информации, призванной исправить ту, с которой связана болезнь.
Вначале немного углубимся в теорию. Молекула ДНК — дезоксирибонуклеиновая кислота — является носителем кода, который управляет развитием и функционированием всего живого. В ДНК содержится программа, которая обеспечивает превращение одной единственной исходной клетки в слаженно работающий организм, состоящий из многочисленных клеток, объединенных в разнообразные ткани и органы.
+27
Правила английского, которые нарушают ваши иностранные коллеги
4 min
62KTutorial

Если вы общаетесь с коллегами на английском, вы наверняка не хотите ударить перед ними в грязь лицом и стараетесь говорить максимально правильно, по всем правилам грамматики, фонетики и еще какой-нибудь -тики. А что, если бы мы сказали вам, что можно спокойно нарушать эти самые правила и оставаться пОнятыми? В этой статье мы постараемся описать случаи, когда можно допускать ошибки и почему это можно делать.
Двойное отрицание
Вы же помните, что в предложении на английском достаточно одного отрицания? А потом вдруг слушаем песню Rolling Stones и слышим “I can’t get no satisfaction”. Все дело в том, что это песня, тут можно, скажите вы. И это верно. Но еще стоит упомянуть, что двойное отрицание делает фразу эмоциональнее. Поэтому такие фразы и стали популярны. Но это неформальный способ, так что не увлекайтесь с двойными отрицаниями.
+67
Бойтесь шахмат, Вам навязываемых
8 min
75K
В последнее время, все больше и больше разговоров о том, что детям начального школьного возраста надо преподавать шахматы. В данном вопросе выступили всевозможные руководители (Илюмжинов, фонд Тимченко, Васильева, Путин). Шахматный курс поступил на опробирование в школы в начальные классы, дети начали по нему обучение. И вот тут хорошие новости заканчиваются… Все на самом, все значительно сложнее чем кажется. И возможно хуже.
Если у Вас дети учатся в школах, и их используют для данного пробного внедрения системы «обучения» шахматам, то вам однозначно под кат. Если нет – то скоро будет ваша очередь.
В этой статье речь пойдет про курс «Шахматы в школе», авторы Э.Э. Уманская, Е.И. Волкова, Е.А. Прудникова. Добро пожаловать в ад…
+62
13 сюрпризов неайтишной компании
9 min
93KОтработав много лет в компаниях, занимающихся разработкой программного обеспечения на заказ, невольно начинаешь задумываться — а как всё-таки выглядит вся эта суета с другой стороны, со стороны заказчика? Грешным делом начинает казаться, что там всё просто и понятно, все люди сведущи и профессиональны, решения принимаются осмысленно и обоснованно, да и вообще, жизнь кипит, а не как в этом нашем айтишном болоте…
Пару-тройку лет назад подобные соображения подтолкнули меня попробовать поработать в компании, где источником дохода является что угодно, только не разработка софта. Удачно подвернулось предложение от бывших коллег занять должность IT-директора в одной из ведущих организаций финансовой сферы, и я приступил к кипучей деятельности, браво закатав рукава. Теперь, спустя некоторое время, с высоты, так сказать, полученного опыта, хочу поделиться сюрпризами, что ожидали меня на этом пути – конечно, те, кому уже довелось поработать в разных сферах и разных организациях, скорее всего не обнаружат тут для себя ничего ни нового, ни удивительного, однако для наивных айтишников вроде меня, видавших доселе только однотипные «бодишопы»-аутсорсеры, что-то может показаться и вправду неожиданным.
Пару-тройку лет назад подобные соображения подтолкнули меня попробовать поработать в компании, где источником дохода является что угодно, только не разработка софта. Удачно подвернулось предложение от бывших коллег занять должность IT-директора в одной из ведущих организаций финансовой сферы, и я приступил к кипучей деятельности, браво закатав рукава. Теперь, спустя некоторое время, с высоты, так сказать, полученного опыта, хочу поделиться сюрпризами, что ожидали меня на этом пути – конечно, те, кому уже довелось поработать в разных сферах и разных организациях, скорее всего не обнаружат тут для себя ничего ни нового, ни удивительного, однако для наивных айтишников вроде меня, видавших доселе только однотипные «бодишопы»-аутсорсеры, что-то может показаться и вправду неожиданным.
+169
Что каждый программист на C должен знать об Undefined Behavior. Часть 1/3
7 min
32KTranslation
Часть 1
Часть 2
Часть 3
Люди иногда спрашивают, почему код, скомпиливанный в LLVM иногда генерирует сигналы SIGTRAP, когда оптимизация была включена. Покопавшись, они обнаруживают, что Clang сгенерировал инструкцию «ud2» (подразумевается код X86) — то же, что генерируется __builtin_trap(). В этой статье рассматривается несколько вопросов, касающихся неопределённого поведения кода на C и того, как LLVM его обрабатывает.

В этой статье (первой из трёх) мы попытаемся объяснить некоторые из этих вопросов, чтобы вы могли лучше понять связанные с ними компромиссы и сложности, и возможно, изучить немного больше тёмные стороны С. Мы выясним, что C не является «высокоуровневым ассемблером», как многие опытные программисты на C (особенно те, кто сфокусирован на низком уровне) предпочитают думать, и что C++ и Objective-C напрямую унаследовали множество таких проблем.
Часть 2
Часть 3
Люди иногда спрашивают, почему код, скомпиливанный в LLVM иногда генерирует сигналы SIGTRAP, когда оптимизация была включена. Покопавшись, они обнаруживают, что Clang сгенерировал инструкцию «ud2» (подразумевается код X86) — то же, что генерируется __builtin_trap(). В этой статье рассматривается несколько вопросов, касающихся неопределённого поведения кода на C и того, как LLVM его обрабатывает.

В этой статье (первой из трёх) мы попытаемся объяснить некоторые из этих вопросов, чтобы вы могли лучше понять связанные с ними компромиссы и сложности, и возможно, изучить немного больше тёмные стороны С. Мы выясним, что C не является «высокоуровневым ассемблером», как многие опытные программисты на C (особенно те, кто сфокусирован на низком уровне) предпочитают думать, и что C++ и Objective-C напрямую унаследовали множество таких проблем.
+31
Почему LLVM может вызвать никогда не вызываемую функцию?
14 min
18KЧто бы ни сказал тебе твой дракон, он солгал. Драконы лживы. Ты не знаешь, что ждет тебя на другой стороне.
Майкл Суэнвик. «Дочь железного дракона»
Не так давно на Хабре был опубликован пост под названием "Как может вызваться никогда не вызываемая функция?". Выводы из статьи простые: в случае undefined behaviour компилятор вправе предпринимать любые действия, даже если они будут совершенно неожиданными. Однако меня заинтересовал сам механизм этой оптимизации. Результатом своего небольшого исследования я хочу поделиться с уважаемым сообществом хабра.

+84
Деловая переписка на английском языке: фразы и советы
18 min
632KЕлена Соловьева, менеджер проектов в компании Лаборатория Касперского, специально для блога Нетологии поделилась советами о том, как вести деловую переписку с иностранными коллегами и партнерами на английском языке. Статья участвует в конкурсе.
Электронные сообщения дают возможность быстро обмениваться информацией на больших расстояниях. По скорости передачи идеи это приравнивает их к телефонному разговору. Однако электронные письма сохраняются на почтовых серверах и используются как печатное свидетельство наших слов. Поэтому электронная переписка требует ответственного отношения.
Задача становится сложнее, если вы общаетесь на неродном английском языке с представителями других культур. В статье я поделюсь, на что в этом случае обратить внимание, как избежать ошибок и достичь взаимопонимания с иностранными коллегами и партнерами.
Электронные сообщения дают возможность быстро обмениваться информацией на больших расстояниях. По скорости передачи идеи это приравнивает их к телефонному разговору. Однако электронные письма сохраняются на почтовых серверах и используются как печатное свидетельство наших слов. Поэтому электронная переписка требует ответственного отношения.
Задача становится сложнее, если вы общаетесь на неродном английском языке с представителями других культур. В статье я поделюсь, на что в этом случае обратить внимание, как избежать ошибок и достичь взаимопонимания с иностранными коллегами и партнерами.
+96
LIGO: линейка точностью в 1/10000 диаметра протона
13 min
41KНобелевская премия по физике за 2017 год ожидаемо досталась Кипу Торну, Райнеру Вайссу и Берри Беришу за экспериментальное обнаружение гравитационных волн на лазерно-интерферометрических приборах LIGO. Этот успех (а обнаружение гравитационных волн (ГВ) от двух сливающихся черных дыр первый раз произошло 14 сентября 2015 года) стал плодом примерно 50-летнего развития техники для детектирования ГВ. В результате этого развития инструмент LIGO обладает леденящими характеристиками, впрочем, никакие человеческие эпитеты не передают уровня прецизионности этой машины.

Лазерно-интерферометрическая гравитационная обсерватория LIGO в Ливингстоне, Луизиана, США.
Сегодня поговорим об инженерном устройстве LIGO. Но прежде — о гравитационных волнах вообще.

Лазерно-интерферометрическая гравитационная обсерватория LIGO в Ливингстоне, Луизиана, США.
Сегодня поговорим об инженерном устройстве LIGO. Но прежде — о гравитационных волнах вообще.
+91
Впервые зарегистрированы гравитационные волны от слияния нейтронных звезд — и свет от них
10 min
29KКоллаборация LIGO-Virgo вместе с астрономами из 70 обсерваторий объявила сегодня о наблюдении слияния двух нейтронных звезд в гравитационном и электромагнитном диапазонах: увидели гамма-всплеск, а также рентгеновское, ультрафиолетовое, видимое, инфракрасное и радио излучение.

Иллюстрация столкновения нейтронных звезд. Узкий выброс по диагонали — поток гамма-лучей. Светящееся облако вокруг звезд — источник видимого света, который наблюдали телескопы после слияния. Credit: NSF/LIGO/Sonoma State University/Aurore Simonnet
Нейтронные звезды, самые маленькие и плотные из всех звезд, образуются при взрыве сверхновой. Когда две нейтронные звезды образуются в паре, они вращаются друг вокруг друга, и постепенно теряют энергию, сближаясь и излучая гравитационные волны, пока наконец не сталкиваются. Такое столкновение и наблюдали телескопы LIGO, а через две секунды после — гамма-вслеск достиг космического телескопа Ферми, и в последующие дни и недели астрономы могли наблюдать событие в других электромагнитных диапазонах.
Впервые гравитационные волны были зарегистрированы два года назад — от слияния черных дыр. С тех пор еще три сигнала от черных дыр были приняты детекторами, последний — всего за три дня до этого события.
Под катом — о сигнале и открытиях, с ним связанных: точной оценке на скорость гравитационных волн, независимой оценке на постоянную Хаббла и новых данных по физике нейтронных звезд.
UPD Краткое изложение главной статьи о детектировании ГВ на русском — здесь.

Иллюстрация столкновения нейтронных звезд. Узкий выброс по диагонали — поток гамма-лучей. Светящееся облако вокруг звезд — источник видимого света, который наблюдали телескопы после слияния. Credit: NSF/LIGO/Sonoma State University/Aurore Simonnet
Нейтронные звезды, самые маленькие и плотные из всех звезд, образуются при взрыве сверхновой. Когда две нейтронные звезды образуются в паре, они вращаются друг вокруг друга, и постепенно теряют энергию, сближаясь и излучая гравитационные волны, пока наконец не сталкиваются. Такое столкновение и наблюдали телескопы LIGO, а через две секунды после — гамма-вслеск достиг космического телескопа Ферми, и в последующие дни и недели астрономы могли наблюдать событие в других электромагнитных диапазонах.
Впервые гравитационные волны были зарегистрированы два года назад — от слияния черных дыр. С тех пор еще три сигнала от черных дыр были приняты детекторами, последний — всего за три дня до этого события.
Под катом — о сигнале и открытиях, с ним связанных: точной оценке на скорость гравитационных волн, независимой оценке на постоянную Хаббла и новых данных по физике нейтронных звезд.
UPD Краткое изложение главной статьи о детектировании ГВ на русском — здесь.
+59
Весь веб на 60+ FPS: как новый рендерер в Firefox избавился от рывков и подтормаживаний
16 min
68KTranslation
До релиза Firefox Quantum остаётся всё меньше времени. Он принесёт множество улучшений в производительности, в том числе сверхбыстрый движок CSS, который мы позаимствовали у Servo.
Но есть ещё одна большая часть технологии Servo, которая пока не вошла в состав Firefox Quantum, но скоро войдёт. Это WebRender, часть проекта Quantum Render.

WebRender известен своей исключительной скоростью. Но главная задача — не ускорить рендеринг, а сделать его более плавным.
При разработке WebRender мы поставили задачу, чтобы все приложения работали на 60 кадрах в секунду (FPS) или лучше, независимо от размера дисплея или от размера анимации. И это сработало. Страницы, которые пыхтят на 15 FPS в Chrome или нынешнем Firefox, летают на 60 FPS при запуске WebRender.
Как WebRender делает это? Он фундаментальным образом меняет принцип работы движка рендеринга, делая его более похожим на движок 3D-игры.
Но есть ещё одна большая часть технологии Servo, которая пока не вошла в состав Firefox Quantum, но скоро войдёт. Это WebRender, часть проекта Quantum Render.

WebRender известен своей исключительной скоростью. Но главная задача — не ускорить рендеринг, а сделать его более плавным.
При разработке WebRender мы поставили задачу, чтобы все приложения работали на 60 кадрах в секунду (FPS) или лучше, независимо от размера дисплея или от размера анимации. И это сработало. Страницы, которые пыхтят на 15 FPS в Chrome или нынешнем Firefox, летают на 60 FPS при запуске WebRender.
Как WebRender делает это? Он фундаментальным образом меняет принцип работы движка рендеринга, делая его более похожим на движок 3D-игры.
+119
Если вы планируете или уже получаете оплату в валюте, вам в любом случае предстоит валютный контроль. Мы не знаем, какая часть предпринимателей отказывается от работы с иностранными клиентами или работает по-черному, лишь бы не связываться с валютным контролем. Но кажется, что его не любят многие.
Мы подготовили инструкцию, которая поможет вам разобраться с валютным контролем. Мы не будем рассказывать обо всех трудностях - проговорим только те, которые чаще встречаются в сфере IT.
+47
Наша методика расчета стека печатных плат
7 min
29KПока мы заканчиваем последние приготовления к серийному выпуску сервера VESNIN, хочу провести образовательный эксперимент — опишу наши внутренние методики и рекомендации для расчёта стека печатных плат. С одной стороны, приятно, если наш опыт будет кому-то полезен. С другой, мы сами рады получить дельные комментарии, чтобы улучшить нашу практику. Если интересно прочитать и обсудить — добро пожаловать под кат.


+31
tig — улучшаем продуктивность работы с git
3 min
44KВсем привет! Хочу рассказать о консольной утилите, которая значительно увеличила мою продуктивность работы с Git, и, надеюсь, ускорит и вашу также. Называется она tig и была написана канадским программистом Джонасом Фонсека (Jonas Fonseca) ещё в далёком 2006-м году, но по настоящий день она активно развивается и поддерживается в великолепном состоянии. Я хочу показать её функционал (внимание, есть относительно тяжелые gif-ки внутри) и поделиться самыми удобными способами использования.
+103
Наглядное объяснение чисел с плавающей запятой
4 min
230KTranslation

В начале 90-х создание трёхмерного игрового движка означало, что вы заставите машину выполнять почти не свойственные ей задачи. Персональные компьютеры того времени предназначались для запуска текстовых процессоров и электронных таблиц, а не для 3D-вычислений с частотой 70 кадров в секунду. Серьёзным препятствием стало то, что, несмотря на свою мощь, ЦП не имел аппаратного устройства для вычислений с плавающей запятой. У программистов было только АЛУ, перемалывающее целые числа.
При написании книги Game Engine Black Book: Wolfenstein 3D я хотел наглядно показать, насколько велики были проблемы при работе без плавающей запятой. Мои попытки разобраться в числах с плавающей запятой при помощи каноничных статей мозг воспринимал в штыки. Я начал искать другой способ. Что-нибудь, далёкое от и их загадочных экспонент с мантиссами. Может быть, в виде рисунка, потому что их мой мозг воспринимает проще.
В результате я написал эту статью и решил добавить её в книгу. Не буду утверждать, что это моё изобретение, но пока мне не приходилось видеть такого объяснения чисел с плавающей запятой. Надеюсь, статья поможет тем, у кого, как и у меня, аллергия на математические обозначения.
+70
Австралия: небольшая реколонизация Земли
11 min
168KПобывать в «ничейных землях» пустынь Австралии — это почти как попасть в научно-фантастический роман про колонизацию экзопланеты. Только взаправду. Белые люди системно пришли всего около 200 лет, и за это время успела сложиться молодая, эффективная и очень интересная инфраструктура. Так что ощущения просто космические.
В Австралии опасно. Не так, чтобы всё живое хотело вас убить, но близко. Смертей десятки в год, что близко не лежало в сравнении с ДТП, но зато они очень, скажем так, изобретательные. Например, к воде вообще нельзя подходить — там, в зависимости от водоёма, крокодилы, ядовитые кубомедузы, акулы и змеи. Благодаря одному немецкому туристу, последние слова которого были «Да нет тут никаких крокодилов», знаки об их наличии по шоссе Стюарта теперь на двух языках. А благодаря одной женщине, решившей искупаться во время менструации, мы теперь знаем, что акулы умеют подниматься вверх по течению ручья на 2 километра. Хворост около трассы для биваков туристов собирают строго гиды — отлучаться с асфальта опасно для жизни, потому что в топ-20 самых ядовитых змей мира всего 2 строки принадлежат неместным. К огромному неудовольствию австралийцев.

Дорога по берегу реки. Выходить из машины не рекомендуется. Последний раз тут сожрали мужика, решившего ополоснуть ведро.
А ещё Австралия постоянно либо затоплена, либо горит, либо находится в короткой передышке между этими состояниями. Но давайте начну с самого начала. Сначала мы оказались в Nowhere Land Северной территории.
В Австралии опасно. Не так, чтобы всё живое хотело вас убить, но близко. Смертей десятки в год, что близко не лежало в сравнении с ДТП, но зато они очень, скажем так, изобретательные. Например, к воде вообще нельзя подходить — там, в зависимости от водоёма, крокодилы, ядовитые кубомедузы, акулы и змеи. Благодаря одному немецкому туристу, последние слова которого были «Да нет тут никаких крокодилов», знаки об их наличии по шоссе Стюарта теперь на двух языках. А благодаря одной женщине, решившей искупаться во время менструации, мы теперь знаем, что акулы умеют подниматься вверх по течению ручья на 2 километра. Хворост около трассы для биваков туристов собирают строго гиды — отлучаться с асфальта опасно для жизни, потому что в топ-20 самых ядовитых змей мира всего 2 строки принадлежат неместным. К огромному неудовольствию австралийцев.

Дорога по берегу реки. Выходить из машины не рекомендуется. Последний раз тут сожрали мужика, решившего ополоснуть ведро.
А ещё Австралия постоянно либо затоплена, либо горит, либо находится в короткой передышке между этими состояниями. Но давайте начну с самого начала. Сначала мы оказались в Nowhere Land Северной территории.
+272
Information
- Rating
- 2,756-th
- Location
- Алматы (Алма-Ата), Алма-Атинская обл., Казахстан
- Date of birth
- Registered
- Activity