Search
Write a publication
Pull to refresh
138
0
Владимир Губарьков @xonix

CTO

Send message

Как распознать scam ICO? Часть II. Зрим

Reading time11 min
Views21K
Прежде чем начать, хотелось бы сделать две ремарки:

  1. Мне хорошо известна целевая аудитория Хабра и, возможно, поэтому для неё данный материал будет не просто понятен, но и прост. Но с другой стороны, именно вы, жители одного из самого большого it-сообщества в СНГ, сможете всегда дать своим знакомым или просто встретившимся в Сети людям этот материал, чтобы наконец-то избежать очередного, искусственного пузыря.

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



Scam — это обман

Чтобы понять, что scam явление не новое, нужно лишь добавить к нему точку и com — http://scam.com — выдаст сотни результатов по теме. И это неудивительно: людям свойственно ошибаться, а значит всегда найдутся те, кто превратят их ошибки в бизнес.

И вот об этом поподробней.
Читать дальше →

Введение в разработку умных контрактов Ethereum

Reading time9 min
Views47K

В последнее время вокруг блокчейна, криптовалют, умных контрактов и связанных с ними технологий поднялся небывалый хайп. Создается ощущение, что даже самые ленивые и пассивные обыватели трубят об этом из каждого болота. Огромное количество стартапов и компаний с историей и опытом из сферы ИТ, услуг, ритейла и реального сектора экономики задумываются о внедрении блокчейна в свою деятельность, а более 100 000 компаний уже сделали это.

Механизм Initial Coin Offering не только способствовал новой волне интереса к краудфандингу, увеличив объем привлекаемых с его помощью инвестиций, но и подхлестнул интерес к криптовалютам и технологии блокчейн. Сегодня все чаще и чаще попадаются новые вакансии в этой области, а также просьбы о помощи в проведении ICO в целом и разработке смарт-контрактов в частности.

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

Как мы участвовали в первом Лигалтех хакатоне СНГ и почему решили делать ещё один в Москве

Reading time3 min
Views3.1K
Мы давно делаем b2b-решения небольшой командой и вообще счастливы. Однако in-house, это как фриланс. Однажды ты обнаруживаешь себя работающим в трусах в 4 ночи вокруг грязной посуды. Стали искать аутсорс, смотреть в сторону других технологий и проектов. В мае нас с супругой пригласили на лигалтех-хакатон в Киеве и, конечно, мне было очень интересно. Жена лигал, я тех, отличная команда. Мы собрали вещи и покатили.


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

Sosnovkino — первый отечественный скам? Или соберём денег побыстрее и побольше

Reading time4 min
Views18K
Буквально на днях написал вторую часть (первую найти не сложно) об оценке ICO. И в комментарии наткнулся на проект Sosnovkino: название, которое просто создано для голливудского фильма о России, не правда ли?

Посмотрел ролик и понял, что это сильно похоже на обман, судите сами:


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

Самые интересные ICO лета-2017: народная криптовалюта, блокчейн-соцсеть и стриминговый сервис

Reading time3 min
Views11K


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

Самое время внимательнее присмотреться к самым интересным проектам, которые привлекают средства с помощью ICO этим летом.
Читать дальше →

Большой FAQ про разные виды коррекции зрения: все вопросы гиков в одном месте

Reading time29 min
Views185K
Ниже – прямое сравнение видов коррекции (операций) с удобной сводкой по возможным осложнениям и применимости, плюс море других вопросов от профессиональных параноиков: от «что будет, если махнуть головой во время операции» до «а отдадут ли мне ткань, которую вынули из моего глаза» и «что будет в старости с моим зрением».

– Что лучше: очки, линзы или лазерная коррекция?

Если вас полностью устраивают очки – сохраняйте спокойствие, коррекцию делать не нужно. Однако, если вы никогда не пробовали линзы, то стоит попробовать поносить их пару недель, чтобы понять, как мир будет выглядеть после коррекции. В 10-летней перспективе контактные линзы (даже однодневные) существенно опаснее коррекции по обратимым и необратимым побочным эффектам и осложнениям. Поэтому я рекомендую их только для ознакомления с дивным новым миром.

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

По моему хирургическому опыту, современные подушки безопасности не травмируют очкариков. Глаза и лицо обычно повреждаются осколками лобового стекла. Если вы беспокоитесь о сохранности очков, то подумайте про современные, с поликарбонатными линзами. Они невероятно прочные: на краш-тестах по ним машина ездит.

Если вы видите плохо и не надеваете очки, то вы теряете часть информации об окружающем мире и при этом создаёте дополнительную нагрузку на зрительный аппарат. Есть проблема – нужна оптическая коррекция. А испортить глаза очками можно, как один из наших коллег из клиники в г. Марбурге – он уснул в стеклянных очках за компьютером дома, упал лицом на клавиатуру, и осколок стекла вошёл в хрусталик. В итоге сначала заменили хрусталик, потом через год понадобилась трансплантация.
Читать дальше →

37 причин, почему ваша нейросеть не работает

Reading time9 min
Views44K
Сеть обучалась последние 12 часов. Всё выглядело хорошо: градиенты стабильные, функция потерь уменьшалась. Но потом пришёл результат: все нули, один фон, ничего не распознано. «Что я сделал не так?», — спросил я у компьютера, который промолчал в ответ.

Почему нейросеть выдаёт мусор (например, среднее всех результатов или у неё реально слабая точность)? С чего начать проверку?

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

Как настроить Travis CI для проекта .NET Core + PostgreSQL

Reading time4 min
Views9.1K

Я расскажу о том, как настроить автоматический запуск модульных тестов в сервисе Travis CI для .NET Core проекта, в котором используется PostgreSQL.


Можно использовать эту статью как пример для быстрого старта.


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

Hack. Sleep. Repeat

Reading time10 min
Views13K
Привет. Меня зовут Дима, и я бэкенд-разработчик в Avito. Мне довелось поучаствовать в кучке хакатонов: мелких и крупных, российских и зарубежных, внешних и внутри компаний, удалённых, распределённых и классических. Хочу рассказать, как они помогли познакомиться с омским дедом, заразиться криптобактериями, запустить виртуальный космический корабль в эрланг-вселенную и спасти человечество от вымирания.


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

Экзотичные заголовки HTTP

Reading time12 min
Views113K

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

35 советов для тех, кто собирается на техническую конференцию

Reading time4 min
Views9.6K

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

Обзор 98 одноплатных компьютеров. Часть 3

Reading time11 min
Views55K
Часть 1
Часть 2
Часть 3
Часть 4

NanoPC-T3



Компания/проект — FriendlyElec (FriendlyARM)
Обзор LinuxGizmos
Страница продукта
CPU — Samsung S5P6818 (8x Cortex-A53 @ 400MHz to 1.4GHz); Mali-400 MP GPU
Память — 1GB или 2GB DDR3 RAM; 8GB eMMC
Цена — $60

Компания FriendlyElec (также известная как FriendlyARM) предлагает сейчас как минимум дюжину одноплатников, что превышает наш порог в 10 устройств на компанию, и это заставило нас исключить некоторые из них из нашего первого списка. Несколько сходных продуктов мы объединили в один пункт, модель NanoPi. Размер платы NanoPC-T3 100 x 60mm. Это одна из наиболее развитых плат от FriendlyElec. Она оснащена восьмиядерным Samsung S5P6818. Плата NanoPC-T3 SBC практически идентична более ранним, четырёхядерным NanoPC-T2. В дополнение к более быстрому процессору, плата T3 добавляет опцию 2GB RAM. Также обе платы NanoPC имеют слот SD, GbE, WiFi, и Bluetooth 4.0. На платах установлены четыре USB host, micro-USB client, и медиапорты, включая HDMI, LVDS, LCD, MIPI-DSI, MIPI-CSI, и аудио. Вместо обычного разъёма 40-pin RPi, NanoPC-T3 имеет 30-pin разъём GPIO.
 
Читать дальше →

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

Reading time2 min
Views33K
В одной компании кандидатам на вакансию программиста какое-то время предлагалась следующая задача. Найти значение дроби:

$\frac{1}{1+\frac{1}{1+\frac{1}{1+\frac{1}{1+...}}}} $


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

$x=\frac{1}{1+x}$

А это, в свою очередь, приводит к обычному квадратному уравнению:

$x^2+x-1=0\\ x=\frac{sqrt(5)-1}{2}\\ x=0,618033988...$


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

Бешеные псы: Angular 2 vs React: доклад Евгения Гусева и Ильи Таратухина

Reading time1 min
Views17K
Angular2 отрелижен, React и подавно. Копья поломаны, мечи перекованы на орала, страсти уже поутихли и, вроде как, статус кво восстановлен. Кто-то использует один инструмент, кто-то другой, разве что, иногда раздаются возгласы: «А у них...!»



Однако не всё так просто. В конце концов, мы не только пишем код, но и решаем однотипные проблемы:

  • Как сделать наше приложение быстрым?
  • Как писать понятнее и проще?
  • Как писать быстрее?

Кто-то может сказать: «Эту тему уже миллион раз обсасывали, зачем опять?». Но, все же, если вы запускаете новый проект или решили переписать старый, перед вами всё равно встанет проблема выбора. И даже если вы считаете, что всё очевидно — это далеко не так.
Читать дальше →

Как держать 20 тысяч VPN клиентов на серверах за $5

Reading time24 min
Views89K
Месяц назад мы с друзьями сделали бесплатный сервис для обхода блокировок сайтов в Украине Zaborona.Help. За это время сервис стал довольно популярным, аудитория выросла до 20 000 пользователей. Число одновременных подключений в пиковые часы — ≈6 000 клиентов.

Главная особенность нашего сервиса в том, что через VPN маршрутизируется трафик только к заблокированным сетям, остальные сайты работают напрямую. Это не влияет на скорость интернета и не подменяет IP-адрес для остальных сайтов.

В статье описываются тонкости настройки OpenVPN для большого числа клиентов, на дешевых VPS.

  • Как выбрать подходящий хостинг. Отличительные черты плохого хостинга. История о том, как мы долго искали и нашли хостинг в России.
  • Почему IPv6 — хорошо. Правильная настройка IPv6-адресов для VPN-клиентов.
  • Изменение конфигурации OpenVPN на лету, без перезапуска сервера и отключения клиентов.
  • Балансировка нагрузки между серверами и процессами OpenVPN
  • Тонкая настройка Linux для большого числа подключений
  • Особенности кривых операционных систем и роутеров пользователей

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

Обзор систем мониторинга серверов. Заменяем munin на…

Reading time9 min
Views188K
Очень долго хотел написать статью, но не хватало времени. Нигде (в том числе на Хабре) не нашёл такой простой альтернативы munin, как описанная в этой статье.


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

Пишем умный контракт на Solidity. Часть 1 — установка и «Hello world»

Reading time6 min
Views137K

Люди, интересующиеся темой блокчейна, уже не раз слышали о проекте российско-канадского программиста Виталика Бутерина — Ethereum, а в вместе с ним и о так называемых умных контрактах. В данном цикле статей я постараюсь максимально просто описать суть Ethereum, умных контрактов, концепцию газа и показать, как пишутся умные контракты.


Smart Contract & Gas


Если на пальцах, "умный контракт" — это некоторый код, живущий внутри блокчейна. Любой участник сети может его вызвать за небольшую плату. Эта плата и называется Gas, дословно "топливо". Зачем это нужно? Для защиты майнера от злоупотребления мошенником его ресурсов.


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


// Это псевдокод
foo = 0;
while (True) {
    foo++;
}

Понятно, что майнер, запустивший этот контракт, закончит нескоро и по факту просто потратит в никуда свои ресурсы. Вот чтобы такого не произошло, разработчики Ethereum и придумали газ — в реальности запускать код вроде того, что я написал, будет просто экономически нецелесообразно, потому что вызвавшему придется заплатить за каждое действие контракта.

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

40 необычных вопросов, задаваемых на собеседовании в Apple

Reading time4 min
Views68K
Apple одна из самых престижных компаний в мире, очевидно, что получить работу в ней очень непросто. Среди вопросов, которые задают кандидатам на собеседовании, встречаются как технические, так и ошеломляющие головоломки.



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

Awless — мощная альтернативная CLI-утилита для работы с сервисами AWS

Reading time3 min
Views6.8K


Все пользователи облачных сервисов Amazon давно знают про родной консольный инструмент для работы с ними — aws-cli. Но оказалось, что далеко не всем его достаточно: по этой причине компания WALLIX выпустила альтернативное и более функциональное решение под названием awless.

Исходный код awless написан на языке Go (использует AWS Go SDK) и опубликован на GitHub под свободной лицензией (Apache License 2.0). Текущая версия awless — 0.1.0. Поддерживаются операционные системы GNU/Linux, Mac OS X и Windows. Что же позволяет эта утилита?
Читать дальше →

Индексы в PostgreSQL — 3

Reading time9 min
Views87K

В первой статье мы рассмотрели механизм индексирования PostgreSQL, во второй — интерфейс методов доступа, и теперь готовы к разговору о конкретных типах индексов. Начнем с хеш-индекса.

Hash


Устройство


Общая теория


Многие современные языки программирования включают хеш-таблицы в качестве базового типа данных. Внешне это выглядит, как обычный массив, но в качестве индекса используется не целое число, а любой тип данных (например, строка). Хеш-индекс в PostgreSQL устроен похожим образом. Как это работает?

Как правило, типы данных имеют очень большие диапазоны допустимых значений: сколько различных строк можно теоретически представить в столбце типа text? В то же время, сколько разных значений реально хранится в текстовом столбце какой-нибудь таблицы? Обычно не так много.

Идея хеширования состоит в том, чтобы значению любого типа данных сопоставить некоторое небольшое число (от 0 до N−1, всего N значений). Такое сопоставление называют хеш-функцией. Полученное число можно использовать как индекс обычного массива, куда и складывать ссылки на строки таблицы (TID). Элементы такого массива называют корзинами хеш-таблицы — в одной корзине могут лежать несколько TID-ов, если одно и то же проиндексированное значение встречается в разных строках.

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

Information

Rating
Does not participate
Date of birth
Registered
Activity