Pull to refresh
100
0
Edward Chernenko @edwardspec

Пользователь

Send message

О фейковых криптовалютах (Ethereum, Tron, Ripple и пр)

Reading time10 min
Views305K

К сожалению, концепция криптовалют, несмотря на своё изящество, не нашла понимания у основной массы пользователей. "Среднему пользователю" неважно, лежат ли его деньги в распределённом блокчейне или на каком-то конкретном сайте. Для него это всё равно "где-то в сети". Когда деньги на сайте - даже спокойнее, потому что понятно, кто за него отвечает, в случае чего можно поругаться или написать в соцсети о том, какие они негодяи, или даже подать в суд, а если деньги "потерялись" в блокчейне, то и пожаловаться некому. Пользователи, покупающие биткоины, не хранят приватные ключи у себя, а в основном делегируют это посторонним сайтам, потому для них разницы действительно нет. А даже если хранят у себя - сначала ведь этот ключ они где-то генерируют, и потом скачивают. Понятно, что это уже не полностью их ключ. В результате распространяются слухи о "взломе биткоина", когда деньги уходят хакерам, и подобные байки. С другой стороны, умные и авторитетные люди объясняют, что блокчейн и построенные на нём криптовалюты - это надёжно и правильно, и не верить им нет оснований.

Это закономерно привело к появлению муляжей криптовалют, которые якобы используют те же технологии, но при этом дают преференции их создателям, т.е. не такие уж децентрализованные. Для пользователей всё равно, а создателям профит. Самый распространённый из таких муляжей - Ethereum.

Читать далее
Total votes 286: ↑261 and ↓25+236
Comments538

В России сохраняются проблемы с доступностью сайтов, но никто их не замечает

Reading time5 min
Views45K
TL;DR: Из-за блокировок Роскомнадзора большое количество ресурсов, находящихся на Amazon CloudFront и Akamai, периодически становятся кратковременно недоступны. Проблема вызвана частой сменой (ротацией) IP-адресов на доменах, использующих эти сервисы, а также балансировками на основе геопризнака и EDNS Client Subnet: периодически DNS-серверы ресурсов выдают клиентам адреса, внесённые в Реестр запрещенных сайтов. Неосведомлённому человеку сложно определить причину проблемы, так как через минуту всё, как правило, снова работает (но через какое-то время опять перестаёт).

Введение

Около двух лет в России в рамках борьбы с Telegram были заблокированы диапазоны IP-адресов Amazon Web Services, CloudFlare, Digital Ocean, Scaleway, Hetzner, Softlayer и других менее известных хостингов и CDN. Перечисленные сервисы очень популярны, их услугами пользуется значительное количество сайтов в интернете.
Во времена блокировки пользователи сообщали о недоступности Playstation Network, Viber, Spotify, основного сайта Microsoft и некоторых его поддоменов, а также множества других сервисов, сайтов и интернет-игр.
18.06.2020 Роскомнадзор разблокировал все ранее блокированные диапазоны, жалобы на недоступность сайтов резко сократились.

Однако часть сайтов, использующих сервисы Amazon CloudFront и Akamai, до сих пор периодически не открывается либо не загружается полностью, а через минуту уже работают нормально. Вы могли списывать такое поведение на проблемы у интернет-провайдера или сайта, но на деле они вызваны интернет-блокировками в России и особенностями геобалансировки этих сервисов.

Вот краткий список хостов, к которым был затруднен доступ за последние 2 недели:

  • www.adobe.com
  • leonardo.osnova.io (картинки сайтов dtf.ru, tjournal.ru)
  • cf-hls-media.sndcdn.com (аудио SoundCloud)
  • blog.playstation.com (блог Playstation)
  • clips-media-assets2.twitch.tv (видео с Twitch)
  • ocsp.int-x3.letsencrypt.org (проверка сертификатов по протоколу OCSP)
  • steamcommunity-a.akamaihd.net (форум Steam)
Читать дальше →
Total votes 162: ↑158 and ↓4+154
Comments132

Не держите людей за идиотов или почему человек с инженерным образованием может сжечь вышку сотовой связи (видео)

Reading time12 min
Views221K


Знаете что общего между ситуацией с уничтожением антенн сотовой связи и последней лентой Тарантино «Однажды в Голливуде»? Они оба делят людей на два противоположных лагеря.
Читать дальше →
Total votes 300: ↑272 and ↓28+244
Comments340

Автономизация Unit-тестов в PHPUnit

Reading time9 min
Views2.9K

Всем привет!


Меня зовут Антон и сейчас (не так долго, около года) я разрабатываю на PHP в одном большом и старом проекте. Для обеспечения качества проекта мы применяем автотесты на фреймворке PHPUnit. Но, к сожалению, так получилось, что большая часть наших автотестов функциональные. Недавно мы поняли, что если мы продолжим использовать автотесты прежним образом, то скоро время, потраченное на решение проблем с их не прохождением на CI станет больше, чем время, затраченное на написание полезного кода (на самом деле нет, но оно растёт и это не приятно).


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

  • я писал пару тест-кейсов несколько часов;
  • понял, что за это время написал очень, очень много повторяющегося кода;
  • фактически не сделал полезной работы;
  • в случае изменения DI придется потратить очень много времени на бесполезную адаптацию кода теста.


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


Читать дальше
Total votes 14: ↑13 and ↓1+12
Comments6

Как я чуть не выкинул 150к на ветер или история установки приточной вентиляции в квартире

Reading time19 min
Views621K

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


Читать дальше →
Total votes 375: ↑370 and ↓5+365
Comments595

30 полезностей для Firefox Developer Tools

Reading time3 min
Views26K


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


Осторожно, под катом много тяжёлых гифок!

Осторожно, под катом много тяжёлых гифок!
Total votes 38: ↑37 and ↓1+36
Comments6

Игровая агрессия, или как кооператив превращается в кровавую баню и что делать, чтобы он этого не делал

Reading time53 min
Views28K


В прошлый раз мы остановились на том феномене, что игра, которая изначально задумывалась как кооператив (например, D&D или многопользовательская песочница типа Space Station 13), почему-то может использоваться игроками совершенно по другому назначению, становясь пространством насилия и травли. Сегодня, соответственно, будем разбираться в том, как устроена детская (и не только детская) агрессия, как работает формат песочницы, что делает агрессия в песочнице (и вообще в игре) и как можно ей управлять.

Физика эмоции


В дальнейшем изложении мы будем использовать гидродинамическую модель эмоции. Представим себе, что, например, гнев – это жидкость. Чем больше накапливается гнева, тем сильнее становится напор жидкости в трубе – отдельно взятом индивидууме. На выходе есть два вентиля. Один соответствует внутреннему тормозу – представлению, например, о том, что обижать других людей дурно, некрасиво, недостойно… Второй соответствует внешнему тормозу – страху перед наказанием или какими-то другими негативными последствиями. Что будет, если давление жидкости нарастает, а вентили (хотя бы какой-то один из них) намертво закручены?
Читать дальше →
Total votes 49: ↑48 and ↓1+47
Comments82

Асинхронное общение — вот настоящая причина, почему удалённая работа более эффективна

Reading time12 min
Views70K

Теперь асинхронную связь внедряют не только на удалёнке



Иллюстрация: Yin Weihung

Исследование за исследованием вновь доказывают, что удалённые работники более продуктивны, чем их коллеги в офисе.

Только не совсем понятно, почему.

Да, люди сохраняют время (и рассудок), избегая пробок в час пик. На них не действуют отвлекающие факторы в офисе. Они обретают чувство контроля над рабочим графиком. Больше времени остаётся для семьи, друзей и хобби.

Но кроме поездок на работу, все эти преимущества не столько результат автономного расположения, сколько побочный продукт асинхронной связи — сотрудники сами решают, когда общаться с коллегами.
Total votes 83: ↑80 and ↓3+77
Comments170

Не ходите в Африку гулять: как обстоят дела с интернет-цензурой на Черном континенте

Reading time6 min
Views26K


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

Обо всем этом журналисты известных и не очень СМИ пишут в отношении Китая, КНДР, России, Казахстана, Беларуси и т.п. Интернет-цензура проникла даже в Африку. О том, как обстоят дела на Черном континенте, мы сегодня и поговорим.
Читать дальше →
Total votes 55: ↑53 and ↓2+51
Comments61

Нужно ли чистить строки в JavaScript?

Reading time6 min
Views79K
Что? Строки могут быть «грязными»?

Да, могут.

//.....Какой-то код
console.log(typeof str); // string
console.log(str.length); // 15
console.log(str); // "ччччччччччччччч"

Вы думаете, в этом примере строка занимает 30 байт?

А вот и нет! Она занимает 30 мегабайт!
Читать дальше →
Total votes 220: ↑219 and ↓1+218
Comments224

Оценка сроков на разработку и тестирование задачи (не нужна)

Reading time5 min
Views64K

Я в тестировании 12 лет, работал в Naumen и Яндексе. Сейчас руковожу отделом тестирования из 150 человек в Контуре и продолжаю работать тестировщиком в одной из команд.


После полугодовых performance review менеджеры из разных команд рассказали, какие цели поставили своим тестировщикам. У каждого пятого была такая: «Научиться оценивать сроки на тестирование задач». Часто такой «оценки сроков» хотят не только от тестировщиков, но и от разработчиков.



Оценка сроков в 95 % случаев. Спасибо, xkcd.


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

Сейчас объясню, как это работает.

Горькая правда
Total votes 87: ↑76 and ↓11+65
Comments186

Когда дети понимают, что вся их жизнь уже находится в онлайне

Reading time6 min
Views42K

Поиск в Google информации о себе превратился в обряд перехода




Уже несколько месяцев Кара набиралась смелости для того, чтобы поговорить с мамой о том, что она увидела в Instagram. Не так давно эта 11-летняя девочка – которую мы, как и остальных детей в этой истории, будем называть вымышленным именем – обнаружила, что её мама выкладывает её фотографии без её разрешения, причём это происходит уже большую часть её жизни. «Я хотела поговорить об этом. Очень странно видеть в интернете свои фотографии, и некоторые из них мне не нравились», — говорит она.

Как большинство современных детей, Кара росла, будучи погружённой в соцсети. Facebook, Twitter и YouTube появились ещё до её рождения. Instagram работает с тех пор, когда она была ещё младенцем. И если у многих детей пока ещё нет своих учётных записей, то их родители, школы, спортивные команды и другие организации могли поддерживать их присутствие в онлайне с рождения. Шок от осознания того, что подробности твоей жизни – а в некоторых случаях все её мельчайшие детали – выкладываются в интернет без твоего согласия или осведомлённости, стал одним из главных событий жизни множества подростков и детей помладше.
Читать дальше →
Total votes 79: ↑74 and ↓5+69
Comments161

«Современный» C++: сеанс плача с причитаниями

Reading time18 min
Views64K

Здесь будет длиннющая стена текста, с типа случайными мыслями. Основные идеи:


  1. В C++ очень важно время компиляции,
  2. Производительность сборки без оптимизаций тоже важна,
  3. Когнитивная нагрузка ещё важней. Вот по этому пункту особо распространяться не буду, но если язык программирования заставляет меня чувствовать себя тупым, вряд ли я его буду использовать или тем более — любить. C++ делает это со мной постоянно.

Блогпост «Standard Ranges» Эрика Ниблера, посвященный ренжам в C++20, недавно облетел всю твиттерную вселенную, сопровождаясь кучей не очень лестных комментариев (это ещё мягко сказано!) о состоянии современного C++.



Даже я внёс свою лепту (ссылка):


Этот пример пифагоровых троек на ренжах C++20, по моему, выглядит чудовищно. И да, я понимаю, что ренжи могут быть полезны, проекции могут быть полезны и так далее. Тем не менее, пример жуткий. Зачем кому-то может понадобиться такое?

Давайте подробно разберём всё это под катом.

Читать дальше →
Total votes 121: ↑112 and ↓9+103
Comments238

Почему строить базу знаний компании на основе mediawiki — недурная затея

Reading time8 min
Views41K


В последнее время Confluence и sharepoint стали почти безраздельно править на рынке баз знаний. Системы отличные, не спорю, но лично мне не хватает их гибкости да и в целом как-то не срослось: вики-возможности sharepoint остались где-то на уровне 2005 года (про работу с офисными документами молчу, с ними все гуд), а Confluence в силу своих особенностей с ростом числа статей неумолимо превращался в свалку, в которой невозможно найти что-либо нужное (но, может, проблема была во мне).

Не умаляя достоинства этих систем, хотелось бы рассказать о том, какие возможности есть у Mediawiki в роли корпоративной базы знаний. Само собой, mediawiki подойдет не всем — в ней нет модной интеграции с jira/tfs/etc, перенос документов с картинками из пакета Microsoft Office доставляет кучу неудобств, да и сама она написана на PHP, что в последнее время служит отпугивающим фактором для некоторых айтишников. Тем не менее, платформа живее всех живых и над ее развитием работает изрядное количество людей, коль скоро на ней базируется семейство проектов фонда Викимедиа.
Читать дальше →
Total votes 47: ↑47 and ↓0+47
Comments63

Ад своими руками

Reading time19 min
Views172K
Многие говорят – рассказывать надо не только об успехах, но и о неудачах. Полностью с этим согласен — понимание своих неудач, их причин и последствий, иногда ценнее любых успехов.

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

Но компанию, ее культуру это внедрение превратило в ад — бюрократический, системный и бессмысленный.

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

Обо всем по порядку.
Читать дальше →
Total votes 294: ↑285 and ↓9+276
Comments313

Борщевик Сосновского. В МО ввели штрафы за распространение

Reading time20 min
Views108K
Изображение с pixabay. Автор YvonneH1 ноября 2018 года Московская Область без объявления войны (объявленной парой лет ранее), ввела финансовые санкции. Против собственников территорий, предоставляющих плацдарм для распространения борщевика Сосновского. Ура!

Мне, правда, интересно, кто будет платить за титаническую плантацию борщевика между Шереметьево и ниткой Аэроэкспресса. Плантацию, встречающую гостей и жителей Москву сразу по прилёту в белокаменную. Там растут просто миллионы штрафа.

Что же такое борщевик Сосновского и почему с ним надо бороться. Как это делать. Как это делать не нужно. А так же научные и псевдонаучные факты в нескучно-популярном изложении.
Читать дальше →
Total votes 289: ↑268 and ↓21+247
Comments684

Как я вижу идеальный браузер

Reading time37 min
Views36K
В последнее время появилось много статей о недостатках современного софта, при этом никто не пробует предложить свои решения, чтобы поменять ситуацию. Эта статья — ответ на некоторые статьи об этом, равно как и о мечтах о идеальном браузере. Как можно было бы переработать браузер, его UI, методы взаимодействия с сайтами, улучшить протоколы и пользовательский опыт в целом. Если у вас есть какие-то, пусть даже самые смелые мысли по этому поводу, то предлагаюсь обсудить их и быть может заложить основы для создания идеального браузера. В конечном счете, рано или поздно это нужно будет сделать, так как ситуация на рынке браузеров на данный момент совсем не радостная. И не проблема, что другие браузеры очень сложны и их сложно догнать — мы можем пойти по своему пути, реализовывать только необходимые части стандартов, при этом можем вводить свои нестандартные расширения. Не надо бежать за другими, пусть другие бегут за нами. Пусть наш браузер будет создан для людей, а не во имя коммерческих интересов корпораций добра и странных консорциумов, от которых давно нет никакой пользы.



Что же должно быть в идеальном браузере?



Читать дальше →
Total votes 78: ↑54 and ↓24+30
Comments154

Красота НЕ-безымянных функций в JavaScript

Reading time3 min
Views12K

image


Анонимные стрелочные функции в JavaScript, согласно некоторым опросам — самая популярная фича ES-2015, что также подчеркнуто исчерпывающим числом туториалов в интернете. Они бесспорно очень полезны, но в этой небольшой статье мы рассмотрим примеры использования обделенных вниманием не менее замечательных выражений с именованными функциями — NFE.

Читать дальше →
Total votes 23: ↑23 and ↓0+23
Comments7

Зацените: сделал стол

Reading time6 min
Views145K


TL;DR В статье описывается мой опыт постройки стола c нуля из фанеры. От проектирования до сборки.

Я очень долго страдал от плохих столов. Все они неудобные, плохого качества, маленькие и, самое главное, ШАТКИЕ. Более-менее приличные столы стоили тысячи долларов. В итоге я решил изготовить стол самостоятельно.

Основные требования к столу:

  • Устойчивость! Предметы на столе не должны трястись, если резко положить руки на стол или оттолкнуться от него. Мой стол весит ~120кг. С его края можно делать сальтухи, при этом на другом конце паять SMD компоненты.
  • Ширина и глубина столешницы. Столы шириной 60 см — это унижение. Мне нужно иметь запас по глубине, чтобы можно было отодвинуть ноутбук вперед, и при этом получить достаточное рабочее пространство.
  • Вместительность. Мне нужны полки, чтобы разместить там оборудование: паяльники, лабораторный блок питания, осциллограф, аудио усилитель и т.д. При этом полки должны быть так же устойчивы, как и стол.
  • Цена. Я не готов выложить за стол несколько тысяч долларов. Мой стол обошелся в ~$300 с учётом покупки всего инструмента для сборки и покраски.
Total votes 261: ↑250 and ↓11+239
Comments559

Как мы боролись с Роскомнадзором и что из этого вышло

Reading time23 min
Views57K
Руководитель сервиса для регистрации бизнеса 1С-Старт Александр Раптовский о том, как отменить судебное решение о блокировке статьи на Хабре, инициированное Роскомнадзором.


Кадр из фильма «С меня хватит!» (Falling Down), 1992
Читать дальше →
Total votes 196: ↑194 and ↓2+192
Comments86

Information

Rating
Does not participate
Location
Обнинск, Калужская обл., Россия
Date of birth
Registered
Activity