Как стать автором
Обновить
29
0
Данил @0x7o

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

Отправить сообщение

«Кандидат имеет право задавать уточняющие вопросы», или Доводим интервьюера до нервного срыва

Время на прочтение4 мин
Количество просмотров128K
Недавно я прочёл запись в блоге одного парня, который жаловался, что на интервью его попросили написать функцию, которая должна скопировать файл. Нет, я понимаю, как можно взъесться на такое задание, но если бы в подобной ситуации оказался я… уж я бы оторвался по полной:

Кандидат: Что конкретно Вы имеете в виду, говоря «скопировать»?
Интервьюер: Ну… создать новый файл, содержимое которого является копией содержимого исходного файла.
Читать дальше →
Всего голосов 168: ↑123 и ↓45+78
Комментарии224

DreamBerd — идеальный язык программирования

Время на прочтение12 мин
Количество просмотров25K

DreamBerd - идеальный язык программирования. Вот его фичи!

Когда вы закончите знакомиться со всеми фичами, ознакомьтесь с примерами.

Восклицательные знаки!

Будьте смелее! Заканчивайте каждое утверждение восклицательным знаком!

print("Hello world")!

Если вы чувствуете себя особенно смелым, вы можете использовать еще больше!!!

print("Hello world")!!!

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

print("Hello world")?

Возможно, вам интересно, что Dreambird использует для оператора "не", который в большинстве других языков является восклицательным знаком. Это просто - вместо оператора 'не' используется точка с запятой.

if (;false) {

   print("Hello world")!

}

Читать далее
Всего голосов 78: ↑75 и ↓3+83
Комментарии45

Программист учится рисовать. Дневник Емели

Время на прочтение16 мин
Количество просмотров35K
Так получилось, что моим основным хобби на лихой 2020-й год стало освоение ремесла рисования.

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

spoiler
В конце года я остался доволен собой и окончательно понял, что я хотел бы прокачиваться и дальше!

image
Так выглядел мой уровень изобразительных навыков в ноябре предыдущего (2019-го) года

Формат подачи данной статьи — это на 95% личный дневник, который я вел в гугл-доке, записывая, что я делал каждый месяц, свои ощущения и как-то фиксируя собственный прогресс — смотрел, сколько работ мне удалось нарисовать и какого они были качества — нравились ли они мне лично или были совсем так себе по исполнению.
Читать дальше →
Всего голосов 105: ↑104 и ↓1+142
Комментарии123

Как Reddit создал r/Place

Время на прочтение15 мин
Количество просмотров26K

enter image description here


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

Читать дальше →
Всего голосов 85: ↑84 и ↓1+83
Комментарии24

Как подружить PyTorch и C++. Используем TorchScript

Время на прочтение12 мин
Количество просмотров20K

Около года назад разработчики PyTorch представили сообществу TorchScript — инструмент, который позволяет с помощью пары строк кода и нескольких щелчков мыши сделать из пайплайна на питоне отчуждаемое решение, которое можно встроить в систему на C++. Ниже я делюсь опытом его использования и постараюсь описать встречающиеся на этом пути подводные камни. Особенное внимание уделю реализации проекта на Windows, поскольку, хотя исследования в ML обычно делаются на Ubuntu, конечное решение часто (внезапно!) требуется под "окошками".


Примеры кода для экспорта модели и проекта на C++, использующего модель, можно найти в репозиториии на GitHub.


Читать дальше →
Всего голосов 51: ↑51 и ↓0+51
Комментарии6

Полное руководство по эффективному обучению

Время на прочтение9 мин
Количество просмотров17K

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

Читать далее
Всего голосов 17: ↑9 и ↓8+5
Комментарии12

Визуализируя нейронный машинный перевод (seq2seq модели с механизмом внимания)

Время на прочтение5 мин
Количество просмотров46K

Привет, Хабр! Представляю вашему вниманию перевод статьи "Visualizing A Neural Machine Translation Model (Mechanics of Seq2seq Models With Attention)" автора Jay Alammar.


Sequence-to-sequence модели (seq2seq) – это модели глубокого обучения, достигшие больших успехов в таких задачах, как машинный перевод, суммаризация текста, аннотация изображений и др. Так, например, в конце 2016 года подобная модель была встроена в Google Translate. Основы же seq2seq моделей были заложены еще в 2014 году с выходом двух статей — Sutskever et al., 2014, Cho et al., 2014.


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


Sequence-to-sequence модель – это модель, принимающая на вход последовательность элементов (слов, букв, признаков изображения и т.д.) и возвращающая другую последовательность элементов. Обученная модель работает следующим образом:


Всего голосов 10: ↑9 и ↓1+13
Комментарии2

42 оператора расширенного поиска Google (полный список)

Время на прочтение15 мин
Количество просмотров294K
Те, кто давно занимается поисковой оптимизацией, хорошо знают об операторах расширенного поиска Google. Например, почти все знают об операторе site:, который ограничивает поисковую выдачу одним сайтом.

Большинство операторов легко запомнить, это короткие команды. Но уметь эффективно их использовать — совсем другая история. Многие специалисты знают основы, но немногие по-настоящему овладели этими командами.

В этой статье я поделюсь советами, которые помогут освоить поисковые операторы для 15 конкретных задач.
Читать дальше →
Всего голосов 127: ↑124 и ↓3+121
Комментарии40

Взлом хешей с помощью HashCat

Время на прочтение4 мин
Количество просмотров93K


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


Hashcat поддерживает:


  • Процессоры:
    • CPU
    • GPU
  • Другие аппаратные ускорители в:
    • Linux
    • Windows
    • macOS

Также hashcat имеет средства, которые помогают включить распределенный взлом паролей.


HashCat поддерживает следующие режимы атаки:


  • Брутфорс
  • Комбинаторная атака
  • Гибридная атака
  • Атака по Маске
  • Перестановочная атака
  • Атака на основе правил
  • Табличная атака
  • Атака с переключением регистра

С помощью данной команды можно проверить все доступные параметры:


hashcat –h


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


Содержание:


  • MD5-хеши
  • MD5-хеши с солью
  • Хеш-суммы MD5Crypt
  • HMAC-SHA1 key
    • Хеш-суммы SHA-1
  • Хеши SHA2–384
  • Хеши SHA3–512
  • NTLM-хеши
  • CRC32-хеши

MD5-хеши


Убедитесь, что входные хеши имеют совместимый с hashcat формат.


Пример:


8743b52063cd84097a65d1633f5c74f5 >hash.txt


Команда:


hashcat -m 0 -a 0 hash.txt passwordlist.txt
Читать дальше →
Всего голосов 9: ↑4 и ↓5+2
Комментарии16

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

Время на прочтение2 мин
Количество просмотров49K
Год назад в лаборатории компьютерных наук и искусственного интеллекта Массачусетского технологического института разработали технологию, которая позволяет измерить пульс человека по видео. Алгоритм усиливает мельчайшие изменения цвета лица, связанные с притоком и оттоком крови во время каждого удара сердца. Теперь учёные продвинулись гораздо дальше — новый алгоритм позволяет измерять пульс, даже если видео сильно зашумлено, человек стоит спиной к камере или носит маску.


Читать дальше →
Всего голосов 75: ↑70 и ↓5+65
Комментарии74

Развитие техники Помодоро

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров12K

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

Мне нравится гибкость и адаптивность
Всего голосов 14: ↑11 и ↓3+11
Комментарии11

10 приёмов, чтобы получить быструю и качественную картинку в Midjourney

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров19K

Меня зовут Андрей Цыган - я предприниматель, управленец и как энтузиаст исследую возможности нейросетей. Я никогда не работал ни с графическими редакторами, ни даже с PhotoShop - но постоянно нуждался в таких услугах. Качественные изображения мне были нужны для презентаций, маркетинговых материалов, соц. сетей.

Из всех сетей генерации изображений мне больше всего понравился Midjourney - оптимальное качество на потраченное время. Я понимаю в самом Midjourney (не говоря про Stabble Diffusion) можно углубиться в детали - но я не дизайнер или AI artist, мои задачи прикладные.

У меня уже сгенерированно более 4000 изображений и я выделил 10 методов, которые позволяют достаточно быстро и качественно получить нужный мне контент.  Они могут использоваться как обложка к посту или лонгриду, или я чаще использую в презентации.
Надеюсь, эта статья сэкономит вам несколько часов!

Читать далее
Всего голосов 17: ↑15 и ↓2+18
Комментарии4

Пишем GPT в 60 строк NumPy (часть 1 из 2)

Уровень сложностиСредний
Время на прочтение16 мин
Количество просмотров74K

В этом посте мы начнём реализацию с нуля GPT всего в 60 строках numpy. Во второй части статьи мы загрузим в нашу реализацию опубликованные OpenAI веса обученной модели GPT-2 и сгенерируем текст.
Читать дальше →
Всего голосов 73: ↑71 и ↓2+92
Комментарии33

Как No-code и генеративный ИИ позволяют за секунды создавать новые сайты

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров52K

Фронтенд и бекенд — прошлый век?

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

Создание сайта с нуля у опытного разработчика займет в среднем от 100 до 500 часов. Причем если нужен уникальный дизайн и множество картинок, это ещё и выльется в копеечку. Но, оказывается, люди без опыта и знаний уже делают сайты бесплатно, и за 10 минут (или 10 секунд, если используют один из сервисов). Не имея ни малейшего понятия о том, что такое PHP, Python или Java.

Разберем на примерах, как это происходит. И посмотрим на три уровня использования генеративных ИИ для создания сайтов.

Читать далее
Всего голосов 19: ↑15 и ↓4+16
Комментарии22

Использование нейросетей для вашей рекомендательной системы

Время на прочтение7 мин
Количество просмотров5.5K

Глубокое обучение (Deep learning. DL) - это современное решение многих проблем машинного обучения, таких как компьютерное зрение или недостатки естественного языка, и превосходит альтернативные методы. Последние тенденции включают применение методов DL в рекомендательных системах. Многие крупные компании, такие как AirBnB, Facebook, Google, Home Depot, LinkedIn и Pinterest, делятся своим опытом использования DL для рекомендательных систем.

Недавно NVIDIA и команда RAPIDS.AI выиграли три соревнования с использованием DL: ACM RecSys2021 Challenge, SIGIR eCom Data Challenge и ACM WSDM2021 Booking.com Challenge.

Область рекомендательных систем сложна. В этом посте я сосредоточусь на архитектуре нейронной сети и ее компонентах, таких как эмбеддинг и полностью связанные слои, рекуррентные ячейки нейронной сети (LSTM или GRU) и блоки трансформеров. Я расскажу о популярных сетевых архитектурах, таких как Wide и Deep от Google и Deep Learning Recommender Model (DLRM) от Facebook.

Читать далее
Всего голосов 9: ↑7 и ↓2+6
Комментарии0

Burp Suite — сканирование веб-приложений на основе JWT

Время на прочтение7 мин
Количество просмотров5.8K

Привет, Хабр! Снова с вами те, кто отчитываются, что в вашем приложении не хватает заголовков безопасности, а именно инженеры по динамическому анализу. В нашей прошлой статье мы описали плагин для OWASP ZAP, упрощающий авторизацию на основе JWT. А сейчас хотим рассказать о том, как настроить подобную магию авторизации в популярном инструменте Burp Suite Pro.

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

MacOS Monterey на Linux — быстро и просто?

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров47K
Что делать, если у вас возникло желание или необходимость заняться разработкой под MacOS или iOS, но под рукой нет макбука, а покупать его только чтобы открыть Xcode кажется делом сомнительным? Недавно я столкнулся с такой проблемой в одном из своих пет-проектов и решил ее достаточно просто и быстро. После выполнения нескольких достаточно примитивных шагов, мне удалось запустить MacOS Monterey как на скриншоте ниже.

image

Никакого Virtualbox, никакого Virtual Machine Manager. Из требований — только 100 Гб свободного места на диске и хотя бы 16 Гб оперативной памяти. В рунете я встречал описание похожих путей установки, вроде Docker-OSX или Sosumi. Но я бы хотел поделиться способом, который позволяет использовать актуальную версию MacOS (Sosumi — сразу минус) и не потратить уйму свободного времени на возню с конфигами и терминалом. Поехали.
Читать дальше →
Всего голосов 68: ↑64 и ↓4+75
Комментарии67

Как выявлять баги в психике. Практическое пособие

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров18K

Каждый из вас сталкивался с такой ситуацией, когда вы общаетесь с собеседником (особенно, если речь идет про конфликт), а он реагирует неожиданно или неадекватно по вашему мнению (а может быть, и по мнению других людей). И если это является однократным инцидентом, то мы часто это оправдываем "стрессом/плохим настроением/встал не с той ноги/т.д.". Но если ситуация повторяется, то неизбежно возникает вопрос: "Да что с тобой не так?!". И сегодня мы попытаемся разобраться, а как же можно выдвинуть аккуратные гипотезы, которые нас приблизят к этому ответу.

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

Узнать полезное
Всего голосов 21: ↑18 и ↓3+19
Комментарии13

Как отличить ChatGPT-3.5 от ChatGPT-4: разоблачение мифов

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров69K

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

Читать далее
Всего голосов 16: ↑10 и ↓6+8
Комментарии85

Как выжать 1,5 терафлопса производительности для 32-битных чисел с плавающей точкой на одном процессоре M1

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров7.9K

Если вы занимаетесь обучением крупных современных нейросетей, эта статья будет вам не совсем в тему, ведь у A100 скорость в сто раз выше (156 терафлопсов).


Так что же интересного в этих полутора терафлопсах?


  • работа на одном ядре MacBook Air 2020 года с питанием от батареи;
  • выполнение с задержкой ~0,5 наносекунды на инструкцию.

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

Читать дальше →
Всего голосов 7: ↑6 и ↓1+7
Комментарии11

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность