Pull to refresh
0
@masdimaread⁠-⁠only

User

Send message

Создание движка для блога с помощью Phoenix и Elixir / Часть 9. Каналы

Reading time16 min
Views4.8K


От переводчика: «Elixir и Phoenix — прекрасный пример того, куда движется современная веб-разработка. Уже сейчас эти инструменты предоставляют качественный доступ к технологиям реального времени для веб-приложений. Сайты с повышенной интерактивностью, многопользовательские браузерные игры, микросервисы — те направления, в которых данные технологии сослужат хорошую службу. Далее представлен перевод серии из 11 статей, подробно описывающих аспекты разработки на фреймворке Феникс казалось бы такой тривиальной вещи, как блоговый движок. Но не спешите кукситься, будет действительно интересно, особенно если статьи побудят вас обратить внимание на Эликсир либо стать его последователями.

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

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

Тестирование или парсинг сайтов с динамическим дом и многое другое. Nightmare.js — ему все равно

Reading time4 min
Views21K
Эта статья не будет содержать много лирики, марали или вводных зачем и кому это может быть надо.

В двух словах:


1. Пакет можно использовать для тестирования сайтов.
2. Пакет можно использовать для парсинга данных.
3. Пакет можно использовать для автоматизации ввода данных на сайты.

Альтернативы:


Casper.js, phantom.js, watir и много кто еще, в гугле полно всех и вся. Почему я за nightmare.js:

  1. Простота использования.
  2. Полная поддержка html5, никаких конфликтов с сайтами.
  3. Расширяемый через экшены.

Структура библиотеки


Nightmare класс использует фреймворк electron, для каждой страницы создавая объект (BrowserWindow) который запускает браузер оболочку Chromium.

Принцип работы


  1. Nightmare инициализирует новое приложение electron с стартовой страницей, которую необходимо подвергнуть дальнейшей обработке.
  2. Перед загрузкой исследуемой страницы загружаются скрипты, которые позволяют поддерживать двустороннее взаимодействие программиста и страницы через серию эмиттеров.
  3. Nightmare предоставляет программисту набор апи (цепочки действий), позволяющие произвести любые манипуляции с сайтом и получить требуемые данные.
Читать дальше →

Своя CRM система за 3 часа в Гугл-таблицах

Reading time2 min
Views86K
В этом посте хочу поделиться опытом, как с помощью гуглдока можно создать CRM-систему, которая полностью будет закрывать потребности небольшой или средней студии ИТ-разработки.

Я сразу отказался от всех полуготовых решений, типа amoCRM (удобная, но нам рановато пока), ShugarCRM (кривая и медленная, вызывает невроз) и др., потому что я люблю, чтобы софт подстраивался под мой бизнес, а не бизнес-процессы подстраивались под софт (да и на первых порах нужно что-то по проще с низкой стоимостью внедрения). Так что — только гугл-док, только хардкор!


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

20 бесплатных утилит и 89 скриптов для мониторинга и управления базами данных

Reading time2 min
Views35K
Ты сидишь — база растёт, идёшь — база растёт, спишь, ешь или делаешь ещё много всего, а база всё растёт и растёт. Кто-то очень умный сказал, что единственное, что в нашей жизни постоянно — это изменения. Главное — правильно на них реагировать. Любая нештатная ситуация с базой данных происходит именно из-за таких изменений. К сожалению, не всегда есть возможность вложиться в расшитую золотом и усыпанную драгоценными камнями в 60 карат промышленную систему мониторинга. И это заставляет прибегнуть к бесплатным или условно-бесплатным решениям. В статье я собрал 20 бесплатных утилит от компании IDERA (и не только), которые могут некисло помочь закрыть некоторые вопросы с мониторингом и управлением MS SQL, MySQL и Oracle. Поехали!

halyava_sir.jpg
Впитать знания

Что намазать на зубы, чтобы они не выпали

Reading time8 min
Views194K


Хорошо зафиксированный пациент в анестезии не нуждается

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


  • Как правильно мазать зубы пальцем?
  • Хорошо ли растворяются пломбы в кислоте?
  • Почему больно, когда сверлят зубы дрелью без анестезии?
  • Зачем мазать зубы зеленкой?
  • Лечение кариеса на дому
  • Глубокое микрофторирование эмали

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

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

Лучшие приемы минималистичного дизайна

Reading time3 min
Views33K
Светлана Шаповалова, коммерческий автор и переводчик, специально для «Нетологии» адаптировала статью Ника Бабича — разработчика и фаната UI/UX, в которой он рассказал о лучших приемах минималистичного дизайна.

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


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

Делаем GraphQL API на PHP и MySQL. Часть 1: Установка, схема и запросы

Reading time9 min
Views49K
image

В последнее время я все чаще и чаще слышу про GraphQL. И в интернете уже можно найти немало статей о том как сделать свой GraphQL сервер. Но почти во всех этих статьях в качестве бэкенда используется Node.js.

Я ничего не имею против Node.js и сам с удовольствием использую его, но все-таки большую часть проектов я делаю на PHP. К тому же хостинг с PHP и MySQL гораздо дешевле и доступнее чем хостинг с Node.js. Поэтому мне кажется не справедливым тот факт, что об использовании GraphQL на PHP в интернете практически нет ни слова.

В данной статье я хочу рассказать о том, как сделать свой GraphQL сервер на PHP с помощью библиотеки graphql-php и как с его помощью реализовать простое API для получения данных из MySQL.
Читать дальше →

Как автоматизировать подтверждение заказа, если ты не Юлмарт (спойлер: точно так же, как Юлмарт)

Reading time3 min
Views21K

В чем главная проблема российских интернет-магазинов?

а) Работать приходится на очень конкурентном рынке, чуть зазевался — тебя обскакали ребята из соседнего подвала.
б) Цены приходится держать низкие, потому что рядом всегда есть ребята из соседнего подвала, которые торгуют «в серую» и платят зарплату в конвертах. А клиенту это не важно, он хочет купить хорошо и дешево, и это логично.
в) Цены приходится держать еще ниже, потому что есть китайские и прочие интернет-магазины, где часть товаров еще дешевле, плюс они не платят налоги. И т.д. и т.п.

К чему это приводит видно довольно хорошо: за последние два года закрылся «Белый Ветер», сменил собственника «Связной», ну а часть крупных игроков просто год от года публично отчитываются об убытках.

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

Нахождение похожих имен средствами MySQL+PHP

Reading time20 min
Views16K
Тема, озвученная в заголовке статьи, не нова. На просторах Интернета можно найти множество вопросов, как ее реализовать, а вот ответов несколько меньше. И не редко они сводятся к советам использовать продукты сторонних разработчиков, например, Sphinx. Но зачастую в использовании таких громоздких надстроек нет необходимости.
Читать дальше →

Дерзкий telegram бот

Reading time3 min
Views113K

Недавно, в попытках разобраться с nlp, мне пришла идея написать простого telegram бота, который будет разговаривать, как дерзкий гопник. То есть:


  • давать ответ по слову-триггеру, как "хочу", "короче", "нет" и т.д.;
  • отвечать дерзким вопросом на вопрос;
  • отвечать нецензурной рифмой;
  • если ничего не подходит и бот в замешательстве, отвечать злой фразой.

Для имплементации был выбран JavaScript с ES6 и Flow. Возможно, Python подошёл бы лучше, так как под него существует больше стабильных и проверенных библиотек для nlp. Но для JS есть Az.js, которого вполне хватило.


Для работы с Telegram API был использован node-telegram-bot-api.


TLDR: бот, исходный код


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

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

Полная автоматизация среды разработки с помощью docker-compose

Reading time7 min
Views27K

Согласно данным, которые представил на Dockercon 2016 CEO компании Docker Бен Го́луб (Ben Golub), количество работающих в контейнерах Docker приложений за последние два года выросло на 3100%. Docker обеспечивает функционирование 460 тысяч приложений по всему миру. Это невероятно!


Если вы еще не начали использовать Docker, прочтите этот впечатляющий документ о его внедрении. Docker изменил подход к созданию приложений и стал крайне важным инструментом для разработчиков и DevOps-специалистов. Эта статья рассчитана на тех, кто уже использует Docker, и призвана открыть еще одну причину, по которой стоит продолжать это делать.


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

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

Методы обхода защитных средств веб-приложений при эксплуатации SQL-инъекций

Reading time8 min
Views47K
image

 
При разработке современных веб-приложений необходимо использовать защитные средства. Тем не менее, стоит понимать, как они работают, эффективно их применять и осознавать, что они не являются панацеей от хакерских атак. В статье будут рассмотрены способы обхода средств фильтрации и защиты веб-приложений при эксплуатации sql-инъекций.

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

Красивые формы для приёма банковских карт с CardInfo.js

Reading time5 min
Views47K

UPD. CardInfo больше не работает. Используйте BinKing.


Гайд по использованию: https://habr.com/ru/post/527796/
Сайт сервиса: https://binkng.io

Всем кто верстал, верстает или будет верстать форму для приёма банковских карт дарю плагин CardInfo.js, с помощью которого можно сверстать вот такую форму:



Плагин по номеру карты определяет один из 49 российских банков (потом и прочие страны добавлю), выдаёт вам логотип банка, цвета для фона, ссылку на сайт банка, определяет тип карты, его логотип и прочее. С этими данными делаете что хотите, верстаете любую форму.


Поиграться с формой можно на демо странице. Код плагина и инструкции по установке на гитхабе.


Под катом:


  • Пара слов о плагине;
  • Про базу банков, и почему их 49, а не 50;
  • Про логотипы банков;
  • Про логотипы типов;
  • Несколько моих вопросов к читателям;
Читать дальше →

90+ бесплатных ресурсов для самостоятельного обучения онлайн

Reading time6 min
Views689K

Хочу поделиться списком полезных образовательных ресурсов, среди которых каждый найдет для себя что-то интересное и новое. Главное рассмотрим в начале — IT и иностранные языки. А следом будет подборка сервисов и ютуб-каналов, связанных с наукой, образованием в целом, бизнесом и творчеством.


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

Облачный дайджест: 35 материалов по теме ИБ и развития технологий ЦОД

Reading time8 min
Views3.4K
Сегодня мы решили вспомнить, какие интересные темы мы понимали в нашем блоге на Хабре и на нашем сайте. Мы не только рассказываем о собственном опыте и даем советы, но и следим за новинками в сфере облачных вычислений и дата-центров, а также рассказываем о безопасности.

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

+500 бесплатных инструментов для запуска вашего стартапа в 2017 году

Reading time40 min
Views156K


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

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

Итак, мы нашли в интернете бесплатные и условно-бесплатные инструменты для роста вашего бизнеса. Когда они дадут вам желаемый результат, вы можете оформить платную подписку.
Читать дальше →

Пишем самый простой и быстрый input type file

Reading time2 min
Views71K
Доброго времени суток, мой дорогой друг. В сети, да и на Хабре, есть множество статей на тему создания своего input type=«file», но все они отличаются большим количеством костылей и большим количеством кода, что, как мне кажется, не есть хорошо. Ибо, как бы это не было парадоксально, меньше — лучше.


Лучшие головоломки, про которые не знает никто*

Reading time5 min
Views95K
*почти

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

Огромный недостаток головоломки по сравнения с какими-нибудь ММОРПГ — очень малая реиграбельность. Я всегда думал, что технология стирания памяти в «Вечном сиянии чистого разума» использовалась не по назначению. Вместо того, чтобы изжить из воспоминаний какую-то женщину, не лучше ли забыть своё прохождение любимой игры, а потом пройти её заново? К сожалению, пока что это фантастика. Поэтому всё, что я могу — изнывая от ностальгии, в письменной форме вспоминать все эти прекрасные вещи, вернуться к которым мне, увы, не суждено.

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

8 JavaScript библиотек для визуализации данных в виде интерактивных карт

Reading time7 min
Views46K
Визуализация данных стала неотъемлемой частью жизни практически каждого веб-разработчика. Если построение графиков, диаграмм, карт и дашбордов до сих пор никогда не были вашей головной болью, просто немного подождите: наверняка и вы скоро вступите в наш «клуб».

Данная статья дает общее, но вовлеченное представление о восьми самых интересных, на мой взгляд, JavaScript-библиотеках для построения интерактивных геовизуализаций. В целом, таких решений сейчас много, и выбрать оптимальное под тот или иной конкретный проект – задача порой непростая как минимум по времени. Этой публикацией я попытаюсь хотя бы немного упростить жизнь тем, кто только начинает разбираться в данной теме. Кстати, это слегка модифицированный перевод моей недавней статьи на Onextrapixel (оригинал на английском).

Заглавная картинка: визуализация данных с помощью интерактивных карт
Читать дальше →

Инструменты, необходимые разработчику для маркетинга приложений

Reading time6 min
Views29K


Исследование рынка


  • Google’s Keywords Tools
  • Google Trends
  • App Annie – Анализ приложения, Аналитика, Исследование рынка
  • Distimo – Анализ приложения, Загрузка оценок и исследования
  • Xyologic – Новый подход к поиску мобильных приложений
  • Apptrace – Исследование App Store
  • AppMonsta – Данные о рынка приложений
  • Vision Mobile – Экосистема аналитики фирмы
  • MetricsCat –Анализ данных приложения

Маркетеривание/Прототипирование


  • POP (Прототипирование на бумаге) – Прототипирование мобильных приложений
  • Mockabilly – Приложение для создание макетов для iPhone
  • Interface – Продвинутое макетирование и прототипирование под iOS
  • Blueprint – Макетирование приложений для iPad и iPhone
  • Proptotypes – Меняет статический дизайн в кликабельный прототип для iPhone
  • FieldTest – Создание мобильного интерактивного прототипа
  • Keynotopia – Keynotopia превращает Keynote и PowerPoint в лучшие инструменты быстрого прототипирования для создания макетов приложений
  • Justinmind – Интерактивные каркасы для создания веб- и мобильных приложений
  • Fluid UI – Прототипирование под iOS, Android и Windows Приложений
  • UI Stencils – Трафареты, эскизы и аксессуары для дизайна пользовательского интерфейса
  • App Cooker – Продвинутый генератор макетов для мобильных приложений под iOS
  • Proto.io – Мобильное прототипирование
  • UXPin – Средства проектирования UX
  • AppGyver’s Prototyper – Меняет каркасы в прототипы интерактивных мобильных приложений
  • App Mockup Tools – Создание прототипов для iPhone приложений
  • WireKit – Комплект каркасов для iPhone приложений
  • DevRocket – Панель плагина Photoshop для iOS — разработчиков
  • Flinto – Быстрое создание прототипов для iOS
  • App Icon Template – Шаблоны иконок для iOS 7 и Android приложений
  • PortKit – UX Metaphor Эквивалент для iOS и Android
  • iOS 7 Wireframe Kit – «Набор для Иллюстратора, чтобы сделать ваш вайфрейминг днем на пляже»
  • SketchMirror –Превью дизайна мобильных приложений со своего девайса
  • Invision – Веб и Мобильное прототипирование, а также инструмент для UI прототипирования
  • Framer –Инструмент для прототипирования анимаций
  • Marvel – Бесплатный инструмент для прототипирования
  • Sketch – Профессиональный цифровой дизайн для Mac
Читать дальше →

Information

Rating
Does not participate
Location
Praha, Hlavni Mesto Praha, Чехия
Date of birth
Registered
Activity