Яндекс предложил вебмастерам альфа-версию нового инструмента. Новый сервис предназначен для тех сайтов, чьи тексты копируют другие сайты. При этом иногда сайты-помойки, ворующие контент, ухитряются делать это настолько успешно, что высоко ранжируются в результатах поиска, лучше индексируются и успевают первыми выдать поисковикам чужой контент.
Александр @Caiiiycuk
Пользователь
Набор инструментов Bootstrap для создания web-приложений
1 мин
14KСегодня Twitter объявил о запуске нового набора инструментов Bootstrap для создания web-приложений при помощи CSS. Набор включает в себя стили для типографики, форм, кнопок, таблиц, стрелок и.т.д.
Создатели говорят, что сервис был запущен как фреймворк для создания фронтэнд приложений. Набор был разработан во время первого твиттеровского Hackweek.
+71
Я хочу работать в Google! Телефонное интервью (часть 2)
14 мин
17KСегодня мы будет обсуждать технические аспекты и реализацию задач на Python и C/C++, которыми нас будет закидывать инженер из Google. Начнём с самых тривиальных проблем с последующим нарастанием сложности. Параллельно обратим внимание о чём стоит упомянуть во время интервью и где не попасть в ловушку.
+70
Программа проверки грамматики
3 мин
96KБольшинство систем редактирования текста имеют инструмент для автоматической проверки орфографических ошибок (когда в слове написаны неправильно одна или несколько букв; по-английски — speller). Их принцип действия: программа анализирует в тексте каждое слово и ищет такое же в Базе Данных всех слов и их всевозможных форм.
Такая проверка текста гарантирует, что слова в тексте будут написаны правильно (как в словаре), но не защищает от ошибок согласования и синтаксических ошибок в предложении. Например, предложение «Я читаешь интересными журналом» неправильно, но система редактирования текста не покажет правильный вариант: «Я читаю интересный журнал».
Избежать таких ошибок помогает программа проверки грамматических ошибок в предложении (по-английски — grammar checker).
Такая проверка текста гарантирует, что слова в тексте будут написаны правильно (как в словаре), но не защищает от ошибок согласования и синтаксических ошибок в предложении. Например, предложение «Я читаешь интересными журналом» неправильно, но система редактирования текста не покажет правильный вариант: «Я читаю интересный журнал».
Избежать таких ошибок помогает программа проверки грамматических ошибок в предложении (по-английски — grammar checker).
+52
Настоящие программисты, где же вы?
3 мин
13K[Это перевод статьи из блога компании RethinkDB — калифорнийского стартапа, который занимается разработкой MySQL storage engine, оптимизированного под SSD-диски. Оригинал статьи можно прочитать здесь]
В последние месяцы RethinkDB довольно активно нанимает новых сотрудников, и за это время мы твердо убедились в том, что Джеф Этвуд (Jeff Atwood) в своей статье о FizzBuzz ни на йоту не отошел от истины.
Без лишнего хвастовства могу сказать, что мы предъявляем очень высокие требования к соискателям вакансий. И мы совершенно не намерены снижать эту планку. Более того, мы уверены, что чем больше слабых программистов мы отфильтруем, тем лучше и сильнее в итоге окажется наша команда. Некоторые, впрочем, отмечают, что под наши требования скоро будут подпадать только обладатели PhD в computer science со вторым дипломом по квантовой механике.
Конечно, всё это гнусные инсинуации. Наше основное правило — не нанимать людей, которые не умеют программировать.
Чтобы не быть голословными, мы опубликуем наш основной тест, отсеивающий 19 из 20 кандидатов еще на этапе телефонного собеседования (при том, что до телефонного собеседования мы допускаем не всех подряд, а только тех, чье резюме нам понравилось).
В последние месяцы RethinkDB довольно активно нанимает новых сотрудников, и за это время мы твердо убедились в том, что Джеф Этвуд (Jeff Atwood) в своей статье о FizzBuzz ни на йоту не отошел от истины.
Без лишнего хвастовства могу сказать, что мы предъявляем очень высокие требования к соискателям вакансий. И мы совершенно не намерены снижать эту планку. Более того, мы уверены, что чем больше слабых программистов мы отфильтруем, тем лучше и сильнее в итоге окажется наша команда. Некоторые, впрочем, отмечают, что под наши требования скоро будут подпадать только обладатели PhD в computer science со вторым дипломом по квантовой механике.
Конечно, всё это гнусные инсинуации. Наше основное правило — не нанимать людей, которые не умеют программировать.
Чтобы не быть голословными, мы опубликуем наш основной тест, отсеивающий 19 из 20 кандидатов еще на этапе телефонного собеседования (при том, что до телефонного собеседования мы допускаем не всех подряд, а только тех, чье резюме нам понравилось).
+62
Уроки 10-ти лет технических обзоров
5 мин
1.2KПеревод
На той неделе было 10 лет, как я веду техническую колонку в The New York Times!
Среди всех десятилетий технического прогресса последнее было особенно невероятным. С тех пор, как я написал свою первую статью в 2000 году, мир технических новинок не столько развивался, сколько несся вперед с космической скоростью. Подумайте о привычных ныне технологиях, которых даже не существовало каких-то 10 лет назад: HDTV, Blu-ray, GPS, Wi-Fi, Gmail, YouTube, iPod, iPhone, Kindle, Xbox, Wii, Facebook, Twitter, Android, онлайн магазины музыки, потоковое видео и т. д. и т. п.
Сейчас отличный момент, чтобы бросить взгляд назад и подтвердить — или опровергнуть прогнозы, сделанные в течение первого десятилетия 21 века.
Среди всех десятилетий технического прогресса последнее было особенно невероятным. С тех пор, как я написал свою первую статью в 2000 году, мир технических новинок не столько развивался, сколько несся вперед с космической скоростью. Подумайте о привычных ныне технологиях, которых даже не существовало каких-то 10 лет назад: HDTV, Blu-ray, GPS, Wi-Fi, Gmail, YouTube, iPod, iPhone, Kindle, Xbox, Wii, Facebook, Twitter, Android, онлайн магазины музыки, потоковое видео и т. д. и т. п.
Сейчас отличный момент, чтобы бросить взгляд назад и подтвердить — или опровергнуть прогнозы, сделанные в течение первого десятилетия 21 века.
+88
Мой опыт восстановления зрения
9 мин
278KТуториал
Этим летом я был на некоторое время предоставлен сам себе – всех своих я отправил подальше от дыма, а сам, недолго думая, решил немного подтянуть здоровье. Не просто записаться в тренажерный зал и накачать «квадратиков» для пляжа, а именно обследоваться у некоторых врачей, чтобы выработать для себя вектор дальнейших действий, дабы совсем не превратиться в «овоща».
Расскажу лишь про свой опыт восстановления зрения – именно оно больше всего подвержено риску у любого «компьютерного» человека.
Расскажу лишь про свой опыт восстановления зрения – именно оно больше всего подвержено риску у любого «компьютерного» человека.
+301
Управление транспортным средством с помощью нейронной сети
11 мин
17KПеревод
Аннотация
Используя нейронную сеть, мы хотим, чтобы транспортное средство управляло собой само, избегая препятствий. Мы добиваемся этого путем выбора соответствующих входов/выходов и тщательного обучения нейронной сети. Мы скармливаем сети расстояния до ближайших препятствий вокруг автомобиля, имитируя зрение водителя-человека. На выходе получаем ускорение и поворот руля транспортного средства. Нам также необходимо обучить сеть на множестве стратегий ввода-вывода. Результат впечатляющий даже с использованием всего лишь нескольких нейронов! Автомобиль ездит, обходя препятствия, но возможно сделать некоторые модификации, чтобы это программное средство справлялось с более специфическими задачами.
Введение
Идея в том, чтобы иметь транспортное средство, которое управляет собой само и избегает препятствий в виртуальном мире. Каждое мгновение оно само решает, как изменить свою скорость и направление в зависимости от окружающей среды. Для того чтобы сделать это более реальным, ИИ должен видеть только то, что видел бы человек, если бы находился за рулем, так что ИИ будет принимать решения только на основе препятствий, которые находятся спереди транспортного средства. Имея реалистичный ввод, ИИ мог бы быть использован в реальном автомобиле и работать так же хорошо.
Когда я слышу фразу: "Управление транспортным средством с помощью ИИ", я сразу же задумываюсь о компьютерных играх. Многие из гоночных игр могут использовать эту технику для контроля транспортных средств, но есть целый ряд других приложений, которые ищут средство управления транспортом в виртуальном или же реальном мире.
Так как же мы это будем делать? Существует множество способов реализации ИИ, но ведь если нам нужен "мозг" для управления транспортным средством, то нейронные сети подойдут как нельзя лучше. Нейронные сети работают так же, как и наш мозг. Они, наверное, и будут правильным выбором. Мы должны определить, что будет входом, а что выходом нашей нейронной сети.
+56
Карьера в IT
9 мин
35KЧто является основным критерием карьерного успеха? Как попасть на желанную работу, если недостаточно опыта? В этой статье я попытался ответить на эти и другие вопросы, связанные с карьерой IT-специалиста.
+142
Принцип «уверенности» высококачественного веб-дизайна
10 мин
21KКраткий синопсис
Доброго времени суток, уважаемые Хабрапользователи. Я довольно давно наблюдаю за различными постами Хабра, касающихся веб-дизайна, да и дизайна в целом. Чаще всего смысл таких постов сводится к очень подробным описаниям отдельных элементов сайта и их различным вариантам — в этом нет ничего плохого, но, мне кажется, этой теме чего-то не хватает: а именно, освещения более общих и всем понятных принципов высококачественного дизайна, которыми мог бы воспользоваться любой пользователь, даже не владеющий соответствующим профилем. В этой статье речь пойдет об одном из таких основополагающих принципов.
Под катом примерно 1.1 Мб трафика.
+46
Ещё более современный C++
6 мин
49KПеревод
“C++11 feels like a new language.” – Bjarne Stroustrup
Не так давно Герб Саттер открыл на своём сайте новую страничку — Elements of Modern C++ Style, где он описывает преимущества нового стандарта и то, как они повлияют на код.
Не так давно Герб Саттер открыл на своём сайте новую страничку — Elements of Modern C++ Style, где он описывает преимущества нового стандарта и то, как они повлияют на код.
+129
Интеграция алгоритма стемминга русских слов в fts3 SQLite
3 мин
5.7KВ данной статье я хочу поделиться опытом интеграции расширения для стемминга в код SQLite. Все действия выполнялись в ОС Ubuntu 11.10.
В fts3 SQLite есть простой стеммер, реализующий алгоритм стемминга Портера, но для русских слов реализации нет. Т.е. MATCH по слову 'гостиницы' не найдёт записи, содержащие слово 'гостиница' и т.д.
Проблема
В fts3 SQLite есть простой стеммер, реализующий алгоритм стемминга Портера, но для русских слов реализации нет. Т.е. MATCH по слову 'гостиницы' не найдёт записи, содержащие слово 'гостиница' и т.д.
Подготовка к компиляции
Что понадобится
- исходники sqlite3 с репозитория;
- наш стеммер на языке C (см. далее);
- опционально библиотека readline (libreadline), если нужна история вводимых команд для консольного клиента.
+19
Создание простейшего сервера с помощью Apache MINA
4 мин
10KApache MINA — библиотека с открытым исходным кодом для написания клиент-серверных приложений на Java. Последняя на текущий момент версия — 2.0.4 — вышла 14 июня 2011 г.
В этой статье я опишу процесс создания простейшего сервера с использованием этой библиотеки.
В этой статье я опишу процесс создания простейшего сервера с использованием этой библиотеки.
+35
Android UI Patterns: Dashboard
6 мин
12KПосле моей недавней статьи несколько человек поинтересовались в личке как сделать Dashboard. Dashboard является одним из основных UI паттернов для Android, подробней о которых Вы можете прочесть здесь. Поиск по хабру подсказал как можно реализовать QuickAction диалоги и ActionBar. В этой статье я расскажу как легко сделать свой Dashboard.
+35
Компиляция JavaScript проекта с помощью Maven и Closure Compiler
6 мин
8.8KДобрый день, коллеги!
Хотел поделиться своими наработками в области автоматизации процесса сборки javascript проекта использующего Google Closure Compiler и Google Closure Library при помощи Apache Maven. Страничка проекта https://github.com/urmuzov/closure-maven, там же лежит документация по каждому из компонентов проекта.
Главный компонент проекта — это архетип. Архетип объединяет в себя все остальные компоненты проекта, которые при желании могут использоваться отдельно от него.
Архетип предоставляет средства для решения самых часто встречающихся задач при разработке, а именно:
Хотел поделиться своими наработками в области автоматизации процесса сборки javascript проекта использующего Google Closure Compiler и Google Closure Library при помощи Apache Maven. Страничка проекта https://github.com/urmuzov/closure-maven, там же лежит документация по каждому из компонентов проекта.
О проекте
Главный компонент проекта — это архетип. Архетип объединяет в себя все остальные компоненты проекта, которые при желании могут использоваться отдельно от него.
Архетип предоставляет средства для решения самых часто встречающихся задач при разработке, а именно:
- Запаковывает javascript код в maven артефакты для распространения (такие артефакты содержат помеченные пакеты специальной структуры, названные closure-packages);
- Распаковывает closure-packages из подключенных в
<dependencies>
артефактов для компиляции; - Помогает в объединении и оптимизации js и css файлов при помощи Web Resource Optimizer for Java (wro4j);
- Предоставляет 5 профилей компиляции для разных целей:
compiled
— для «боевой» сборки проекта. Уровень компиляцииADVANCED_OPTIMIZATIONS
;merged
— для склеивания всех исходных js файлов в один, фактически без компиляции. Уровень компиляцииWHITESPACE_ONLY
, форматированиеPRETTY_PRINT
;sources
— для дебага javascript файлов в бразуере. Компиляция происходит как и в профилеcompiled
, но в html будут подключены файлы с исходными кодами;sources-no-compile
— для дебага html/css файлов. Компиляции не происходит, просто в html подключаются файлы с исходными кодами;jar
— для сборки jar-архива для распространения;
- Генерирует jsdoc и jslint отчеты при выполнении
mvn site
.
+24
Реалистичный пейзаж в Ogre 3D
25 мин
18KПривет.
Прочитав на хабре несколько интересных статей об одном из самых мощных рендер-движков Ogre3D, я решил поделиться своим опытом в деле моделирования с помощью него реалистичного пейзажа с атмосферными эффектами, водной поверхностью и буйной растительностью. Под катом — рецепт прикручивания к Ogre всех необходимых для этого библиотек.
Прочитав на хабре несколько интересных статей об одном из самых мощных рендер-движков Ogre3D, я решил поделиться своим опытом в деле моделирования с помощью него реалистичного пейзажа с атмосферными эффектами, водной поверхностью и буйной растительностью. Под катом — рецепт прикручивания к Ogre всех необходимых для этого библиотек.
+65
С++: шаблон «поводок»
6 мин
5.3KНамедни коллега подкинул такую задачку:
«Есть два типа объектов — Human и Dog. Human может владеть некоторой собакой (а может и не владеть). Dog может иметь некоторого хозяина (а может и не иметь). Понятно, что если некоторый объект типа Human владеет некоторым объектом типа Dog, то для данного объекта типа Dog именно данный объект типа Human является хозяином и только он. Причем Dog должен знать, кто его Human, и наоборот. Как бы ты это реализовал?»
Казалось бы, всё просто — заведём два указателя друг на друга у классов Human и Dog и дело в шляпе. Но реализация данной затеи привела меня к идее, как мне кажется, нового шаблона проектирования.
«Есть два типа объектов — Human и Dog. Human может владеть некоторой собакой (а может и не владеть). Dog может иметь некоторого хозяина (а может и не иметь). Понятно, что если некоторый объект типа Human владеет некоторым объектом типа Dog, то для данного объекта типа Dog именно данный объект типа Human является хозяином и только он. Причем Dog должен знать, кто его Human, и наоборот. Как бы ты это реализовал?»
Казалось бы, всё просто — заведём два указателя друг на друга у классов Human и Dog и дело в шляпе. Но реализация данной затеи привела меня к идее, как мне кажется, нового шаблона проектирования.
+48
Постоянные неблокируемые cookie с использованием HTTP-заголовков
3 мин
9.6KПеревод
На прошлой неделе прогремела новость об исследовании, утверждающем, что аналитическая компания KissMetrics отслеживала пользователей на сайтах при помощи уникального значения заголовка ETag(спека). KissMetrics отрицали использование ETag и в итоге подали в суд на авторов исследования(см. upd. в конце статьи).
Использование ETag (сокрашение от 'element tag', «метка элемента») для отслеживания пользователей известен и используется в партнерских сетях с начала прошлого десятилетия. Так же известно, что и заголовок Last-Modified(spec) теоретически может использоваться для отслеживания пользователей с помощью уникального значения времени обновления.
Мне, правда, кажется, что мало кто знает, что заголовок Last-Modified может принимать в качестве значения любую строку, то есть значение не обязательно должно быть правильной датой.
Использование ETag (сокрашение от 'element tag', «метка элемента») для отслеживания пользователей известен и используется в партнерских сетях с начала прошлого десятилетия. Так же известно, что и заголовок Last-Modified(spec) теоретически может использоваться для отслеживания пользователей с помощью уникального значения времени обновления.
Мне, правда, кажется, что мало кто знает, что заголовок Last-Modified может принимать в качестве значения любую строку, то есть значение не обязательно должно быть правильной датой.
+69
Разработка для Pokki: Hello World
4 мин
4.1KТуториал
Не так давно была запущена в бета-режиме платформа Pokki, позволяющая разрабатывать десктопные приложения с помощью HTML5 и JavaScript (обзор здесь). На данный момент она доступна только пользователям Windows 7, в ближайшем будущем — пользователям Vista и XP, также в планах Mac OS. В этой статье мы будем разрабатывать свое первое приложение.
+17
Инструменты командной строки для веб-разработчика
3 мин
40KПеревод
Жизнь веб-разработчика омрачена сложностями. Особенно неприятно, когда источник этих сложностей неизвестен. То ли это проблема с отправкой запроса, то ли с ответом, то ли со сторонней библиотекой, то ли внешний API глючит? Существует куча различных прилад, способных упростить нам жизнь. Вот некоторые инструменты командной строки, которые лично я считаю бесценными.
+207
Информация
- В рейтинге
- Не участвует
- Откуда
- Новокузнецк, Кемеровская обл., Россия
- Дата рождения
- Зарегистрирован
- Активность