Pull to refresh
0
0
Цыбин Валентин @gephaest

Golang-разработчик

Send message

Просим пользователя сообщать о падении сайта

Reading time2 min
Views1.5K
Не так давно на хабре появилась статья Мониторинг сайта с помощью Google Docs. Суть которого была в том, что в Google Docs создавался документ со скриптом, периодически опрашивающим сайт на предмет доступности и высылающим письмо владельцу в случае падения.

Это интересное решение, но есть некоторые проблемы на местах. У меня кеширование в nginx настроено так, что он может днями выдавать страницы из кеша при упавшем php. Так что опрос главной страницы сайта не предоставляет особенного интереса, в отличии от внутренних страниц.

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

Фиксим клиент Last.FM или как получить бесплатное радио

Reading time3 min
Views25K
image
Для начала краткий ликбез:
Last.fm — интернет-проект музыкальной тематики, основным сервисом которого является сбор информации о музыке, которую слушает пользователь, и её каталогизация в индивидуальных и общих чартах. (с) Wikipedia


Давным-давно, когда трава была зеленее, а заинтересованные индивиды IT-сообщества ещё не знали, что такое Instagram — проект Last.FM был в целом бесплатным и давал возможность слушать «радио», составленное из композиций любимых и похожих на них исполнителей без каких-либо ограничений. Затем коммерческая составляющая начала брать свое, бесплатное радио оставили только для некоторых стран, что заставило жителей стран СНГ заниматься поиском прокси либо платить 3$ в месяц за возможность использования сервиса.

Заморачиваться с прокси, понятное дело, никому не хотелось, и пользователи начали искать способы слушать радио бесплатно. Как оказалось, Last.FM фактически не закрыл доступ к возможности бесплатного прослушивания, однако официальным клиентом последней версии это было невыполнимо. Итог: часть аудитории перешла на альтернативные клиенты, часть прекратила обновлять свой старый клиент, а прочие либо заплатили, либо ушли на другие сервисы.

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

Laravel — PHP Framework для ремесленников

Reading time2 min
Views108K
Laravel PHP Framework
Laravel — это чистая и стильная основа для разработки. Он избавит вас от спагетти кода. Поможет вам создавать прекрасные веб-приложения используя простой и выразительный синтаксис. Разработка должна доставлять удовольствие. Наслаждайтесь глотком свежего воздуха.
Читать дальше →

Улучшаем юзабилити за 5 минут

Reading time4 min
Views7.3K
В этой блогозаписи я намерена поделиться несколькими такими советами по увеличению юзабилити сайта, каждый из которых очень лёгок в реализации. Не все они кросс-браузерны, но всё равно они «глазурь на тортике»: читатель и не заметит, что их нет.

1. Отображайте нажатия кнопок и кнопкоподобных ссылок


Мой излюбленный совет. Когда стиль кнопки задаётся в CSS, или когда для отображения необычной кнопки используется рисунок (либо как фон, либо как элемент <img />), то кнопка не реагирует на нажатие во всех или в некоторых браузерах (зависит от ситуации). Вот какой простой уловкою вы можете дать знать посетителю сайта, что он и впрямь нажал на нечто нажимаемое:

.mybutton:active {
   position: relative;
   top: 1px;
   left: 1px;
}

Этим кодом кнопка смещается на 1 пиксел направо и на 1 пиксел вниз, когда её нажимают. Испробуйте: выглядит весьма убедительно.

Есть другие, не менее быстрые варианты: придать границе свойство inset, указать свойству text-indent значение 1px, изменить направление градиентного фона (что можно сделать быстро, если для этого не придётся прибегнуть ко графическому редактору, то есть если где-то ещё на сайте используется готовый перевёрнутый градиент), или комбинация нескольких из них.

2. Плавные переходы (CSS3 transitions)


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

Интеграция некоторых возможностей социальной игровой сети Scoreloop в приложение на Android

Reading time6 min
Views5.8K
Таблицы рекордов появились в играх много-много лет назад. Сначала они были очень простыми, вспомним, например, игры для приставок с трехсимвольными именами игроков.

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

В наши дни, во времена интернета, социальных сетей и мобильных устройств, таблицы рекордов выросли в целые социальные игровые сети.

Ниже я расскажу про интеграцию в свое Android-приложение одной из таких социальных игровых сетей под названием Scoreloop.
Читать дальше →

Некоторые тонкости установки на сайт кнопок «Поделиться» (share) социальных сетей

Reading time5 min
Views206K
Сегодня, в эпоху социальных медиа, принято давать посетителям сайта возможность поделиться с друзьями. Мы делали промо-страницу к Дню Рождения интернет-магазина Allsoft и нам нужно было установить кнопки «Поделиться» от Facebook, Twitter, Одноклассников, Вконтакте и Мой мир.

С первого взгляда показалось — что может быть тут особенного — поставил готовый html/js код и готово? Но тонкости оказались в деталях: что если для одной соц. сети нужно передавать один текст, а для другой — другой? Как правильно передать картинку и описание во все сети? А если несколько разных вариантов текста и картинок на одной странице? Как почистить уже закешированную информацию о ссылке в соц.сети? На все эти вопросы нам пришлось найти ответы, которые и вы сможете узнать из этой статьи.
Читать дальше →

Как поставить задачу для простого (шаблонного) сайта

Reading time6 min
Views16K
За последнюю неделю-две мне довелось увидеть несколько опросников, которыми мучают своих клиентов всякие разные студии перед созданием простых шаблонных сайтов. Это чрезвычайно меня огорчило и навело на мысль предложить намного более эффективный и клиенто-ориентированный подход к постановке задачи и написания ТЗ для простых сайтов в условиях ограниченности времени и бюджета .

Помнится, кстати, что в комментариях к статьям о проектировании мне задавали такие вопросы вроде «А что делать, когда нет времени и денег на проектирование?». Ответ ниже.
Читать дальше →

Годное ТЗ, очень коротко

Reading time3 min
Views3.7K
Частенько, по долгу службы в том числе, приходится писать всякие ТЗ, а так же вникать и (командовать) создавать документацию по продуктам и решениям. ТЗ — для отношений с клиентом, документация — для разработчиков. Основные принципы, которые должны быть, коротко, под катом.
Читать дальше →

5 новых курсов Udacity

Reading time3 min
Views11K
На хабре про Udacity уже писали: 1, 2, 3

Пояснение для тех, кто не знает что это такое. Университет Udacity был основан после успешного проекта online курсов, организованных Стэнфордским Университетом. После этих курсов, которые успешно прошли несколько тысяч человек, Себастьян Тран уже не смог вернуться к обычной преподавательской деятельности и обучать 100 человек в аудитории Стенфордского университета, когда есть возможность вести курс для десятка тысяч по всему миру.

Университет открылся 20 февраля 2012 года двумя семинедельными курсами:
CS101: Building a Search Engine
CS373: Programming a Robotic Car

16 апреля запустились ещё 4 курса:
CS212: Design of Computer Programs
CS253: Web Application Engineering
CS262: Programming Languages
CS387: Applied Cryptography

На этой неделе как раз идет final exam. И вот сегодня должна появится новость о запуске 5 новых курсов:
CS215: Algorithms
CS221: Logic & Discrete Mathematics
CS258: Software Testing
PH100: Landmarks in Physics
ST101: Introduction to Statistics

Под катом их описание

UPD Курсы начнутся 25 июня 2012 года
Официальное объявление: udacity.blogspot.com/2012/05/udacity-expands-course-offerings-five.html
Читать дальше →

Как правильно писать статьи о программировании для начинающих

Reading time5 min
Views11K
В последнее время на Хабре стало появляться довольно много статей о тех или иных аспектах программирования, которые позиционируются как статьи для «начинающих». Между тем, как раз для начинающих эти статьи часто являются непонятными: иногда — слишком сложными, иногда — не отвечающими на те вопросы, на которые должны, иногда — тяжелыми для восприятия.

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

thn.gs — для того, чтобы не помнить

Reading time4 min
Views12K
Мы долго не могли понять почему каждый норовит сделать свой собственный сервис для управления списками дел и почему мы тоже стали жертвой этого стремления, но работа над нашим GTD-приложением, о котором пойдет речь ниже, помогла нам прийти к гипотезе.
Оглянитесь вокруг, много ли вы знаете туду-сервисов? — Тьма. А пользуетесь каким-нибудь? — Вероятно. Но все ли вас в нем устраивает? Скорей всего — нет.
Наверняка вы знаете уйму недостатков в сервисе, с которым работаете ежедневно, но продолжаете пользоваться им потому, что ничего лучше вы все равно еще не нашли. Если вы — разработчик, настает день когда вы понимаете, что настало время «точить пилу» и вы начинаете делать свой таск-менеджер. Постойте, но почему?

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

Веками для запоминания чего либо использовалась бумага. Она хорошо выполняет свою роль по двум причинам: во-первых, она, как известно, все стерпит, а во вторых, она ничего не навязывает. Иными словами, бумага сочетает в себе функциональность и простоту. Глубоко проникнувшись этой идеей, мы сделали свой продукт.
Что мы понимаем под этим? Эйнштейн говорил «Сделай настолько просто, насколько это возможно, но не проще.» Мы, следуя этому принципу реализовали все фундаментальные инструменты управления делами, но в тоже время мы сделали их максимально обобщенными и ненавязчивыми. Именно поэтому, если вам нужен некоторый инструмент, то вы сможете пользоваться им применительно к любой предметной области, а если он вам не нужен, то вы даже можете не заметить его существования. Т.е. мы не навязываем методологию, мы просто даем набор идеально заточенных инструментов.

Дальше меньше общих слов и больше технологических подробностей. Картинка клибельна.
Smthngs
Читать дальше →

Реализация 960gs в Drupal (NineSixty theme)

Reading time2 min
Views1.8K

О NineSixty


NineSixty это тема для Drupal на основе 960gs, предназначенная для использования в качестве базовой темы.
image

Преимущества NS:


  • контент-ориентированная разметка с использованием классов «push» и «pull»
  • динамическая ширина блоков в зависимости от контента
  • инструменты для отладки и визуализация сетки
  • поддержка языков с направлением письма справа налево

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

Об организации рабочего стола, работ и документов

Reading time7 min
Views55K
Давайте обсудим вопрос организации иконок на рабочем столе. Хочется сказать: «покажи мне свой десктоп, и я скажу, как ты работаешь». Вынесу вверх главную мысль: Рабочий стол предлагается использовать для организации текущей работы над документами. Что на столе — то в сознании, в фокусе. Поэтому важно иметь структуру этого фокуса и важно вовремя убирать из фокуса лишнее.
Часто можно наблюдать следующие стратегии поведения при использовании рабочего стола:
  • заполнить стол значками до предела, периодически «удалять неиспользуемые»
  • оставить на столе корзину и красивую картинку, удалять со стола всё, регулярно чистить корзину
  • расположить на столе часто используемые ярлыки и некоторые рабочие документы
UPD: Пока в комментах побеждает вариант неиспользуемого стола.
Всё это — варианты нормы, единственный недостаток — рабочий стол не помогает в организации работ. Это примерно как обвинить кота, что он не приносит тапочки. Но ведь мог бы и приносить!!! Достаточно правильно расчертить дорожки.
How to&nbsp;Design and Create a&nbsp;Clean, Organized Desktop
Сначала я подумал, что я гений и заработаю миллионы на этой идее, но потом решил вбить в поисковик «Organizing desktop wallpaper». Нафантазированная яхта и девушки-поклонницы исчезли, но стало ясно, что, во-первых, желание вполне адекватное, а во-вторых уже есть готовые варианты, чтобы взять и использовать. Т.е. хотя бы тапочки. Картинка выше взята из статьи How to Design and Create a Clean, Organized Desktop.
Ниже будет список найденных статей и вариантов, а также я расскажу о своей идее и тех задачах, которые она должна решать:
Читать дальше →

Вся правда о Chrome (и не только) Web Inspector. Часть 1

Reading time9 min
Views154K
Я постараюсь сделать самое полное и подробное описание возможностей Web Inspector, на русском языке.
В первой серии мы залезем в настройки, посмотрим, что умеет консоль и поиграемся с панелью «Elements».

Так как Web-Inspector не переведен на Русский, я буду сохранять оригинальные названия.


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

Kickstrap — форк Twitter Bootstrap с темами и бонусами

Reading time1 min
Views20K
image
Kickstrap это то, что будет если соединить Twitter Bootstrap, HTML5 Boilerplate, значки от IcoMoon и Font Awesome, добавить проверенные jQuery плагины Chosen и jGrowl, включить поддержку разных цветовых схем и тем оформления Bootswatch, дополнительную CSS сетку и вменяемую поддержку ранних версий IE.
Читать дальше →

Несколько полезных сервисов. Продолжение

Reading time2 min
Views29K
Продолжая тему предыдущего поста Несколько полезных сервисов, хочу поделиться новыми ссылками.

Экспорт контента
  • rss-script.ru – сервис для вставки содержимого RSS-ленты на сайт. Для его работы необходимо лишь сгенерировать скрипт на сайте и вставить его себе. Есть несколько настроек, позволяющих изменить вид содержимого
  • twitterfeed.com позволяет постить содержимое RSS-ленты в Twitter, Facebook и LinkedIn. Достаточно простой сервис, нет дополнительных настроек, но есть счётчик кликов
  • ifttt.com – многофункциональный сервис, позволяющий связывать различные аккаунты (описание)

Песочницы
К уже названным ранее cssdesk.com и jsfiddle.net можно добавить dabblet.com, jsbin.com (добавил Jekyll). Также есть песочница для SQL – www.sqlfiddle.com (добавил volinrok).

Шаринг фрагментами текста/кода
Для того, чтобы поделиться фрагментом текста или кода, можно использовать всем известный pastebin.com, а можно воспользоваться его альтернативами:
Мне больше всех нравится Gist на GitHub. Во-первых, все текстовые фрагменты привязываются к вашему аккаунту; во-вторых, можно создавать несколько связанных Gist'ов; и в третьих, есть возможность комментирования.
Читать дальше →

Руководство по оформлению HTML/CSS кода от Google

Reading time12 min
Views361K

От переводчика


С удовольствием ознакомился с этими рекомендациями и теперь предлагаю вам перевод.

Введение


Это руководство описывает правила для оформления и форматирования HTML и CSS кода. Его цель — повысить качество кода и облегчить совместную работу и поддержку инфраструктуры.

Это относится к рабочим версиям файлов использующих HTML, CSS и GSS

Разрешается использовать любые инструменты для минификации компиляции или обфускации кода, при условии, что общее качество кода будет сохранено.
Читать дальше →

Самоорганизация с Evernote

Reading time2 min
Views38K


Наш пользователь Гани Султанов (aka @Moriarty Lecter) написал интересную мини-книгу “Как накормить слона, или первые шаги к самореализации с Evernote”. Она посвящена системе управления делами и сбора информации с помощью нашего сервиса.

Загрузить книгу в PDF >>

Книга будет особенно интересна тем, кто уже давно присматривается к методике повышения личной эффективности GTD (Getting Things Done), но все никак не возьмется реализовать ее на практике. Впрочем, если вы никогда и не слышали о GTD, но хотите эффективно использовать Evernote, чтобы быть продуктивнее в работе, учебе, бизнесе и частной жизни, вам эта книга тоже может пригодиться и стать отправной точкой для работы с методикой.
Читать дальше →

Программирование, как мы его знаем, подходит к концу

Reading time4 min
Views4.2K
Все прогрессивное человечество с замиранием сердца следит за процессом Oracle против Google. Уже очень скоро присяжные вынесут вердикт по делу. Под катом перевод статьи Andrew Binstock, главного редактора сайта www.drdobbs.com о том, что будет, если выиграет Oracle.
Читать дальше →

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity