Search
Write a publication
Pull to refresh
11
0
Send message

Новый взгляд на поиск по сайту

Reading time5 min
Views12K

Представляем проект indexisto.com — поиск для сайтов и мобильных приложений.
Проект в альфе, просьба отнестись с пониманием (нажимать аккуратно). Тестовая выдача сейчас по английскому контенту музыкальной тематики. Нам также очень нужны early adopter'ы, если поиск заинтересовал пишите ЛС.



Хроники

История началась пару лет назад, когда я переехал с Windows на Убунту, а потом продолжилась с переездом на Mac. Подобный переезд может дать начало десятку историй, однако у меня случилась одна — я вдруг стал пользоваться поиском по операционной системе как основным инструментом навигации.

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

Я так же стал замечать множество других сценариев, когда поиск здорово экономит время. Поиск по «настройкам» в Chrome, поиск по контактам в Skype, переход на человека через поиск в Facebook, подсказка URL в адресной строке Firefox с учетом частоты заходов на сайты…

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

Как использовать Fullscreen API

Reading time3 min
Views91K

В комплекте с HTML5 появилось большое количество нового API. Одним из них является Fullscreen API, которое предоставляет нативный способ для браузера, позволяющий отобразить веб-страницу в полноэкранном режиме для пользователя.
А еще хорошо то, что Fullscreen API является очень простым в использовании.
Читать дальше →

Работа ищет разработчиков, а не разработчики работу

Reading time2 min
Views58K
В статье Как я искал работу voff написал замечательную фразу:

Программисты сейчас находятся на особом положении, мы можем выбирать.

Это правда. Программистов ищут везде, от Москвы и Киева до Берлина и Сан-Франциско. Другой вопрос – как программисту эту возможность использовать? Пройти 17 собеседований, “по 3-4 в день”, как сделал автор статьи – на такой экстрим не все согласны. Да и подходит это только тем, кто сейчас без работы или уже обьявил о своем уходе руководству. А хорошие разработчики без работы сидят редко.

Как можно сделать лучше?

Тренды, возведенные в культ

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

POP3 и IMAP: история почтовых протоколов и сбор писем по IMAP в Яндекс.Почте

Reading time5 min
Views136K
(посвящается Марку Криспину 19.07.1956 — 28.12.2012)

Некоторое время назад в Яндекс.Почте появились сборщики писем по IMAP. В этом посте мы немного расскажем о двух важных почтовых протоколах — POP3 и IMAP — и о том, как они появились и используются в современных почтовых системах. Не всегда это так просто и очевидно, как ожидаешь от технологий, развивающихся уже почти 30 лет.

Начнём наш экскурс в историю протоколов, через которые вы каждый день получаете свою сотню писем.


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

Быстрое шифрование ваших сообщений

Reading time1 min
Views3.9K
Мы часто передаём по сети разные сообщения — в форумах, социальных сетях, по аське, по почте и т.д.
И зачастую хочется скрыть содержимое от посторонних глаз (да-да, в почтовых сервисах и в социальных сетях могут читать ваши сообщения, если оно попадётся в результатах внутреннего поиска по сообщениям).
Так вот. Ставить какие-то шифрующие программы для этого утомительно, затруднительно, а по большей части — просто лень.
И вот тут появляется на арене очень полезный букмарклет Encipher.it
Представляет он из себя обычный Javascript. Ставится он элементарно просто — сохраняете его в «Избранном», выносите на главную панель браузера и пользуетесь. Либо просто через drag-and-drop перемещаете на панель закладок.
image

Например, для того, чтобы зашифровать какое-то сообщение, то просто выделите его, нажмите на иконку «Encipher.it», который появился на панели браузера, введите пароль в появившемся окошке и ваше сообщение тут же зашифруется. Декодируется всё точно так же — выделяем зашифрованный текст, жмём на букмарклет, вводим пароль и сообщение расшифровывается.




Остаётся только договориться с тем, с кем собираетесь переписываться, об общем пароле. Естественно, что передачи пароля нужно использовать другой канал связи отличный от того, где собираетесь переписываться.

Шифрование/дешифрование происходит полностью на стороне клиента.

Ежедневная работа с Git

Reading time40 min
Views895K
Я совсем не долго изучаю и использую git практически везде, где только можно. Однако, за это время я успел многому научиться и хочу поделиться своим опытом с сообществом.

Я постараюсь донести основные идеи, показать как эта VCS помогает разрабатывать проект. Надеюсь, что после прочтения вы сможете ответить на вопросы:
  • можно ли git «подстроить» под тот процесс разработки, который мне нужен?
  • будет ли менеджер и заказчик удовлетворён этим процессом?
  • будет ли легко работать разработчикам?
  • смогут ли новички быстро включиться в процесс?
  • можно ли процесс относительно легко и быстро изменить?


Конечно, я попытаюсь рассказать обо всём по-порядку, начиная с основ. Поэтому, эта статья будет крайне полезна тем, кто только начинает или хочет разобраться с git. Более опытные читатели, возможно, найдут для себя что-то новое, укажут на ошибки или поделятся советом.

Далее очень много букв случайным образом превратились в пост.

Обзор средств синхронизации баз данных MySQL

Reading time6 min
Views17K
image

При разработке современных веб-приложений сложно недооценить пользу от использования систем контроля версий. Применительно к файлам разрабатываемого продукта, мы способны отследить любые этапы производства в любой момент, начиная с первой ревизии. Инструменты, помогающие нам в этом, на сегодняшний день популяризированы, считаются хорошим тоном при разработке, а во многих случаях успешное производство без их применения невозможно в принципе. А какие возможности мы имеем, когда возникает необходимость проследить изменения не в файлах, а в базах данных проекта? Под катом я поделюсь информацией о существующих средствах, с которыми мне пришлось ознакомиться.
Читать дальше →

Что такое алгоритмы?

Reading time1 min
Views44K
Я учился в Канаде (в моих старых постах на Хабре можно проследить за тем процессом) благодаря стипендии правительства Казахстана под названием «Болашак» (каз. «будущее»). Ребята с сайта essay.kz совместно с администрацией этой стипендии регулярно приглашают выпускников «Болашака» и снимают мини-лекции. Недавно позвали и меня, решил рассказать об алгоритмах.

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

  • Что такое информатика и computer science?
  • Что такое алгоритм?
  • Лучшие решения обычно не очевидны
  • Машина Тьюринга и фундаментальные ограничения копьютеров
  • Что такое простые и сложные задачи?
  • Задача Коммивояжера
  • Почему языки программирования не похожи на человеческие языки?


Видео разбито на две части (один, два). Чтобы пропустить введение – начинайте смотреть с 2:56.

Часть 1:


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

Phalcon 1.1 beta

Reading time4 min
Views12K

После успешного релиза PHP-фреймворка Phalcon 1.0, команда разработчиков продолжает работать над его развитием. В этой статья я хочу осветить наиболее интересные фичи, представленные в версии 1.1.0 BETA



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

Как ускорить загрузку своего сайта при помощи compress.php, который объединит и сожмёт JS + CSS в Gzip

Reading time3 min
Views62K
Ускоряем сайт при помощи GoogleПодробные инструкции, которые даются на code.google позволят вам:

  • Сжать все многочисленные скрипты JS и стили CSS
  • Соединить все полученные файлы в один JS и в один CSS
  • Сжать полученные два файла в формат GZIP, который понимают почти все браузеры и умеют распаковывать на лету
  • Прописать такой .htaccess, который заставляет браузеры кэшировать данные два файла

Всё это будет происходить при запуске единственного скрипта compress.php

Для примера, результат сжатия скриптов моего сайта:
  • JS: сжато в gzip 26 698 B, сжато без gzip 95 796 B, было 120 147 B
  • CSS: сжато в gzip 46 049 B, сжато без gzip 160 001 B, было 281 870 B

Получается, что экономия трафика составляет 329 270 B. Но основной выигрыш для скорости загрузки в том, что теперь загружается не 14 файлов, а всего 2 (а это намного быстрее, так как браузер не тратит время на запросы). Причём делается это один раз, а не динамически силами самого сервера (тем более, что не все сервера поддерживают подобное конфигурирование сжатия для экономии ресурсов процессора).

В итоге, получится:
<link rel="stylesheet" type="text/css" href="min/styles_1349888114.cssgz" />
<script src="min/all_1349888114.jsgz" /></script>

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

Захабренный договор на разработку сайта, дизайна, софта. Версия 1.1

Reading time18 min
Views246K
На сайте немало постов о том, какие условия нужно включать в договор на создание сайтов и программ (краткий список ниже), но нет договора в формате, который можно взять за основу для составления своего договора. Мы изучили условия из постов (спасибо авторам), подумали над ними, переработали и учли в предлагаемой на ваш суд форме договора. Так что договор пока можно считать частично «захабренным».


Договор авторского заказа

CDN для статики и измерения: как Яндекс.Почта стала быстрее в регионах

Reading time5 min
Views26K
Скорость работы веб-интерфейса — очень важная вещь, и мы в Яндексе особенно хорошо понимаем это. От ощущения лёгкости и того, с какой скоростью у пользователя загрузятся важные ему элементы, может зависеть и то, каким сервисом он в итоге будет пользоваться.

Мы в Яндекс.Почте много работаем над ускорением клиентской части. Только на Хабре мы рассказывали о том, как оптимизируем верстку, отказались от XSL и перешли на новый шаблонизатор.

Но добиться увеличения скорости работы можно не только за счет оптимизации фронтенда. Сегодня мы хотим рассказать о переезде статических файлов Яндекс.Почты на специальный CDN Яндекса для статики и о том, как это ускорило её работу, особенно в регионах.



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

Чеклист вопросов к проекту: старт, реализация, финал — и 10 советов «в полёт»

Reading time4 min
Views51K

Проверьте свой проект: вы летите или думаете, что летите?

Ниже вопросы, которые стоит задавать себе на старте проекта и время от времени на его протяжении.

Контрольные вопросы на старте проекта:


  1. Что конкретно нужно сделать на текущем этапе? В целом? Есть ли чётко определённые цели каждого этапа? Как вы определите, что цели достигнуты? Соответствует ли текущий статус заявленным планам и целям или их необходимо корректировать?
  2. Реалистичны ли эти цели?
  3. Что случится, если цели не будут достигнуты в срок? Каков план действий?
  4. Насколько этот проект значим? Например, зависит ли от него место вашей компании на рынке?
  5. Какую выгоду вам, обществу и инвесторам принесёт проект?
  6. Достаточно ли хорошо спланирован проект? Все ли в вашей команде понимают пункты плана одинаково?
  7. Нужны ли внешние эксперты, например, юристы?
  8. Есть ли у команды опыт работы вместе? Кто будет координировать команду? Важно ли для проекта работать именно вместе — или возможен труд одиночек? Отвечает ли каждый член команды за работу всех остальных?
  9. Можно ли сократить размер команды? Если нет, то почему? Если да, то почему это не сделано?
  10. Как вы будете компенсировать форс-мажоры с персоналом, например, что случится, если ваш ведущий разработчик сломает руку?
Читать дальше →

База инвесторов: наша версия

Reading time1 min
Views10K
Т.к. мы много общаемся со стартапами — мы заметили, что есть одна сложность. А именно — с чего начинать поиски инвестора для стартапа. В интернете есть множество «кладбищ инвесторов», где опубликованы тупо списки всего, что только можно. Рядом с инвестором, который вкладывает в ИТ-проекты — инвестор в сельское хозяйство.

Поэтому мы сделали небольшой сервис для облегчения поисков инвестиций для ИТ-стартапов.

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

Разработка встраиваемого JavaScript приложения

Reading time4 min
Views13K

Вместо вступления


Я хочу рассказать вам о некоторых трудностях, с которыми мы столкнулись при разработке встраиваемого JavaScript приложения, виджета комментариев "Комментатр".
В этой статье я опишу некоторые проблемы и тонкости разработки подобных приложений, а также предложу варианты их решения.
В качестве backend–решения мы используем приложение на Ruby on Rails, поэтому некоторые фрагменты этой статьи будут специфичны для Rails–окружения.

Комментатр состоит из двух проектов: API и виджета, который устанавливается на сайт клиента. Речь пойдет об их взаимодействии между собой и виджета с сайтом клиента. В основном общение виджета и API происходит посредством JSONP, который, как известно, поддерживает только GET–запросы. В связи с этим возникает первая сложность.

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

RPG для обучения детей программированию на Java

Reading time2 min
Views126K

Java считается мало подходящим для того, чтобы стать первым языком программирования, в отличие от того же Pascal или Python, тем более для детей. Однако, это обстоятельство не остановило специалистов университета Калифорния (Сан-Диего) от любопытного эксперимента, который, по их словам, показал вполне успешные результаты — ими была разработана игра CodeSpell для обучения детей Java в ходе игрового процесса.

Игра представляет собой нечто вроде RPG от первого лица с довольно скромной на сегодня графикой и весьма типичным сюжетом. Игрок — волшебник в стране, населённой гномами, которые по некоторой причине утратили свои магические способности. Задача игрока — помогать гномам при помощи своей магии, которая представляет из себя Java-код, выполнение которого приводит к модификации предметов и влиянию на окружающий мир: левитация, полёты, уничтожение огнём и тому подобное. Игра «помогает» игроку различными способами, начиная от подсказок и заканчивая чем-то на подобие дополнения кода, так что раздражения по поводу заклинания на Java «как разрушить это препятствие» у школьников не должно возникнуть.

Игровой процесс — правда, урывками и без особого смысла — можно посмотреть на видео
Узнать подробности

Откуда берутся идеи?

Reading time8 min
Views36K
Эта статья содержит все известные мне на сегодня способы поиска (или «каналы» появления) продуктовых идей. В виде более-менее упорядоченного списка.

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



Возможно вы забыли или не знали о каком-то из этих способов, и прочтение статьи поможет вам преодолеть очередной затык. Или побудит поделиться каким-то своим, пропущенным мной подходом. Или даже спровоцирует на негодование, и вы захотите рассказать как обстоит всё «на самом деле» – смело дополняйте и критикуйте.
Читать дальше →

«Про ИТ-стартапы и венчурное финансирование», или «Как я за булкой ходил»

Reading time5 min
Views26K
Рыбой и морем
Пахнет рыбак.
В булочной только
Не пахнет никак!

(по мотивам детского стихотворения)

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

Однажды утром я вышел на улицу, чтобы купить к завтраку булку…
Читать дальше →

Information

Rating
Does not participate
Location
Кокосовы (Килинг) о-ва
Date of birth
Registered
Activity