Pull to refresh
-18
0
Никита Траторов @NikitaTratorov

Fullstack — веб-разработчик

Send message

30+ онлайн ресурсов для изучения программирования в 2022

Reading time11 min
Views365K
Изучение программирования становится все более доступным благодаря непрерывному росту количества онлайн ресурсов, которые помогают в этом всем желающим. Плюс таких ресурсов — в неограниченном количестве знаний, которые они могут дать и в высокой квалификации преподавателей. Минус — никто не заставляет вас учиться и качество полученных знаний зависит лишь от того, сколько усилий вы приложили.



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

Как чат-боты помогают выстраивать омниканальный опыт

Reading time7 min
Views8.3K
Практически каждый человек, у которого сегодня есть смартфон, хоть раз использовал чат-бота. Со стороны пользователя боты выглядят как простые программы в мессенджерах, которые могут решать элементарные задачи с помощью текстовых сообщений. Например, помогут найти и заказать авиабилет или подобрать нужный лук в интернет-магазине. А вот как выглядит все это с другой стороны баррикад, как бизнес внедряет в свою работу чат-ботов и какую реальную пользу они могут ему принести? Все ли так просто?
Читать дальше →

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

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

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

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

Создание справочника адресной информации с блекджеком и API

Reading time7 min
Views21K

Часть 1. Трагическая. “За что мне все это?!”


Столкнулись мы как-то с необходимостью ввода корректной информации о местонахождении (прописке, регистрации) пользователей, и с тем, что проблема эта решается не совсем так легко и просто, как бы нам хотелось. Сначала мы попробовали КЛАДР, в его бесплатной ипостаси. Не то чтобы нам прямо-таки решительно все не понравилось, но было как минимум одно весьма раздражающее обстоятельство — некоторые адреса отсутствовали в справочнике. Например, дом 10 есть, а 10к1 — извините, не завезли. Вообще КЛАДР был привлекателен тем, что у него есть простой API и плагины (jQuery в частности), которые можно легко встроить в приложение, но отталкивал наполнением. Мы задумались — если нет такого ресурса, содержащего полную и наиболее актуальную адресную информацию, с API и плагинами, то единственный выход — создать такой ресурс самим.

Часть 2. Искательская. “Где собака зарыта?!”


И прослышали мы про ФИАС. О том как он бесконечно полон и прекрасен. А это выход! На сайте ФИАС есть базы, и все что нужно молодой растущей информационной системе! Правда, размер базы составляет более 4 Gb, ну да ладно, это же вся Россия! Обновляется база регулярно, так что есть где разгуляться. Дело за малым — развернуть базу, прикрутить API и плагины. Надо оговориться, что существует несколько релевантных и важных статей. К примеру, цикл вот этих статей, которые изначально очень помогли.

Часть 3. «Как это работает»


Проблемы начались с того, что база данных ФИАС поставляется в формате .dbf, данные из которого надо было как-то перенести в PostgreSQL, который было решено использовать в качестве БД.

Нужно отметить, что кроме формата .dbf, база представлена в формате xml. Как известно, человеку хочется всего и сразу. Чтобы включил и работает. Но разобраться сразу с тем, что же дает ФИАС довольно проблематично.
Читать дальше →

Залипаете ли вы в соцсетях и как с этим бороться

Reading time6 min
Views27K
Тиньков в Facebook пылит и дразнит, когда же он деньги делает? А чем вы хуже? Олег Тиньков не один такой, но активных в соцсетях крупных бизнесменов действительно мало. За них там тусуют пиарщики. У Марка Цукерберга команда личных сммщиков 14 человек.

А в целом: хочешь быть бедным — туси в сети, хочешь быть уволен — туси в сети (если ты конечно не Ким Кардашьян, Иван Рудской-EeOneGuy или Анатолий Шарий). Такие стеореотипы гуляют по умам и иногда публично озвучиваются уважаемыми иностранными газетами в наукоподобном стиле.

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

У каждого из нас есть по несколько друзей молодого или нестарого возраста, кто напрочь отсутствует в соцсетях. Даже в крупных городах. А всего по данным опросов в стране таких 40 процентов. И хотя их число потихоньку сокращается, чувствуют себя они прекрасно и никак от залогиненных в сетях не отличаются.

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

PHP и OData: пересаживаемся с велосипедов на технологию от Microsoft

Reading time15 min
Views23K
Нынче модно делать API и многие из нас уже реализовывали какие-то API на PHP. Одна из задач REST API — отдавать наборы данных, чтобы их в конечном итоге отобразить в табличном виде. Для этого, помимо прочего, приходится решать такие задачи:

  • провалидировать запрос,
  • отфильтровать данные,
  • отсортировать данные,
  • запрашивать и отдавать не все колонки, а только некоторые,
  • реализовать пагинацию.

Не знаю как вы, но я вижу, что часто это делается велосипедными решениями. Задачи с виду не сложные, но чтобы их решить качественно, приходится потратить немало времени на разработку, документацию и разъяснения коллегам, как работает ваше изобретение. Я расскажу о том, как можно реализовать эти задачи весьма технологично с помощью OData.

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

Видеохостинг своими руками

Reading time6 min
Views69K
Эта статья о некоторых технических аспектах реализации бесплатного сервиса для загрузки, хранения и просмотра видео. Будут рассмотрены вопросы настройки серверного программного обеспечения, даны примеры команд для конвертации видео и примеры кода на языке PHP.
Читать дальше →

Как понять, что происходит на сервере

Reading time9 min
Views82K


Александр Крижановский ( krizhanovsky, NatSys Lab.)


По Сети уже давно бегает эта картинка, по крайней мере, я ее часто видел на Фейсбуке, и появилась идея рассказать про нее:


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

5 действительно бесплатных нелинейных видеоредакторов для Windows

Reading time6 min
Views436K
Этот пост призван помочь тем, кому, как и мне, внезапно стало тесно с Movie Maker.

Видеоредакторы почти не интересовали меня до прошлого месяца, пока с друзьями мы не задумали снять что-нибудь оригинальное к Новому году. Креативность наша ограничилась тем, чтобы, говоря терминами прежде мне неизвестными, применить эффект “Разделение экрана” (Split Screen). То есть реализовать нечто такое:


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

Создание архитектуры программы или как проектировать табуретку

Reading time25 min
Views700K
Взявшись за написание небольшого, но реального и растущего проекта, мы «на собственной шкуре» убедились, насколько важно то, чтобы программа не только хорошо работала, но и была хорошо организована. Не верьте, что продуманная архитектура нужна только большим проектам (просто для больших проектов «смертельность» отсутствия архитектуры очевидна). Сложность, как правило, растет гораздо быстрее размеров программы. И если не позаботиться об этом заранее, то довольно быстро наступает момент, когда ты перестаешь ее контролировать. Правильная архитектура экономит очень много сил, времени и денег. А нередко вообще определяет то, выживет ваш проект или нет. И даже если речь идет всего лишь о «построении табуретки» все равно вначале очень полезно ее спроектировать.

К моему удивлению оказалось, что на вроде бы актуальный вопрос: «Как построить хорошую/красивую архитектуру ПО?» — не так легко найти ответ. Не смотря на то, что есть много книг и статей, посвященных и шаблонам проектирования и принципам проектирования, например, принципам SOLID (кратко описаны тут, подробно и с примерами можно посмотреть тут, тут и тут) и тому, как правильно оформлять код, все равно оставалось чувство, что чего-то важного не хватает. Это было похоже на то, как если бы вам дали множество замечательных и полезных инструментов, но забыли главное — объяснить, а как же «проектировать табуретку».

Хотелось разобраться, что вообще в себя включает процесс создания архитектуры программы, какие задачи при этом решаются, какие критерии используются (чтобы правила и принципы перестали быть всего лишь догмами, а стали бы понятны их логика и назначение). Тогда будет понятнее и какие инструменты лучше использовать в том или ином случае.

Данная статья является попыткой ответить на эти вопросы хотя бы в первом приближении.
Читать дальше →

Отдаем файлы эффективно с помощью PHP

Reading time3 min
Views284K
Если Вам потребовалось отдавать файлы не напрямую веб сервером, а с помощью PHP (например для сбора статистики скачиваний), прошу под кат.
Три способа отправить пользователю файл и не повесить сервер

Login или Log in?

Reading time2 min
Views88K


‘Login’ или ‘log in’? Одно слово или два? Это достаточно распространенный вопрос среди тех, кто пишет на английском языке. Давайте разберемся, как же правильно.

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

Как объяснить бабушке, что такое Agile за 15 минут с картинками

Reading time7 min
Views1.2M
«Любое дело всегда длится дольше, чем ожидается, даже если учесть закон Хофштадтера.»
— закон Хофштадтера

image

Самый просматриваемый ролик на YouTube по теме agile. 744 625 просмотров на момент публикации данной статьи. Легкий стиль изложения, картинки и всего 15 минут — лучшее что я видел. TED отдыхает.

Нет – взломам серверов! Советы по проверке и защите

Reading time3 min
Views34K
Подозреваете, что Linux-сервер взломан? Уверены, что всё в порядке, но на всякий случай хотите повысить уровень безопасности? Если так – вот несколько простых советов, которые помогут проверить систему на предмет взлома и лучше её защитить.

image

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

[ В закладки ] Зоопарк архитектур нейронных сетей. Часть 1

Reading time10 min
Views95K


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

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

Книга «Как пережить полный конец обеда, или безопасность в PHP». Часть 1

Reading time22 min
Views46K
image

Big Five Part 3 by CrazyAsian1

Привет. Меня зовут Саша Баранник. В Mail.Ru Group я руковожу отделом веб-разработки, состоящим из 15 сотрудников. Мы научились создавать сайты для десятков миллионов пользователей и спокойно справляемся с несколькими миллионами дневной аудитории. Сам я занимаюсь веб-разработкой около 20 лет, и последние 15 лет по работе программировать приходится преимущественно на PHP. Хотя возможности языка и подход к разработке за это время сильно изменились, понимание основных уязвимостей и умение от них защититься остаются ключевыми навыками любого разработчика.

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

P. S. Книга длинная, поэтому перевод будет выкладываться несколькими статьями. Итак, приступим…
Читать дальше →

Работаем с бюджетным учреждением. Часть 1

Reading time23 min
Views17K
Если вы работаете или только собираетесь поработать с бюджетным учреждением, эта статья (как и весь цикл) может оказаться для вас небесполезной. К вам обратился заказчик с предложением разработать для него некое программное обеспечение (продать/собрать компьютеры, взять на обслуживание офисную технику). И этот заказчик — бюджетное учреждение. На что следует обратить внимание? Чего следует опасаться? Возможно ли как-то минимизировать риски такого сотрудничества? Что такое обещание денег и почему его недостаточно? И причем здесь открытые данные? Если это вас заинтересовало — прошу под кат.
Читать дальше →

Исследование защищенности карты Тройка

Reading time18 min
Views203K
Карта тройка

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

Цель данного исследования — выяснить защищенность системы электронного кошелька от подделки баланса, оценить безопасность инфраструктуры, работающей с картой. Вся работа была выполнена без использования специальных технических средств. Использовался дешевый смартфон на платформе Android и персональный компьютер. Общее время, затраченное на исследование, составило 15 дней.

В ходе работы был успешно проведен реверс­-инжиниринг мобильного приложения «Мой проездной», что позволило получить доступ к памяти карты и изучить структуру хранения данных. Были найдены уязвимости, позволяющие выполнить подделку баланса, записанного на электронном кошельке карты Тройка. В результате чего стало возможным использование систем, поддерживающих карту, без оплаты.

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

Внимание! Данные материалы представлены исключительно в ознакомительных целях. Подделка проездных билетов является уголовным преступлением и преследуется по закону.

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

Опасный target="_blank"

Reading time2 min
Views201K
Большинство создают внешние ссылки через target="_blank" и не знают одного интересного нюанса — страница, на которую мы попадем таким образом, получит частичный контроль над ссылающейся на нее страницей через js свойство window.opener.

Через window.opener.location мы сможем сделать редирект на, к примеру, фишинговую страницу. Это своего рода tabnabbing, только более продвинутый. Так как жертва меньше всего ожидает подмены страницы, в открытой ранее, доверенной вкладке браузера.
Читать дальше →

Закон «О персональных данных» и практика его применения в российской действительности. Часть 2

Reading time7 min
Views25K


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

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

  • Имеете ли Вы право передавать обработку третьей стороне, и какие условия при этом накладываются на Вас и на Ваших партнеров по обработке данных? Кто несет ответственность за персональные данные при передаче обработке партнеру-третьей стороне?
  • Нужны ли Вам какие-либо лицензии? Какие отчеты по ним Вам будет необходимо сдавать? Кто такой оператор персональных данных?
  • Будете ли Вы работать с конфиденциальной информацией, какие условия Вы и Ваш партнер при этом должны выполнять? Какие лицензии нужны?
Читать дальше →

Information

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