Pull to refresh
0
0
Кирилл @kroshanin

Разработчик веб-систем

Send message

Генерация лабиринта алгоритмом Эллера в Unity

Reading time4 min
Views23K
Всем привет!

Сегодня хотелось бы рассказать о том, как генерировать лабиринты алгоритмом Эллера, и о том, как сделать красивую 3д визуализацию в Unity, чтобы потом использовать её в своих играх. Также немного рассказать о том, как можно настроить пост обработку внутри данного решения. И по традиции ссылка GitHub с самим генератором.


Читать дальше →
Total votes 29: ↑26 and ↓3+23
Comments8

Один безопасный пароль на все случаи жизни

Reading time3 min
Views76K
Спорить не буду, заголовок провокационный. Но и продолжение не лучше…

Доброе утро! Я законченный параноик. Поэтому я люблю сложные пароли. Но хранить их в голове очень хлопотно… Вы же еще помните, что я параноик? И поэтому не пользуюсь менеджерами паролей, кроме тех, что могу поставить на свои сервера и могу контролировать трафик. Но я все-равно физически не смогу проверить на закладки. Не хватит ни времени, ни опыта. Поэтому я боюсь пользоваться чужими менеджерами паролей.

Давайте представим, что один безопасный пароль на все ресурсы возможен. Традиционно, всех кто заинтересовался темой прошу под кат.
Один пароль
Total votes 44: ↑22 and ↓220
Comments103

Bitcoin Cash. А был ли форк?

Reading time11 min
Views27K
image

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

Попробуем отодвинуть эмоции и вместе изучить, что же происходит и каковы последствия.

Краткое содержание


  • Bitcoin — общество любителей математики
  • Что такое форк? Почему не так страшна атака 51%
  • Segwit. С чего все началось
  • Bitcoin Cash — как заработать и как дать другим заработать
  • Перспективы
Читать дальше →
Total votes 24: ↑21 and ↓3+18
Comments22

Как попасть в ТОП: PR ДО релиза и в случае провала

Reading time6 min
Views6.3K
Сейчас сложно себе представить жизнь современного человека без смартфона, а смартфон уже совсем немыслим без мобильных приложений, число которых перевалило за полтора миллиона в App Store и Google Play. Поэтому часто пользователи даже и не подозревают, что уже разработано и опубликовано самое лучшее мобильное приложение.
Читать дальше →
Total votes 7: ↑7 and ↓0+7
Comments0

TSP problem. Mixed algorithm

Reading time13 min
Views12K
Всем доброго времени суток. В прошлых статьях мы сравнивали два эвристических алгоритма оптимизации на симметричной задаче коммивояжера таких как: ACS (ant colony system — муравьиный алгоритм) и SA (simulating annealing — алгоритм имитации отжига). Как мы убедились у каждого свои плюсы и минусы.


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

Расчет приоритета комбинаций в техасском холдеме (покере) на PHP

Reading time10 min
Views23K
В этой статье я расскажу про мой способ расчета приоритета комбинаций в техасском холдеме (покере с 2 карманными картами и 5 общими). Условно разделю статью на 6 частей: Создание массива карт, Расчет Стрита, Расчет Флеша и Стрит Флеша, Расчет Парных комбинаций, Окончательный расчет, Вывод на экран. Код пишу в процедурном стиле.

Цель: получить на выходе программы удобочитаемый результат, доступный для дебаггинга и отладки еще на стадии написания кода. Для достижения поставленной цели делаю разницу между комбинациями в 1e+2 (100) раз.

Примерный вид того, что должно получиться в итоге, где 2 последние карты считаю карманными, а первые 5 общими:


Читать дальше →
Total votes 21: ↑17 and ↓4+13
Comments14

OpenDataScience и Mail.Ru Group проведут открытый курс по машинному обучению

Reading time6 min
Views66K

6 сентября 2017 года стартует 2 запуск открытого курса OpenDataScience по анализу данных и машинному обучению. На этот раз будут проводиться и живые лекции, площадкой выступит московский офис Mail.Ru Group.



Если коротко, то курс состоит из серии статей на Хабре (вот первая), воспроизводимых материалов (Jupyter notebooks, вот github-репозиторий курса), домашних заданий, соревнований Kaggle Inclass, тьюториалов и индивидуальных проектов по анализу данных. Здесь можно записаться на курс, а тут — вступить в сообщество OpenDataScience, где будет проходить все общение в течение курса (канал #mlcourse_open в Slack ODS). А если поподробней, то это вам под кат.

Читать дальше →
Total votes 46: ↑44 and ↓2+42
Comments18

Учим робота готовить пиццу. Часть 1: Получаем данные

Reading time23 min
Views9.7K


Автор изображения: Chuchilko


Не так давно, после завершения очередного конкурса на Kaggle — вдруг возникла идея попробовать сделать тестовое ML-приложение.
Например, такое: "помоги роботу сделать пиццу".


Разумеется, основная цель этого ровно та же — изучение нового.


Захотелось разобраться, как работают генеративные нейронные сети (Generative Adversarial Networks — GAN).


Ключевой идеей было обучить GAN, который по выбранным ингредиентам сам собирает картинку пиццы.


Ну что ж, приступим.

Читать дальше →
Total votes 22: ↑21 and ↓1+20
Comments4

Практический бизнес онтологии: рассказ c передовой

Reading time11 min
Views5.3K


Перевод поста Стивена Вольфрама (Stephen Wolfram) "The Practical Business of Ontology: A Tale from the Front Lines".

Философия химических веществ


«Мы только должны решить: химикат — ближе к городу или к числу?» Я провел вчера свой день — как и большинство дней последних 30 лет — разрабатывая новые функции языка Wolfram. И вчера днем на одном из моих собраний была динамичная дискуссия о том, как расширить возможности языка в химии.

На каком-то уровне проблема, которую мы обсуждали, была по своей сути практической. Но как это часто случается, то, что мы делаем, в конечном итоге это связано с некоторыми глубокими интеллектуальными проблемами. И чтобы на самом деле получить правильный ответ — и успешно разработать функции языка, которые выдержат испытание временем — нам нужно было отбросить эти глубины и говорить о вещах, которые обычно не рассматриваются за пределами какого-либо семинара по философии.
Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments6

Что может и чего не может нейросеть: пятиминутный гид для новичков

Reading time8 min
Views71K
С момента описания первого искусственного нейрона Уорреном Мак-Каллоком и Уолтером Питтсом прошло более пятидесяти лет. С тех пор многое изменилось, и сегодня нейросетевые алгоритмы применяются повсеместно. И хотя нейронные сети способны на многое, исследователи при работе с ними сталкиваются с рядом трудностей: от переобучения до проблемы «черного ящика».

Если термины «катастрофическая забывчивость» и «регуляризация весов» вам пока ни о чем не говорят, читайте дальше: попробуем разобраться во всем по порядку.

Читать дальше →
Total votes 22: ↑21 and ↓1+20
Comments0

Социальная сеть для киноманов или как не закопаться, разрабатывая еще одну соцсеть

Reading time5 min
Views15K

Редизайн или немного больше?


Осенью 2016 года ко мне по рекомендации обратился заказчик с просьбой разработать iOS приложение для киноманов с достаточно обширным функционалом. На тот момент уже существовал готовый прототип с, мягко говоря, примитивным UI. Задача стояла следующим образом: сделать редизайн с доработкой “кое-какого” функционала. Уже тогда у меня закралась идея, что редизайном дело не обойдется, но на сколько объемный это проект я не осознавал. Но тем интереснее…

Читать дальше →
Total votes 17: ↑15 and ↓2+13
Comments47

Digitalization и что это за зверь

Reading time5 min
Views10K
Все уже давно смирились с мыслью, что мы живём в эпоху информационных технологий и пытаемся автоматизировать всё. Смирились и забыли, живём себе и с трудом успеваем привыкать к темпу, с которым прогрессирует ИТ.

Находясь за границей на протяжении достаточно долгого времени и изучая информационные технологии с точки зрения Германии, я заметила достаточно частое упоминание в разговорах терминов «Digital business», «Digitalization». На нашем русском языке это что-то близкое к информатизации бизнеса. Что стоит за этим термином и каков смысл попробую объяснить ниже.
Читать дальше →
Total votes 9: ↑7 and ↓2+5
Comments2

[UPDATED + Комментарии] Сначала они воруют, а когда ты побеждаешь, то тебя убивают

Reading time9 min
Views178K
Кому-то может показаться, что это начало какой-то детской загадки, но на самом деле это реальность. Ответ на нее Департамент Информационных Технологий.

Заранее говорю, что статья является лишь сводом информации. Каждый из вас может сделать собственные выводы.

[UPD]: ДИТ ответил в комментариях
[UPD]: ДИТ прислал официальный ответ
[UPD]: Сайты, которые указывают на связь компании Альтрикс и компании Тактик Лабс почистили, но интернет помнит все
Часть 2. Сначала они воруют, а когда ты побеждаешь, то тебя убивают
Читать дальше →
Total votes 536: ↑521 and ↓15+506
Comments659

Создаем массу асинхронных запросов при помощи Grequests

Reading time3 min
Views18K
Requests хорошо, но grequests лучше. Я не знаю лучше, эффективней библиотеку, которая умеет быстро и элегантно выполнять HTTP-запросы нежели requests, данная библиотека — несомненный лидер, в данном плане.

Но так как с асинхронностью, у неё хромает, выполнять асинхронные запросы возможно с использованием threading или gevent.
Читать дальше →
Total votes 9: ↑9 and ↓0+9
Comments6

Взлом Wi-Fi

Reading time7 min
Views329K

Взлом маршрутизаторов WPA/WPA2 Wi-Fi с помощью Airodump-ng и Aircrack-ng/Hashcat


Это краткое пошаговое руководство, которое демонстрирует способ взлома сетей Wi-Fi, защищённых слабыми паролями. Оно не исчерпывающее, но этой информации должно хватить, чтобы вы протестировали свою собственную сетевую безопасность или взломали кого-нибудь поблизости. Изложенная ниже атака полностью пассивна (только прослушивание, ничего не транслируется с вашего компьютера) и о ней невозможно узнать, если вы только реально не воспользуетесь паролем, который взломали. Необязательную активную атаку с деаутентификацией можно применить для ускорения разведывательного процесса. Она описана в конце статьи.
Читать дальше →
Total votes 77: ↑64 and ↓13+51
Comments51

Распределенное обучение нейронных сетей с MXNet. Часть 1

Reading time14 min
Views11K

Сегодня мы дадим ответ на простой вопрос: "Как работает распределённое обучение (в контексте MXNet)?"


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


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


  • Madan Jampani;
  • Suneel Marthi;

Еще хотел бы порекомендовать поднять машинку с DLAMI и выполнить все примеры из статьи самостоятельно, тем более, что они достаточно простые. Для выполнения кода вполне себе подойдет бесплатная машинка на AWS.


С преамбулой окончено, лезем под кат...

Читать дальше →
Total votes 11: ↑7 and ↓4+3
Comments0

Скрытые послания в именах свойств JavaScript

Reading time6 min
Views26K
Для тестирования код нужно выделить и скопировать прямо из твита. — прим. пер.

Недавно мне попался этот твит от @FakeUnicode. Там был сниппет JavaScript, который выглядел довольно безобидно, но выводил скрытое сообщение. Мне понадобилось некоторое время, чтобы понять происходящее. Думаю, что запись шагов моего расследования может быть кому-то интересна.

Вот тот сниппет:



Что бы вы ожидали от него?

Здесь используется цикл for in, который проходит через перечислимые свойства объекта. Поскольку указано только свойство A, можно предположить, что будет показано сообщение с буквой А. Ну… я ошибался. :D
Читать дальше →
Total votes 80: ↑76 and ↓4+72
Comments22

Как просмотреть 20 млн доменных имен и остаться довольным

Reading time4 min
Views18K

Друзья, добро пожаловать! Ниже вас ждет история о том, как было проанализировано 20 миллионов доменных имен и что из этого вышло. Результаты можно посмотреть скачав csv-файл или восстановив дамп базы данных в PostgreSQL.


image

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

Лекция Владимира Игловикова на тренировке Яндекса по машинному обучению

Reading time18 min
Views13K
Скорее всего, вы слышали об авторе этой лекции. Владимир ternaus Игловиков занял второе место в британском Data Science Challenge, но организаторы конкурса не стали выплачивать ему денежный приз из-за его российского гражданства. Затем наши коллеги из Mail.Ru Group взяли выплату приза на себя, а Владимир, в свою очередь, попросил перечислить деньги в Российский Научный Фонд. История получила широкий охват в СМИ.

Спустя несколько недель Владимир выступил на одной из тренировок Яндекса по машинному обучению. Он рассказал о своём подходе к участию в конкурсах, о сути Data Science Challenge и о решении, которое позволило ему занять второе место.


Total votes 51: ↑46 and ↓5+41
Comments6

10 типов структур данных, которые нужно знать + видео и упражнения

Reading time9 min
Views276K
Екатерина Малахова, редактор-фрилансер, специально для блога Нетологии адаптировала статью Beau Carnes об основных типах структур данных.

«Плохие программисты думают о коде. Хорошие программисты думают о структурах данных и их взаимосвязях», — Линус Торвальдс, создатель Linux.

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

В этой статье я покажу вам 10 самых распространенных структур данных.
Total votes 37: ↑29 and ↓8+21
Comments31
1
23 ...

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity