Pull to refresh
64
0
Михаил Баранов @404

Мастер-дизастер

Send message

Микросервисный фронтенд — современный подход к разделению фронта

Reading time 6 min
Views 38K
too FAT SPA


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

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

Сегодня я расскажу вам, как мы делали микросервисный фронт в нашем SaaS-решении и с какими проблемами столкнулись.
Подробнее под катом
Total votes 26: ↑26 and ↓0 +26
Comments 68

Курс от Яндекса о том, что должен знать каждый разработчик, который хочет делать большие системы. Модное слово DevOps и другое

Reading time 5 min
Views 107K
Всю рутину, которую можно отдать роботам, нужно отдать роботам. Большие системы без этого невозможны. В разработке и тестировании очень много похожих задач, которые не требуют высокой квалификации, но отнимают много времени. Человек, который умеет обеспечить разработку, тестирование и деплой – это редкий специалист и его на количество страничек никак не масштабируешь.

В Яндексе тестировщику невозможно без автоматизации. Мы даже развиваем экспериментального робота, который способен брать на себя функциональное тестирование. В какой-то момент мы поняли, что не так много людей осознают, сколько сейчас есть возможностей работать не 12 часов, а головой. Собрав весь свой опыт в тестировании и деплое, мы открыли в питерском офисе Яндекса Школу автоматизации процессов разработки. У нас получилась школа, где каждый, кто пишет код, может получить базовый набор знаний о том, как собрать, запустить и поддерживать сервис в продакшене так, чтобы это стоило недорого.



Курс открывает моя лекция о том, зачем вообще автоматизировать процесс разработки. Из нее вы получите представление о то, что будут рассказывать мои коллеги.

Сейчас занятия закончились, и мы, как и обещали, выкладываем записи лекций, которые перемежаются с мастер-классами, для всех желающих. Понятно, что наш опыт и знания – не 42, но мы надеемся, что они принесут вам пользу.
Читать дальше →
Total votes 70: ↑67 and ↓3 +64
Comments 18

Расширенный «Hello! World» на микрофреймворке Flask

Reading time 5 min
Views 7.9K
image

Добрый день, хабраюзер.

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

Мы используем Python, в частности микрофреймворк Flask.
Читать дальше →
Total votes 40: ↑37 and ↓3 +34
Comments 7

Доставка из США за 5-10 дней по цене USPS

Reading time 4 min
Views 161K
До наступления 2013 года оставалось 30 дней, когда я решил подарить жене ipad mini. Официальный store.apple.com не справлялся со спросом на mini, о чем красноречиво свидетельствовала надпись est shipping in 2 weeks.

Отказываться от mini в качестве подарка не было никакого желания, поэтому был штурмом взят ebay, цены на котором заметно подросли, и 16gb+cellurar модель ушла за $500.

До наступления 2013 года оставалось 15 дней, у меня был выигранный лот и туманная перспектива получить его в Спб до 31 числа…
И я ее получил, за 10 дней, тариф за отправку составил $48.5.
Читать дальше...
Total votes 150: ↑138 and ↓12 +126
Comments 160

Планируете запуск кампании в Директе? Лучше день потерять, потом за пять минут долететь!

Reading time 5 min
Views 6.4K
Несколько простых правил по работе с Яндекс.Директ, чтобы не разориться в первый месяц рекламной кампании по самые помидоры и получить максимальный эффект при меньших затратах.

7 раз отмерь


Работу по изучению поведения людей на сайте и их взаимодействия с рекламой лучше начать с подготовки того, как вы будете оценивать качество аудитории:
  1. Установите Яндекс.Метрику. Это позволит определить эффективность каждого объявления и конкретной ключевой фразы для вашего конкретного сайта.
  2. Определите, как действия вы ожидаете от посетителей своего сайта при переходе по рекламе.
    Например:
    совершить звонок (подключаем услугу "Целевой звонок", которая учитывает число уникальных/неуникальных, неотвеченных звонков, их длительность и все входящие номера)
    совершить заказ через корзину ("параметры интернет-магазинов", когда учитывается источник посетителя, состав и сумма заказа)
    отправить письмо через обратную форму связи (задаем целью нажатие кнопки отправки сообщения или посещение страницы с сообщением «спасибо, ваше письмо получено»)
    скачать файл (раздел в метрике «загрузки файлов»)

То есть основное правило: нужно измерять то, что покажет вам положительную обратную связь от посетителя, пришедшего по рекламе. Только не стоит заморачиваться на абсолютных величинах. Нужно измерять динамику, т.е. то, ухудшается или улучшается в целом ситуация.
Читать дальше →
Total votes 40: ↑36 and ↓4 +32
Comments 15

Как Сделать Свой Собственный Подавитель Мобильных Телефонов

Reading time 3 min
Views 13K
Я работаю в небольшой компании, которая занимается продвижение сайтов в Интернете (SEO). Совсем недавно мы начали практиковать новый метод привлечения работников. Мы устраиваем небольшие презентации — семинары (бесплатные) где рассказываем про различные аспекты поисковой оптимизации и таким образом привлекаем к сотрудничество молодых оптимизаторов. В среднем, раз в неделю у нас в офисе собирается около 20-30 человек. В начале, все было просто отлично, но затем, мы неожиданно столкнулись с одной проблемой.
Читать дальше →
Total votes 98: ↑48 and ↓50 -2
Comments 50

Проблема с режимом сна в Mac OS Lion

Reading time 3 min
Views 88K
Mac OS Lion

После установки обновления огромное количество пользователей жалуются на некорректную реакцию компьютера на выход из режима сна, причём независимо от типа устройства, будь то iMac, Macbook или Mac Mini. Проявляется это таким образом: после погружения компьютера в сон, его уже невозможно разбудить традиционными способами: открытием крышки ноутбука, нажатием кнопки включения, etc, приходится делать hard reset. Главная прелесть заключается в том, что существует множество модификаций этого бага: у кого-то он проявляется только если вводить компьютер в режим сна путём закрытия крышки, у кого-то только путём нажатия «Режим сна» в меню; у кого-то он проявляется только при подключённом MagSafe, а у кого-то только при работе от аккумулятора. У меня же он проявляется крайне экзотическим образом: система просыпается, но ведёт себя так, как будто её перезапускали, — все приложения загружаются заново.

Что интересно, единого лекарства против этого нету. На форуме поддержки предлагают огромное количество решений проблемы, но ни один из них не помогает всем и наверняка.
Этот пост — сборка всех возможных решений отсюда: https://discussions.apple.com/thread/3190738.

Читать дальше →
Total votes 48: ↑33 and ↓15 +18
Comments 115

Кастомные социальные кнопки

Reading time 5 min
Views 74K
Недавно участвовал в разработке одного проекта — фото конкурса. По задумке, рейтинг фото альбомов должен формироваться из суммы всех публикаций в социальных сетях: Facebook, Вконтакте, Twitter. Т.е. общий рейтинг фотоальбома расчитывается:
Рейтинг фотоальбома = кол-во «Share» в Facebook + кол-во «Сохранить» в Вконтакте + кол-во «Retweet» в Twitter

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

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

Итак:
  • количество лайков будем получать от REST сервисов каждой социалки
  • кнопки рисуем свои и обрабатываем событие click

Читать дальше →
Total votes 99: ↑94 and ↓5 +89
Comments 58

Тестирование в разных версиях IE

Reading time 1 min
Views 941
ieДо сих пор сталкиваюсь с вопросами людей, как протестировать сайт в IE разных версий.
И как чтобы этот процесс был быстрым и удобным.
Как ни странно, Microsoft подумала про это. Идем по ссылке и качаем сначала последнюю версию Virtual PC а затем необходимые образы с версиями IE.
Ставим Virtual PC, распаковываем образы, подключаем (только под 8-й ie отведите не меньше 256 памяти) и вуа ля.
Простой и удобный способ готов к применению.
А главное вы видете реальный результат работы нужного вам браузера в окружении «чистой» ОС
Total votes 19: ↑14 and ↓5 +9
Comments 32

Мой способ не забывать о событиях и делах

Reading time 3 min
Views 1.7K
Описывать буду не столько сам способ, потому что в нём нет ничего нового, сколько реализацию, причём завязанную на UNIX-подобные ОС.

Скриншот

А на этом скриншоте информации меньше, но в более крупном разрешении.
Что это и зачем?
Total votes 30: ↑23 and ↓7 +16
Comments 41

jQuery slider (гармошка)

Reading time 4 min
Views 2.5K
Первый опубликованный мной пост на хабре :)
Наверное многие видели симпатичные выкидушки-слайдеры(по клику выезжает текст или еще что-то). Попытаюсь рассказать как это можно сделать ну и предложу места применения.
Читать дальше →
Total votes 21: ↑10 and ↓11 -1
Comments 16

Имена системных цветов в CSS

Reading time 2 min
Views 1.6K
C несказанной радостью обнаружил, что в стандарте CSS2 есть поддержка системных цветов. Думаю таблица ниже будет интересна всем кто когда-нибудь пытался откатить значения CSS до дефолтных. Вся эта радость подходит для всех браузеров начиная с IE 5 и Netscape 5.

Название цвета Описание
ActiveBorder Active window border.
ActiveCaption Active window caption.
AppWorkspace Background color of multiple document interface.
Background Desktop background.
ButtonFace Face color for three-dimensional display elements.
ButtonHighlight Dark shadow for three-dimensional display elements (for edges facing away from the light source).
ButtonShadow Shadow color for three-dimensional display elements.
ButtonText Text on push buttons.
CaptionText Text in caption, size box, and scrollbar arrow box.
GrayText Grayed (disabled) text. This color is set to #000 if the current display driver does not support a solid gray color.
Highlight Item(s) selected in a control.
HighlightText Text of item(s) selected in a control.
InactiveBorder Inactive window border.
InactiveCaption Inactive window caption.
InactiveCaptionText Color of text in an inactive caption.
InfoBackground Background color for tooltip controls.
InfoText Text color for tooltip controls.
Menu Menu background.
MenuText Text in menus.
Scrollbar Scroll bar gray area.
ThreeDDarkShadow Dark shadow for three-dimensional display elements.
ThreeDFace Face color for three-dimensional display elements.
ThreeDHighlight Highlight color for three-dimensional display elements.
ThreeDLightShadow Light color for three-dimensional display elements (for edges facing the light source).
ThreeDShadow Dark shadow for three-dimensional display elements.
Window Window background.
WindowFrame Window frame.
WindowText Text in windows.

Пример: тест системных цветов
Total votes 50: ↑43 and ↓7 +36
Comments 18

Обзор Todo сервисов

Reading time 4 min
Views 8.3K
На днях искал туду сервис для идей и проектов (идей много и постоянно из головы все вылетает) и для общения с заказчиками (да, я все ещё использую сервисы 20 века ICQ, Email :) ).
Ставились следующие приоритеты:
  • Удобство навигации (множитель 1,0)
  • Удобство управления туду-списками (множитель 1,0)
  • Collaboration (множитель 1,0)
  • Дизайн интерфейса (множитель 0,8)
  • Качественная справочная система (множитель 0,8)
  • Русский интерфейс по большему счету для удобства заказчика (множитель 0,8)
  • Добавление задачи по Email (множитель 0,5)
  • Интеграция с GMail/Google Calendar (множитель 0,5)
  • Наличие API (множитель 0,5)
  • Оповещение по Email (множитель 0,5)
  • Оповещение по IM (ICQ, Jabber, Skype, MSN, Google Talk) (множитель 0,5)
  • Интерфейс для сотовых и КПК (множитель 0,3)
  • Чтобы это меня впечатлило — эмоции от проекта (множитель 0,1)

Детальный обзор под хабракатом
Total votes 42: ↑39 and ↓3 +36
Comments 24

Краткий обзор лучших средств для построения графиков и диаграмм.

Reading time 1 min
Views 3.6K
Из всех наведенных примеров мне больше всего понравился Open Flash Chart. Который я заслужено поставил на первое место. Все остальные, мне показались тоже не плохими но для работы я выбрал именно Open Flash Chart.
Open Flash Chart – FLASH компонент для построения диаграмм. Он имеет много настроек и легко взаемодействует с PHP, Perl, Python, Java, Ruby on Rails, and .Net. Также может читать данные с .txt файлов.

смотреть другие скрипты для построения графиков и диаграмм
Total votes 21: ↑21 and ↓0 +21
Comments 14

Прототипирование приложений для Windows Phone в SketchFlow

Reading time 6 min
Views 4.9K
Привет, %username%, %wpdeveloper%, %designer% и все, кто ещё читает этот топик!

До окончания приёма заявок на Imagine Cup: Windows Phone Challenge осталось чуть больше 2х недель, самое время ею заняться! Но к заявке должен быть приложен ещё и прототип приложения, выполненный в SketchFlow. О том, как его создать, сегодня и поговорим.

Осторожно, много картинок под катом!

Ready to Get Started?


Читать дальше →
Total votes 41: ↑33 and ↓8 +25
Comments 4

Разработка привлекательных реалистичных пользовательских интерфейсов

Reading time 4 min
Views 15K
Cекрет разработки привлекательных интерфейсов заключается в реализме. Ваша задача — придать плоским элементам объём, используя свойства реальных объектов, вроде неровностей и шероховатостей, бликов и теней, различных текстур поверхностей. В идеале они должны выглядеть как предметы на вашем столе. Создавая классный интерфейс, в первую очередь нужно думать не «как», а «почему».
Читать дальше →
Total votes 212: ↑205 and ↓7 +198
Comments 49

Internet Explorer: 15 лет истории

Reading time 2 min
Views 10K
Microsoft Internet Explorer
Путешествие в историю Microsoft Internet Explorer начинается 16 августа 1995, с выходом его первой версии. Internet Explorer прошёл через очень трудные этапы в своем развитии.

Он соперничает с такими браузерами, как Firefox Mozilla, Opera и Google Chrome. В Европе Firefox является наиболее сильным конкурентом. Но, как бы то ни было, IE удобно расположился на вершине и составляет большую долю в использовании.

Итак, небольшой экскурс
Total votes 165: ↑95 and ↓70 +25
Comments 111

Перепрошивка USB модема ZTE MF627, залоченного под МТС, для свободной работы с SIM-картами сторонних операторов + учим его звонить и принимать звонки & разлочка с помощью Unlock кода модемов Huawei

Reading time 11 min
Views 309K
В продолжение темы 3G-модем в Ubuntu.
Пошаговое описание перепрошивки USB модема ZTE MF627 залоченного под МТС, для свободной работы с SIM-картами сторонних операторов с его последующей настройкой и проверкой работы на осях Windows XP, Windows7 и Ubuntu 9.10 со скриншотами, ссылками на альтернативное (бесплатное) ПО и т.д. и т.п.
Дополнение №1: теперь, благодаря SerVik и его посту, наш модем может звонить и принимать звонки.
Дополнение №2: данная методика так же применима к модему ZTE MF626.
Дополнение №3: Для модемов Huawei от Мегафона, требующих Unlock код, вариант с заменой прошивки не подойдет. Здесь вопрос решается проще — вводом NCK кода по IMEI девайса. Желающие получить Unlock код для своего Huawei могут писать мне в личку или в комментах к этому посту. Валидность калькулятора многократно проверена мной на модемах Huawei E1550 от Мегафона. Услуга предоставляется "… бездвоздмездно, то есть даром...". От вас требуется только IMEI девайса.
Дополнение №4: согласно комментарию за 27.06.2010 от хаброюзера Vyazovoi, в салонах МТС появились модемы ZTE MF627, стоимостью 490 руб., с новым типом прошивки (BD_MTSP673A4V1.0.0B02), запрашивающим Unlock код при установке SIM-карты стороннего оператора. Нижеописанная методика перепрошивки к подобным девайсам не применялась и как следствие, возможный эффект от нее я предсказать не могу.
Для тех кто еще не приобрел модем, я рекомендую остановится на Huawei E1550/1750 от Мегафона или МТС. С их разлочкой пока проблем не наблюдается (см. Дополнение №3).


image
Итак, USB модем ZTE MF627 был приобретен мной 15.01.2010 г. в фирменном салоне-магазине МТС за 890 руб. Цель приобретения — доступ к сети интернет в частых и длительных командировках по России. Описание девайса на сайте МТС.
Перед покупкой было прочитано много форумов по теме, ибо я заранее обладал информацией о том, что операторы большой тройки вносят ограничение в прошивку продаваемых под своим брендом девайсов, не дающее использовать их с SIM-картами других операторов. В итоге выбор пал на ZTE MF626, который не удалось найти в продаже (г. Москва) и я, махнув рукой, рискнул взять новый на тот момент ZTE MF627, благо МТС отдавало его по новогодней цене в 890 руб.
В комплекте находился сам модем, гарантия на него и SIM-карта с доками. Все. А более нам ничего и не нужно.
Читать дальше →
Total votes 238: ↑231 and ↓7 +224
Comments 122

Как покупать электронику на Amazon

Reading time 3 min
Views 128K
Amazon logo
Наверняка многие из вас попадали в ситуацию, когда в американском интернет-магазине есть интересующая вас вещичка по заманчивой цене, но доставку магазин осуществляет только в пределах США. Например, в крупнейшем интернет-магазине Amazon жители из стран СНГ могут заказывать лишь книги и фильмы, и то не все. Конечно же, можно компенсировать данный недостаток с помощью ebay, но где еще у вас может быть шанс купить iPod Touch 32 GB 3rd Gen за $269.99, а Nokia N900 за $559.99? А может, грешным делом заказать Nexus One? Падение доллара и ценовая политика производителей сделала покупки в США достаточно заманчивым делом.
Все самое интересное под катом
Total votes 164: ↑152 and ↓12 +140
Comments 367

Что такое качество в веб-дизайне: примеры и рекомендации. Часть 1

Reading time 5 min
Views 39K
Несколько выдающихся примеров и рекомендаций по созданию качественного дизайна веб-страницы или блога

quality

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

Чтобы объяснить, как я понимаю качество в дизайне веб-сайтов, я собрал несколько рекомендаций и примеров.
Читать дальше →
Total votes 164: ↑152 and ↓12 +140
Comments 64

Information

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