Рубрика «Веб-разработка» - 61

image

The Rolling Scopes — минское сообщество фронтенд/javascript разработчиков. Мы занимаемся проведением митапов, воркшопов и Q&A сессий. А в этом году доросли до уровня, не побоюсь сказать этого слова, международной конференции. Наше 20-е мероприятие получилось помасштабнее остальных. В связи с этим непременно хочется поделиться деталями проведения, атмосферой и, конечно же, материалами.
Читать полностью »

Есть такой язык программирования, который называется C#. И есть очень много разработчиков, которым он очень нравится. А ещё есть такой язык программирования, который называется JavaScript. Как-то так сложилось, что он нравится далеко не всем C#-разработчикам. А теперь представьте ситуацию: есть заядлый C#-разработчик. Он очень любит C#, все-все проекты на нём пишет. Но судьба распорядилась так, что ему понадобилось написать клиентское веб-приложение. Знаете, такое, чтобы пользователю не нужно было себе ничего скачивать и устанавливать, чтобы он мог просто открыть любой браузер в любой операционной системе на любом устройстве — а приложение уже там. И вот тут у нашего лирического героя возникла проблема: вроде бы JavaScript идеально подходит для этой задачи, но вот писать на нём отчего-то на нём не очень хочется. К счастью, в современном мире существует много языков, которые транслируются в JavaScript (всякие TypeScript, CoffeScript и тысячи других). Но наш разработчик оказался очень упрямым: он упорно не хочет изменять своему любимому C# с «вражескими» технологиями.

К счастью для него, счастливое будущее уже практически наступило. Есть такой проект, который называется DuoCode. Он умеет транслировать C#-код в JavaScript. Пока он в состоянии beta, но у него уже весьма неплохо получается: поддерживаются нововведения C# 6.0, Generic-типы, Reflection, структуры и LINQ, а отлаживать итоговый JavaScript можно на исходном C#. Давайте посмотрим внимательнее, что же представляет из себя продукт.

DuoCode: транслируем C# в JavaScript - 1Читать полностью »

Я никому не открою Америку, не удивлю публику новым фокусом и не взорву мозг тем, кто в CSS3 плавает, как аквалангист. Расскажу простой способ, как создать слайдер с помощью простых функций CSS3 без необходимости использовая javascript.
Читать полностью »

Все слышали о том, что PHP создан, чтобы умирать. Так вот, это не совсем правда. Если захотеть — PHP может не умирать, работать асинхронно, и даже поддерживает честную многопоточность. Но не всё сразу, в этот раз поговорим о том, как сделать чтобы он жил долго, и поможет нам в этом атомный реактор!

Атомный реактор в каждый сайт - 1
Читать полностью »

И да, продолжаю свою серию исключительно практических постов о SaaS. Пока инженеры команды заканчивают сборку и тестирование довольно нишевого cтартапа DentalCloud позволю себе в рамках NPD (new product development) порассуждать о том, как мы подошли к вопросам а) ценообразования б) методах формирования тарифных планов для сервиса. DC мы анонсируем позже, ну и надо ли просто анонсировать его на уважаемой аудитории Хабрахабр, даже не знаю.

image
Читать полностью »

В прошлой статье мы упоминали, что:

В настоящее время существует большое количество библиотек, поддерживающих протокол OData, и каждый день появляются новые. В частности, с OData работают такие JavaScript библиотеки, как Kendo UI, DevExtreme Web, Syncfusion HTML5 controls, Infragistics HTML5 controls, OpenUI5, Wijmo, JayData, Breeze.js, datajs, ODataJS, angular-odata, и т.д.

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

Мы подготовили примеры того, как гриды работают с OData.

Основные запросы грида к серверу:

  • Получить общее количество записей, удовлетворяющих некоторому условию.
  • Получить выборку из общего набора записей для показа на одной странице.
  • Получить весь набор записей.
  • Отсортировать записи по одному или нескольким полям.
  • Отфильтровать записи по некоторому набору условий.
  • Добавить новую запись.
  • Модифицировать запись.
  • Удалить запись.
  • Batch update – добавление, изменение и удаление группы записей.

Рассмотрим детальнее основные запросы на примере
Читать полностью »

Вступление

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

В одном из проектов для решения такой задачи мы решили использовать связку php+RabbitMQ+erlang. На php уже был написан необходимый функционал, нам надо было лишь разнести вызовы по времени и на разные машинки. Конкретно задача звучала так: написать парсер пользователей с внешнего хранилища данных и, самое главное, поддерживать актуальность данных, а в случае их изменения, посылать уведомления.
Читать полностью »

Js app starter

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

Что умеет делать сборщик:

  • Собирать front-end проект для development & production окружений.
  • Собирать по несколько js/css бандлов на проект.
  • Использовать стиль CommonJS модулей в браузере.
  • Использовать ES6-синтаксис.
  • Спрайты, картинки и многое другое

Читать полностью »

График активности пользователей на главной странице Mail.Ru — это своего рода термометр, причем сверхчувствительный. Порой аудиторные показатели отражают проблемы, которые возникли у другого большого интернет-сервиса, или же показывают реакцию на какие-либо важные события в общественной жизни.

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

За тем, как работает главная страница, мы следим по техническим графикам:

  1. График времени загрузки страницы по блокам. Мы смотрим не только на общее время загрузки главной страницы, но и на показатели по отдельным ключевым блокам — Почта, Новости и т.п.
  2. График «рефрешей» (загрузки страницы из кеша). Он позволяет отличить увеличение аудитории по естественным причинам от перезагрузок страницы одними и теми же пользователями. Второе часто говорит о том, что пользователи столкнулись с какой-то технической проблемой.

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

ХостТрекер предоставляет возможность получать оповещения о недоступности Вашего сайта через сервисы мгновенных сообщений как альтернативу СМС. Во-первых, это бесплатно, во-вторых, повышается надежность. Об особенностях использования — под катом.

Как настроить бесплатные оповещения о проблемах с Вашим сайтом - 1

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js