Search
Write a publication
Pull to refresh
15
0
Павел Амелюшко @RedApe

C++

Send message

Бег — идеальный спорт для удаленщика. Часть 2: физика и матчасть

Reading time20 min
Views53K


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

Итак, что даёт нам бег?
Читать дальше →

Подробный разбор симплекс-метода

Reading time6 min
Views307K

Пролог


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

Замечание. Пост будет написан достаточно формальным языком, но будет снабжен комментариями, которые должны внести некоторую ясность. Такой формат позволит сохранить научный подход и при этом, возможно, поможет некоторым в изучении данного вопроса.
Читать дальше →

Как выбрать договор на разработку ПО

Reading time3 min
Views23K
На практике нам часто приходится сталкиваться с различными договорами на создание программного обеспечения. Обычно для оформления заказа на разработку программных продуктов используются договор возмездного оказания услуг, договор подряда либо договор авторского заказа (авторский договор).

Какой из них верный и чем грозит ошибка при выборе договора?
Читать дальше →

Стандарты и шаблоны для ТЗ на разработку ПО

Reading time7 min
Views844K

Введение


Недавно ко мне обратились, чтобы я посоветовал стандарты для написания технического задания (ТЗ) на разработку автоматизированных систем (АС) и программного обеспечения (ПО). Вот думаю, сейчас зайду в Яндекс, найду подходящую статейку и отправлю её. Но не тут-то было! Одной статьи, где перечисляются стандарты для ТЗ, включая шаблоны и примеры готовых документов, я не нашел. Придется сделать такую статейку самому…

И так, основные стандарты, методологии и своды знаний, где упоминается ТЗ или SRS (Software (or System) Requirements Specification):

• ГОСТ 34
• ГОСТ 19
• IEEE STD 830-1998
• ISO/IEC/ IEEE 29148-2011
• RUP
• SWEBOK, BABOK и пр.
Читать дальше →

Количество жертв в ядерных катастрофах типа Чернобыля сильно преувеличивают для драматичности

Reading time8 min
Views63K
Статья Майкла Шелленбергера – известного автора и колумниста, пишущего про энергию и окружающую среду. Написана после просмотра первой серии сериала.


Судя по шоу «Чернобыль» от HBO, очень сложно снять интересное кино про ядерную катастрофу, не заставляя зрителей верить в преувеличенные последствия

За последние десять лет всё больше знаменитостей, среди которых были Стинг и Роберт Дауни мл., во всеуслышание объявили о поддержке ядерной энергии. Затем в прошлом мае CBS выпустила эпизод сериала Madame Secretary. В нём нефтяной магнат пытался воспрепятствовать продвижения ядерной энергии, а два персонажа выражали недовольство тем, как широко распространяется дезинформация по поводу относительной безопасности этой технологии.
Читать дальше →

Как опубликовать консольную утилиту на PyPI за 1 минуту

Reading time2 min
Views8.8K


Разработав консольную утилиту, вы решаетесь опубликовать её на PyPI. Ну правда, что может быть лучше, чем сделать её доступной через pip install? Погуглив, что для этого надо, вы, возможно, наткнётесь на единственный найденный мной пост по теме, который мало того что от 2014 года, так ещё и требует от вас создать кучу папок и файлов для совершенно ненужных (вам) вещей.


Как же решить эту задачу без лишней головной боли в 2019 году? Я уже задавался этим вопросом и поэтому, прочитав тонну документации, создал для вас этот туториал. Вот пошаговая инструкция.

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

Восемь возможностей C++17, которые должен применять каждый разработчик

Reading time9 min
Views138K

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


Вам также может быть интересна статья Десять возможностей C++11, которые должен использовать каждый C++ разработчик
Читать дальше →

Асинхронность в программировании

Reading time26 min
Views102K

В области разработки высоконагруженных многопоточных или распределенных приложений часто возникают дискуссии об асинхронном программировании. Сегодня мы подробно погрузимся в асинхронность и изучим, что это такое, когда она возникает, как влияет на код и язык программирования, которым мы пользуемся. Разберемся, зачем нужны Futures и Promises и затронем корутины и операционные системы. Это сделает компромиссы, возникающие во время разработки ПО, более явными.


В основе материала — расшифровка доклада Ивана Пузыревского, преподавателя школы анализа данных Яндекса.


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

Мифы современной популярной физики

Reading time5 min
Views122K
Где-то в альтернативной вселенной, согласно MWI, я стал гениальным физиком. Но в этой вселенной просто подробно слежу за профессиональными публикациями в области физики, зарабатывая себе на хлеб развозкой пиццы базами данных. Как следствие чуть более глубоких знаний, я не могу смотреть никаких научно-популярных передач. Это как железом по стеклу — тут oversimplification, тут просто неверно, тут есть тонкости…

Я решил сформировать список наиболее часто встречающихся неправд и полуправд. Итак, самое частое это…

Большой взрыв


Его изображают примерно так:


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

Как стать Java разработчиком за 1,5 года

Reading time10 min
Views313K

Меня зовут Сергей, мне 40 лет и сейчас я работаю Java разработчиком в немецкой компании. Мы занимаемся разработкой программного обеспечения для пивоварен оценки финансовых и кредитных рисков. Это моя первая работа в качестве разработчика. До этого я работал в сфере IT-поддержки и системной интеграции. Первого февраля 2019 г. закончился мой шестимесячный испытательный срок, и у меня на руках бессрочный контракт. Я хочу поделиться своим опытом, как можно самостоятельно выучить Java так, чтобы получить работу.



Это мой рабочий стол. Пить пиво в рабочее время у нас разрешено, мы же в Германии.


Моя первая статья: «IT-эмиграция с семьей. И особенности поиска работы в маленьком городе Германии, когда ты уже там»

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

Леонардо да Винчи учит писать резюме

Reading time3 min
Views49K
До того, как стать знаменитым и написать Мону Лизу и Тайную Вечерю, Леонардо да Винчи разрабатывал оружие. В 1482 году в возрасте 30 лет Леонардо написал письмо Людовико Марии Сфорца, герцогу Милана, описав в нём свои возможности. Что мы в XXI веке сможем вынести из этого резюме?

Кликните на картинку и посмотрите оригинал в большом размере.
image
Читать дальше →

Правдоподобия, P-значения и кризис воспроизводимости

Reading time26 min
Views21K
Или: Как переход от публикации P-значений к публикации функций правдоподобия поможет справиться с кризисом воспроизводимости: личное мнение Элиезера Юдковского.

Если Монро нарисовал комиксы про 75% существующих интересных проблем, а четверть моих статей интересные, то какова вероятность, что рано или поздно мне придётся искать КДПВ где-то ещё?

Комментарий переводчика: Юдковский, автор HPMOR, создатель Lesswrong и прочая и прочая, изложил свою позицию по поводу пользы байесовской статистики в естественных науках в форме диалога. Прямо классический такой диалог из античности или эпохи возрождения, с персонажами, излагающими идеи, обменом колкостями вперемешку с запутанными аргументами и неизбежно тупящим Симплицио. Диалог довольно длинный, минут на двадцать чтения, но по-моему, он того стоит.

Дисклеймеры
  • Этот диалог был написан сторонником байесовского подхода. Реплики Учёного в нижеприведённом диалоге могут и не пройти идеологический тест Тьюринга на фреквентизм. Возможно, что они не отдают должное аргументам и контраргументам сторонников частотного подхода к вероятности.
  • Автор не рассчитывает, что описанные ниже предложения будут приняты широким научным сообществом в ближайшие десять лет. Тем не менее, это стоило написать.

Если вы ещё не знакомы с правилом Байеса, на сайте Arbital есть подробное введение.

Модератор: Добрый вечер. Сегодня в нашей студии: Учёный, практикующий специалист в области… химической психологии или чего-то типа того; его оппонент Байесовец, который намерен доказать, что кризис воспроизводимости в науке можно как-то преодолеть с помощью замены P-значений на что-то из Байесовской статистики…
Студент: Извините, как это пишется?
Модератор:… и, наконец, ничего не понимающий Студент справа от меня.
Читать дальше →

Как сделать мощную лестницу Иакова из трансформатора от микроволновки своими руками

Reading time8 min
Views66K
Желание написать данный пост побудила вот это фотография со студенческой конференции технического ВУЗа.



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

И действительно, а что можно поделать. Поговорив с друзьями было решено написать этот пост, в котором расскажем немного про “Лестницу Иакова”, собственный опыт изготовлении этих установок, и поясним, почему эта фотография вызвала столько эмоций.

Факты и гипотезы об аварии «Союза МС-10»

Reading time6 min
Views61K
Спешка — зло. Перечитываешь публикацию с хроникой аварии «Союза МС-10», которая велась по горячим следам, и находишь ошибки. Зато сейчас, когда осела пыль, руки не дрожат от ситуации «корабль пошел на вынужденную посадку, и с экипажем пропала связь», а в открытых источниках появились материалы лучшего качества, самое время разобраться в произошедшем.


Трек полета «Союза МС-10» на длинной выдержке, фото NASA/Bill Ingals

«Цифровое книгопечатание» или мой опыт в мобильной оцифровке книг

Reading time6 min
Views36K

Любите ли вы книги так, как люблю их я...


Детство и юность, проведенная в маленьком городе, где в районной библиотеке из энциклопедий был лишь "Большой энциклопедический словарь" приучила к бережному, практически благоговейному отношению к любой технической книге. Я понимаю, почему люди пережившие блокаду все время держали дома запас продуктов. Первое время, получив доступ к более или менее скоростному интернету все время хотелось скачивать новые книги и сохранять их на жестком диске, сохранять, сохранять :). Потом появился twirpx и я понял, что книги, как и знания, должны участвовать в постоянном круговороте, иначе они мертвы. Стоило один раз отсканировать монографию своего научного руководителя и услышать десятки отзывов скачавших, как лавину уже было не остановить. Я заметил, что сегодня поделившись редкой книгой, завтра я увижу две, а то и три не менее редких, которыми поделились другие.


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

Чему я научился, создав 100 игр за 5 лет

Reading time14 min
Views49K

Мой марафон закончен! С июня 2012 года по июнь 2017 года я создал 100 игр.

Прежде, чем мы углубимся в подробности, мне нужно немного рассказать о своём проекте «100 игр за пять лет» и вкратце изложить числа и факты о самих играх.



Небольшое объяснение


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

Кроме того, я знал, что даже сами по себе мои игры будут плохими (а многие из них и в самом деле плохи), то по крайней мере поставленная задача заслуживает внимания. Хотя я не могу сказать, что научился при создании 100 игр большему, чем если бы выбрал другой путь, но одним из основных качеств Джеймса из 2012 года была амбициозность. Благодаря проекту я попал в список Forbes 30 Under 30 2017, выработал и упрочил собственный дизайнерский стиль, а также познакомился с самыми удивительными, вдохновляющими и интеллектуальными создателями игр. Я с гордостью называю свою цель «самой умной идеей, пришедшей в голову более юному мне».

Гари Хадсон – об удалении сенесцентных клеток и лечении рака

Reading time6 min
Views11K


Oisin Biotechnologies – компания, работающая в сфере биотехнологий омоложения, которая несколько лет назад получила посевное финансирование от Methuselah Foundation и SENS Research Foundation.

В настоящее время компания работает в сфере избирательного уничтожения сенесцентных клеток с помощью препаратов, называемых сенолитиками. Сенесцентные клетки – одна из причин старения, и по мере накопления в организме они способствуют возникновению возрастных заболеваний. Их периодическое удаление из организма давно было предложено SENS Research Foundation, и именно над новыми технологиями в этой сфере работает Oisin.
Читать дальше →

Как Symantec взломала Stuxnet

Reading time4 min
Views12K
imageИстория, стоящая за спиной Stuxnet — червя ориентированного на Иранские атомные электростанции, была описана уже не раз (в том числе и на Хабре) с того момента, как прошедшей весной группа разработчиков из Symantec выпустила этот документ — досье, посвященное этому беспрецедентно сложному творению чьих-то рук. Но видеть — значит верить. И у меня был шанс присутствовать на специальном брифинге в штаб-квартире Symantec, расположенной в Mountain View — California, где Патрик Гарднер, директор их группы безопасности, показывал как все происходило на самом деле. Это был великолепно.

Stuxnet был очень сложной программой, содержащей около 10 000 строк кода, написание которых заняло человеко-годы. Symantec обнаружила первые версии червя примерно за год до настоящей атаки, имевшей место год назад в июне и у них не был ни малейшего понятия о том, что же это такое, до тех пора пока события не начали развиваться на атомном объекте. Они раскололи код командой из трех человек, работавших на полный рабочий день, за несколько месяцев.

Этот софт очень специфичен, и затрагивал отдельный программируемый логический контроллер от компании Siemens, проводящий серию из 9 000 различных центрифуг, используемых для разделения урана. Червь начисто уничтожал около 1000 из них, наносив серьезный ущерб и отбрасывая всю атомную программу Ирана на год, или даже более, назад.

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

Что технарю нужно знать о гуманитариях?

Reading time8 min
Views40K


Начнем с того, что разделение на физиков и лириков придумали в 60ые для смеха, типа западников и славянофилов, или патриотов и либералов, спартак или динамо — классическая “двухпартийная система” наглядно показанная в серии Южного Парка про клизму и бутерброд. Еще древние римляне называли этот принцип “разделяй и властвуй”.

В итоге разным командам дали разные книжки, а про чужие говорили «скучно, вам не понять, да и понимать НЕ НАДО», а понять меж тем легко, главное посмотреть сквозь другие очки, сменить парадигму. Ведь ни одна из парадигм не истина, а вот бинокулярное зрение сильно облегчает жизнь. А тут, дали людям разные очки, одним плюс, другим минус, гуманитариям шестеренок в часах не рассмотреть, а для технарей через 200 метров вся природа абстракция.

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

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

О чем я думаю, когда читаю роман «Червь» Wildbow

Reading time10 min
Views48K

image

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


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


Способности отфильтровывать шум. Попробуйте прочитать этот текст: «По рзеузльаттам илссоевадний одонго анлигсйокго унвиертисета, не иеемт занчнеия, в каокм проякде рсапжоолены бкувы в солве. Галовне, чотбы преавя и пслонедяя бквуы блыи на мсете. осатьлыне бкувы мгоут селдовтаь в плоонм бсепордяке, все-рвано ткест чтаитсея без побрелм».


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


Остальным даже не стоит и браться.

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

Information

Rating
Does not participate
Location
Витебская обл., Беларусь
Registered
Activity