Search
Write a publication
Pull to refresh
27
0
hopheilalalei @m0sk1t

hahacker

Send message

Самый беззащитный — это Сапсан

Reading time3 min
Views239K
image

Был я как-то на ZeroNights, это очередная конференция по информационной безопасности, которая в этом году была совсем шлаком.

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

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

Как закончилась конференция, все её участники взяли билеты на сапсан, последний сапсан Санкт-Петербург — Москва выезжает в 21:00, и я на него успевал…
Читать дальше →

70 вопросов по JavaScript для подготовки к собеседованию

Reading time43 min
Views1M
Доброго времени суток, друзья!

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

В вопросах, которые показались мне сложнее прочих, приведены ссылки на дополнительную литературу.

Буду признателен за развернутые комментарии. Все замечания будут учтены при редактировании статьи.

Итак, поехали.
Читать дальше →

ООП в картинках

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


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

Каррирование функций в JavaScript

Reading time8 min
Views91K
Функциональное программирование — это такой стиль разработки программ, в котором широко используются некоторые специфические возможности по работе с функциями. Речь идёт, в частности, о передаче функций другим функциям в качестве аргументов и о возврате функций из других функций. К функциональному стилю программирования относится и понятие «чистые функции». Выходные данные чистых функций зависят только от входных, они, при выполнении, не влияют на состояние программы.

Принципы функционального программирования поддерживает множество языков. Среди них можно отметить JavaScript, Haskell, Clojure, Erlang. Использование механизмов функционального программирование подразумевает знание, кроме прочих, таких концепций, как чистые функции, каррирование функций, функции высшего порядка.



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

Пока смерть не разлучит нас или всё о static в C++

Reading time8 min
Views220K


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

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

Проектируем мульти-парадигменный язык программирования. Часть 1 — Для чего он нужен?

Reading time13 min
Views4.4K
Хабр это замечательное место, где можно смело делиться своими идеями (даже если они и выглядят безумно). Хабр видел много самодельных языков программирования, расскажу и я о своих экспериментах в этой области. Но мой рассказ будет отличаться от остальных. Во-первых, это будет не просто язык программирования, а гибридный язык, сочетающий в себе несколько парадигм программирования. Во-вторых, одна из парадигм будет довольно необычной — она будет предназначена для декларативного описания модели предметной области. А в-третьих, сочетание в одном языке декларативных средств моделирования и традиционных объектно-ориентированного или функционального подходов способно породить новый оригинальный стиль программирования — онтологически-ориентированное программирование. Я планирую раскрыть в первую очередь теоретические проблемы и вопросы, с которыми я столкнулся, и рассказать не только о результате, но и о процессе создания дизайна такого языка. Будет много обзоров технологий и научных подходов, а также философских рассуждений. Материала очень много, придется разбить его на целую серию статей. Если вас заинтересовала такая масштабная и сложная задача, приготовьтесь к долгому чтению и погружению в мир компьютерной логики и гибридных языков программирования.
Читать дальше →

Введение в Си. Послание из прошлого столетия

Reading time15 min
Views240K

Предисловие


Я несколько раз в своих комментариях ссылался на книгу Эндрю Таненбаума «Operating Systems Design and Implementation» на ее первое издание и на то, как в ней представлен язык Си. И эти комментарии всегда вызывали интерес. Я решил, что пришло время опубликовать перевод этого введения в язык Си. Оно по-прежнему актуально. Хотя наверняка найдутся и те, кто не слышал о языке программировании PL/1, а может даже и об операционной системе Minix.

Это описание интересно также и с исторической точки зрения и для понимания того, как далеко ушел язык Си с момента своего рождения и IT-отрасль в целом.
Читать дальше →

Массивы в C++

Level of difficultyMedium
Reading time22 min
Views486K


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


Эта статья посвящена массивам. Массивы можно отнести к наиболее древним слоям C++, они пришли из первых версий C. Тем не менее, массивы вошли в объектно-ориентированную систему типов C++, хотя и с определенными оговорками. Программисту важно знать об этих особенностях, чтобы избежать потенциальных ошибок. В статье также рассмотрено другое наследие C – тривиальные типы и неинициализированные переменные. Часть нововведений C++11, С++14, С++17 затрагивают работу с массивами, все эти новые возможности также подробно описаны. Итак, попробуем рассказать о массивах все.



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

Основы шаблонов С++: шаблоны функций

Reading time4 min
Views97K
Дисклаймер: статья была начата еще в феврале, но, по зависящим от меня причинам, закончена не была. Тема очень обширна, поэтому публикуется в урезанном виде. Что не поместилось, будет рассмотрено позже.



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

Механизм шаблонов в языке С++ позволяет решать проблему унификации алгоритма для различных типов: нет необходимости писать различные функции для целочисленных, действительных или пользовательских типов – достаточно составить обобщенный алгоритм, не зависящий от типа данных, основывающийся только на общих свойствах. Например, алгоритм сортировки может работать как с целыми числами, так и с объектами типа «автомобиль».
Читать дальше →

Девять советов по повышению производительности Kubernetes

Reading time11 min
Views12K

Всем привет! Меня зовут Олег Сидоренков, и я работаю в компании ДомКлик руководителем команды инфраструктуры . Эксплуатируем кубик в проде уже больше трёх лет и за это время пережили с ним много разных интересных моментов. Сегодня я поведаю вам, как при правильном подходе, можно выжать из "ванильного" Kubernetes еще больше производительности для вашего кластера. Ready steady go!

Читать далее

А ваш CDN умеет так?

Reading time4 min
Views5.1K


Изображение взято с сайта www.aerotime.aero


Всем привет, меня зовут Семён, я руковожу разработкой партнёрских сервисов в ДомКлике. Недавно, работая над оптимизацией загрузки страниц, я наткнулся на интересную заметку от Cloudflare о приоритизации потоков при работе с CDN. Я заинтересовался и решил проверить, поддерживает ли наш CDN эту опцию стандарта HTTP/2? Тех, кому интересно узнать больше, прошу под кат, где мы рассмотрим механизм приоритизации HTTP/2-потоков и протестируем работу некоторых CDN.

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

Каверзные вопросы по Python

Reading time4 min
Views40K

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


Читать дальше →
Привет, Хабр! Хорошо ли вы знаете инструменты мобильного разработчика? Ладно-ладно, мы верим, что вы настоящие профи, так что вместо тестового задания припасли кое-что другое. Как насчёт небольшой проверки дедукции, логики и внимательности? Мы подготовили историю, а в картинках-ребусах к ней зашифровали 10 названий инструментов мобильной разработки. Но найти их будет непросто — вас поджидают ловушки и фальшивые улики. Надо будет внимательно искать детали, складывать их и не отвлекаться на ложные подсказки. Сможете ли вы распутать каждый ребус и найти правильные ответы? Тогда вперёд! Наша летающая тарелка уже падает, а значит, приключение начинается…
Разгадать ребусы

Как сделать CI на Github для современного фронтенда

Reading time14 min
Views12K

Совсем скоро, 6 и 18 ноября, у нас стартуют новые потоки курса по JavaScript и
курса «Профессия Веб-разработчик», специально к их старту делимся с вами полезным туториалом, как настроить Github Actions для реальных проектов в области фронтенда со множеством линтеров и тестированием UI, а также уведомлениями о рабочем процессе в Slack. Подробности и репозиторий под катом.
Приятного чтения!

21 канал на YouTube, где вы можете бесплатно изучить ИИ, машинное обучение и Data Science

Reading time5 min
Views28K

Мы уже не раз делились в своем блоге полезными материалами для развития (их список можно найти в конце этого поста). Сегодня продолжаем это начинание и специально перед стартом новых потоков курсов по Data Analytics и Data Science представляем подборку YT-каналов по Data Science, искусственному интеллекту и машинному обучению, существование многих из которых неочевидно: например, представлен канал ArXiv Insights, посвящённый научным работам, и Google Cloud Platform.
Приятного чтения!

13 игр, чтобы поиграть, взломать и убить ими эти выходные

Reading time4 min
Views13K
В конце ноября у нас стартует новый поток курса Разработчик игр на Unity и C#, и специально к нему мы делимся подборкой игр на тему Хеллоуина. Все они создавались на соревнованиях вроде Ludum Dare, JS13K и Game Off. Игры написаны на разных языках и движках, причём некоторые из них созданы всего за 48 часов. И у всех этих игр есть общая черта: исходный код этих игр открыт, так что давайте уже рубить и кромсать его! Пост не претендует на «высокий технический уровень», это просто подборка забавных проектов, которые, возможно, вдохновят вас на создание своих игр.

ВНИМАНИЕ: в этом посте есть зомби, оборотни, существа из других измерений, мумии и многое другое! Действуйте на свой страх и риск.


Приятного чтения!

Математическое представление нейронных сетей

Reading time4 min
Views24K
image
Продолжаем «неделю нейронных сетей». В этом посте вы узнаете о нейронных сетях на примерах математических моделей. Говоря проще, вы узнаете о том, как представить нейронные сети с помощью математических уравнений. Дата-сайентисту или исследователю машинного обучения было бы неплохо получить представление о том, как нейронные сети могут быть преобразованы в кучу математических уравнений, для вычисления различных значений. Хорошее понимание представления выходных данных функции активации различных вычислительных блоков (узлов, нейронов) в разных слоях может помочь быстрее и лучше понять алгоритм обратного распространения.

Под катом — простое и краткое введение в математическое представление нейронных сетей для интересующихся теорией практиков: от перцептрона до сети с двумя скрытыми слоями.
Приятного чтения!

Стивен Вольфрам: кажется, мы близки к пониманию фундаментальной теории физики, и она прекрасна

Reading time70 min
Views390K
В продолжение моего поста про вычислимую Вселенную я хочу представить вам свой перевод статьи Стивена Вольфрама, созданной в рамках его проекта The Wolfram Physics Project.


Неожиданное открытие


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

Программисту. 10 ценных GitHub-репозиториев

Reading time3 min
Views46K
GitHub — это платформа, дающая программистам отличные инструменты для организации работы над кодом. Но в GitHub-репозиториях, помимо кода, можно найти массу ценных учебных материалов. Я, например, занимаюсь разработкой ПО и постоянно ищу репозитории, которые могут чем-то мне пригодиться. Вот 10 моих любимых GitHub-проектов.


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

Ultimate Guide по карьере в AI: как выбрать специальность, прокачаться и найти классную работу

Reading time17 min
Views34K


3 августа в наших соцсетях выступал Сергей Ширкин, специалист по ML и искусственному интеллекту.

Сергей занимался автоматизацией финансовых технологий и базами данных в «Сбербанке» и «Росбанке», построением финансовых моделей на основе машинного обучения и аналитической деятельностью в компании Equifax. Прогнозирует телесмотрение с применением методов искусственного интеллекта в Dentsu Aegis Network Russia. Приглашённый преподаватель ВШЭ (магистерская программа «Коммуникации, основанные на данных»).

Также Сергей исследует квантовые вычисления в приложении к ИИ и машинному обучению. Он стоит у истоков факультетов Искусственного интеллекта, Аналитики Big Data и Data Engineering онлайн-университета Geek University, на которых работает деканом и преподавателем.

Делимся с вами расшифровкой эфира и записью.

***

Меня зовут Сергей Ширкин, сегодня мы поговорим об искусственном интеллекте. Обсудим начальные пути – как попасть в искусственный интеллект, как обучиться необходимым предметам, какие курсы пройти, какую литературу читать, как начать карьеру. Также про различные направления.

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

Information

Rating
Does not participate
Registered
Activity