• Робот-пылесос Kärcher RC 3000: опыт эксплуатации

      В своей жизни я встречал людей, которым нравится пылесосить. Да, именно так, сам процесс наведения чистоты доставляет удовольствие. Причина может быть разной — от демонстрации собственной нужности до мизофобии.

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

      Признавшись себе однажды в том, что дело не в «нехватке времени» или «усталости после работы», а в банальном нежелании брать в руки этот чертов пылесос, я решил, что нужно процесс уборки как-то автоматизировать, например, купить робота-уборщика.

      Прочного и надежного робота-уборщика, способного нормально функционировать в самых тяжелых условиях:



      Мой выбор пал на RC 3000 от Karcher, впечатлениям от эксплуатации которого и посвящается данная статья.

      Осторожно: под катом много фотографий и видеороликов
    • Вдогонку про самолёты и правила

        Собирался написать комментарий, но незаметно вырос целый пост.

        Не согласен с половиной пунктов и этого топика, но это мои личные заморочки.
        Кроме того, отсутствует самый главный — «Избегайте сдачи чего-либо в багаж любой ценой». Я давным -давно использую во всех поездках исключительно рюкзак и «разгрузки». Причина одна — среди моих знакомых уже, наверное, половина стали жертвами недоставки багажа. Некоторые — даже по два раза.
        Таки чего он хочет нам сказать?
      • Почему я ушел из Google

        • Translation
        Ну хорошо, я сдаюсь: все хотят знать почему я ушел. А так как ответить каждому отдельно невозможно, вот вам изложение в длинной форме. Прочтите немного (я дойду в кульминации в 3-м абзаце) или прочтите всё. Но начну с предупреждения: здесь нет ни драмы, ни сверхинтересных деталей, ни избиения бывших коллег, и вообще нет ничего, о чем вы не могли бы догадаться сами из того, что ходит в прессе вокруг Google и ее отношения к разработчикам программ и конфиденциальности пользовательских данных. Это просто мой личный рассказ.

        Покинуть Google было непростым решением. За время моей работы там я стал довольно страстным поклонником компании. Я выступал на четырех Google Developer Day, на двух Google Test Automation Conferences и был плодовитым участником блога Google Test. Рекрутеры часто просили меня помочь уговорить очень перспективных кандидатов на работу в компании. Меня никто не должен был просить дважды для поддержки Google, и никто более меня не удивился тому, что я не смог это продолжать. На самом деле последние три месяца работы в Google были вихрем отчаяния в тщетной попытке вернуть прошлую страсть.
        Читать дальше →
      • О параллельных мирах

          Иногда я попадаю в параллельные миры и с огромным удивлением изучаю их структуру, обитателей и события, в них происходящие. Нет, вы не подумайте только, что я злоупотребляю психотропными веществами или достижениями современной ликёро-водочной науки. Да и в существование иных измерения я тоже как-то не очень верю. Я о другом.



          Читать дальше →
        • Делаем Desire HD из Desire



            Буквально пару дней назад я прочитал пост Вторая жизнь HTC HD2 и задумался, а можно ли сделать Desire HD из моего Desire? Как оказалось, можно, и даже не очень сложно. В общем, поразмыслив некоторое время о плюсах и минусах перехода на HD, я приступил к превращению. После всех действий я получил все возможности Desire HD в корпусе Desire. Никаких проблем и ошибок не возникло.
            Читать дальше →
          • Восстанавливаем флешки

              Хотя со временем флешки становятся все дешевле и объемнее это не значит, что при любом сбое ее можно выбросить и приобрести другую. Хотя многие именно так и делают, даже на задумываясь о том, что ситуацию еще можно спасти. В свое время мы тряслись за каждую флоппи-дискету, почему же не поковыряться и с флешкой, чтобы дать ей вторую или даже не третью жизнь. Думаю, у многих в столе рядом с компьютером найдется какая-нибудь «мертвая» флешка-брелок, которую выбросить жалко из-за того, что она красивая или, хотя бы потому, что какое-то время назад она была полезна. Конечно, иногда флешки «умирают» раз и навсегда, но зачастую они находятся в состоянии «клинической смерти», а как известно, такое состояние обратимо.

              image
              Читать дальше →
            • 10 советов как пройти путь от начинающего до программиста среднего уровня

                Добрый день

                Предлагаю вниманию сообществу перевод статьи «10 tips to go from a beginner to an intermediate developer». Её автор Justin James — один из работников компании Levit & James, занимает должность, которая включает в себя программирование, сетевое управление и системное администрирование. Ведёт постоянно свой блог на TechRepublic с 2005 года. Пишет статьи для MSDN Magazine.

                Несколько советов для начинающих разработчиков, которые хотят перенести их карьеру на следующий уровень.
                Читать дальше →
              • Планктонная Windows

                Короткая заметка об опыте автоматизации восстановления Windows.

                Введение


                Одной из подработок в настоящее время у меня является сопровождение небольшого компьютерного парка в частной фирме. Направление фирмы — розничная торговля: склады, пара супермаркетов в три и четыре кассы, а также четыре небольших магазина. Контингент пользователей традиционный: бухгалтерия, кассиры, руководство. Компьютеры (всего их 45) территориально удалены друг от друга, некоторым программам (не всем) по целому ряду причин нужны административные права. Так просто исторически сложилось. Не суть. Архитектуру сети и политику управления всем этим хозяйством можно охарактеризовать одним словом: винегрет. Но я человек пришлый, менять сложившуюся систему не могу и не хочу.

                Постановка задачи


                Вполне понятно, что все это хозяйство разрушается со временем различными троянами и вирусами, самый мощный, беспощадный и непредсказуемый из которых имеет ДНК мало отличающуюся от вашей или моей. Запуск EXE прямо из почты с пометкой СПАМ одно из наиболее безобидных занятий. Все сидят в Интернете понятное дело (кроме касс). Уговоры и показательные порки никакие не помогают, разъяснение термина офисный планктон не возымело ни малейшего эффекта. Некоторые дамы особенно ядреные. Что-то нужно предпринимать кардинальное, не ездить же в самом деле по каждому факту для ручного восстановления ОС. Причем бюджета как такового практически нет, весь бюджет — экономия на возможном отказе от подписки KAV. Да и от основной работы отвлекаться нельзя категорически, это подработка же всего лишь.

                Принятые меры


                Дальнейшее во-многом очевидно. Для рядовых пользователей Windows заморожена с помощью купленной в нужном количестве Deep Freeze (утилита уже описывалась на Хабре), что позволяет после перезагрузки получить девственно чистую ОС и главное позволяет сэкономить на антивирусах, файерволах и обновлении железа. Можно использовать аналогичную программу — это дело вкуса. Для серверов же выполняются регулярные образы диска с системой. Почту загнал в Google Apps, клиент trayos.com — все-таки GMail от вирусов сам по себе уже весьма неплохо защищает. Однако с рабочими станциями имеем целый ряд проблем. Далее в порядке возрастания сложностей.
                Читать дальше →
              • Here be dragons: Управление памятью в Windows как оно есть [1/3]


                  Каталог:
                  Один
                  Два
                  Три

                  Менеджер памяти (и связанные с ним вопросы контроллера кеша, менеджера ввода/вывода и пр) — одна из вещей, в которой (наряду с медициной и политикой) «разбираются все». Но даже люди «изучившие винду досконально» нет-нет, да и начинают писать чепуху вроде (не говоря уже о другой чепухе, написанной там же):
                  Грамотная работа с памятью!!! За все время использования у меня своп файл не увеличился ни на Килобайт. По этому Фаерфокс с 10-20 окнами сворачивается / разворачивается в/из трея как пуля. Такого эффекта я на винде добивался с отключенным свопом и с переносом tmp файлов на RAM диск.

                  Или к примеру μTorrent — у меня нет никаких оснований сомневаться в компетентности его авторов, но вот про работу памяти в Windows они со всей очевидностью знают мало. Не забываем и товарищей, производящих софт для слежения за производительностью и не имеющих ни малейшего понятия об управлении памятью в Windows (и поднявших по этому поводу истерику на пол интернета, на Ars-е даже был разбор полетов). Но самое потрясающее, что я видел всвязи с управлением памятью — это совет переместить pagefile на RAM-диск:
                  Из моих трех гигабайт под RAM disk был выделен один (на тот момент, когда на лаптопе еще была установлена XP), на котором я создал своп на 768МБ ...

                  Цель данной статьи — не полное описание работы менеджера памяти (не хватит ни места ни опыта), а попытка пролить хоть немного света на темное царство мифов и суеверий, окружающих вопросы управления памятью в Windows.
                  Читать дальше →
                • Байки о несовместимых приложениях

                  • Translation
                  Это отрывки из бесплатной главы из бумажной книги «The Old New Thing». Они ничему не пытаются научить; это просто короткие забавные эпизоды из будней борцов за совместимость новых версий Windows со старыми приложениями.

                  Изменяем номер версии Windows


                  Изменить номер версии, который Windows сообщает программам, не просто, как кажется. Например, некоторые программы проверяют номер версии так:
                  UINT Ver = GetVersion();
                  UINT MajorVersion = LOBYTE(uVer);
                  UINT MinorVersion = HIBYTE(uVer);
                  if (MajorVersion < 3 || MinorVersion < 10) {
                      Error("This program requires Windows 3.1");
                  }
                  

                  Представьте себе, как этот код отработает на Windows 95, у которой номер версии 4.0. Вторая проверка срабатывает из-за того, что 0 меньше 10.
                  И ладно бы программа просто выводила сообщение об ошибке и завершалась. Многие рушились: очевидно было, что их поведение на «неподдерживаемых» версиях Windows никогда не тестировалось.

                  Таких программ оказалось настолько много, что мы перестали исправлять их по одной, и просто изменили возвращаемый номер версии с 4.0 на 3.95.

                  Программы для MS-DOS тоже не все гладко реагировали на изменение версии ОС. Это удивительно потому, что к тому времени у MS-DOS уже были десятки выпущенных версий и под-версий, и разработчикам пора было бы уже научиться проверять номер версии. Но например, один пакет программ использовал номер версии DOS как индекс в таблице функций: по собственной функции для каждой вышедшей версии. В таблице было пять функций: от MS-DOS 1.x до 5.x. Когда программа запускалась под MS-DOS 6.0, она вызывала адрес за пределами таблицы, и рушилась.

                  Изменить номер версии, который Windows сообщает программам, — необходимый, но очень тяжёлый шаг. Пара нажатых клавиш, и падают сотни приложений, отлично работавших до сих пор; теперь отделу совместимости придётся потратить на вылавливание чужих багов лишнюю тысячу человеко-часов.

                  Читать дальше →
                • Android. Побеждаем фрагментацию

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



                  1. Планшеты и телефоны. Планирование интерфейса


                  Одним из главных отличием девайсов на базе Android является физический размер. «Зоопарк устройств» содержит как и крохотные телефоны, так и огромные десятидюймовые планшеты. И про этот чрезвычайно важный момент многие начинающие разработчики часто забывают.

                  Коренное различие телефонов и планшетов состоит в том, как пользователь держит их:

                  Телефоны в портретной ориентации

                  Обычно держатся в одной руке. Нажатия осуществляются большим пальцем этой же руки. Палец достает везде, но интуитивно удобна нижняя половина экрана.

                  Внимание, немного трафика
                • Незаменимое пособие для авторов статей, текстов и постов

                  • Tutorial
                  "… Специально для вас, — ответил великий комбинатор. — Вы, я замечаю, все время терзаетесь муками творчества. Писать, конечно, очень трудно. Я, как старый передовик и ваш собрат по перу, могу это засвидетельствовать. Но я изобрел такую штуку, которая избавляет от необходимости ждать, покуда вас окатит потный вал вдохновения. Вот. Извольте посмотреть.

                  И Остап протянул Ухудшанскому лист, на котором было написано:

                  ТОРЖЕСТВЕННЫЙ КОМПЛЕКТ.
                  НЕЗАМЕНИМОЕ ПОСОБИЕ ДЛЯ СОЧИНЕНИЯ ЮБИЛЕЙНЫХ СТАТЕЙ, ТАБЕЛЬНЫХ ФЕЛЬЕТОНОВ, А ТАКЖЕ ПАРАДНЫХ СТИХОТВОРЕНИЙ. ОД И ТРОПАРЕЙ"

                  И. Ильф, Е. Петров, «Золотой теленок»


                  Хабр — это все-таки больше СМИ, чем просто форум и тусовка «для своих». Это я к тому, что хочешь — не хочешь, а публикуя топик, ты, фактически, занимаешься журналистикой. На Хабре уже не раз упоминалась книга Александра Амзина по интернет-журналистике. Книга, на мой взгляд, удалась, и заслуживает почетного места в закладках у каждого. Тем не менее, одна ссылка хорошо, а много — лучше. Так как я не один год проработал бок о бок с журналистами, то и сам нахватался от них всякого. Под катом — джентльменский набор вкусных и полезных ссылок.
                  Читать дальше →
                • IT-Украина: Осторожно, двери закрываются!

                    Действующая власть планирует с нового года поставить вне закона фриланс в Украине, сделать рынок аутсорсинга неконкурентоспособным, и заодно поставить жирный крест на всяких там интернет-стартапах. С помощью проекта Налогового Кодекса, который задумано ввести в действие уже с января следующего года.

                    Планируется вывести из упрощенного режима налогообложения очень широкий список видов деятельности, в частности:
                    • деятельность в сети интернет
                    • внешнеэкономическую деятельность
                    • рекламную деятельность
                    Читать дальше →
                  • Динамические деревья

                      Перед прочтением статьи рекомендую посмотреть посты про splay-деревья (1) и деревья по неявному ключу (2, 3, 4)

                      Динамические деревья (link/cut trees) мало освещены в русскоязычном интернете. Я нашел только краткое описание на алголисте. Тем не менее эта структура данных очень интересна. Она находится на стыке двух областей: потоки и динамические графы.

                      В первом случае динамические деревья позволяют построить эффективные алгоритмы для задачи о поиске максимального потока. Улучшенные алгоритмы Диница и проталкивания предпотока работают за и соответственно. Если вы не знаете, что такое поток, и на лекциях у вас такого не было, спешите пополнить свои знания в Кормене.

                      Второй случай требует небольшого введения. Динамические графы — это активно развивающаяся современная область алгоритмов. Представьте, что у вас есть граф. В нем периодически происходят изменения: появляются и исчезают ребра, меняются их веса. Изменения нужно быстро обрабатывать, а еще уметь эффективно считать разные метрики, проверять связность, искать диаметр. Динамические деревья являются инструментом, который позволяет ловко манипулировать с частным случаем графов, деревьями.

                      Перед тем, как нырнуть под кат, попробуйте решить следующую задачу. Дан взвешенный граф в виде последовательности ребер. По последовательности можно пройти только один раз. Требуется посчитать минимальное покрывающее дерево, используя памяти и времени. По прочтении статьи вы поймете, как легко и просто можно решить эту задачу, используя динамические деревья.
                      Читать дальше →
                      • +50
                      • 31.8k
                      • 5
                    • Почему 98% текстов на ваших сайтах не работают. Вообще. И как это починить


                        Вот так люди видят вашу страницу

                        Привет!
                        Проблема вот в чём. Если зайти на практически любой сайт интернет-магазина или компании с услугами, вы встретите контент. Точнее — отвратительные тексты, которые писали, кажется, маркетологи, воспитанные сеошниками.

                        Разумеется, можно не делать, как они. Если работать по-умному, то вы поможете и читателям по жизни, и себе в продажах.

                        По моим примерным подсчётам (усреднение с ряда позиций), конверсии для нас выглядят так:
                        • Только название и картинка — около 1,5%.
                        • С описанием от производителя — чуть более 2%.
                        • С описанием человека, который держал это в руках и знает правила — около 6%.

                        Ниже — рассказ про то, как мы доводили время на сайте от 3 минут сначала до 6:40, а потом до 20:48. Да-да, двадцати минут сорока восьми секунд для среднего посетителя. Честного среднего, с учётом отказов и по полной выборке.
                        Читать дальше →
                      • Построение приложений командной строки (CLI)

                        Данная статья написана под влиянием книги Дэвида Коупленда «Build Awesome Command-Line Application in Ruby» (купить, скачать и изучить дополнительные материалы). Большая её часть будет посвящена проектированию дизайна CLI-приложений вне зависимости от используемого языка. По ходу будут обсуждаться и вещи специфичные для ruby, но не страшно, если вы его не знаете, кода будет не слишком много. Можно считать эту статью довольно подробным обзором вышеупомянутой книги с вкраплениями собственного опыта. Книжку рекомендую!

                        Для начала я задам вопрос. Если посмотреть на сообщества IT-шников, можно заметить, что несмотря на обилие программ с красивым графическим интерфейсом, приложения командной строки остаются весьма популярны. Почему?
                        Ответов несколько. Во-первых, это красиво удобно — если вы можете описать задачу командой в командной строке, то её гораздо проще автоматизировать, чем если вам приходится анализировать передвижения мыши и клики на разные пункты меню. Во-вторых, это даёт возможность комбинировать программы невероятным числом способов, чего сложно добиться с помощью графических интерфейсов.
                        В значительной степени философия Unix базируется на том принципе, что множество маленьких утилит, каждая из которых умеет делать свою конкретную задачу — это лучше, чем одна многофункциональная программа-универсал. И это одна из причин успеха Unix-систем в мире IT-шников.
                        Наверное, каждый понимает, что обычного пользователя вряд ли удастся сманить от GUI к CLI, давайте сосредоточимся на нас, «компьютерщиках» и конкретизируем наши пожелания к CLI-приложениям.
                        Читать дальше →
                      • Используем векторные изображения SVG в приложениях Android, или как убить фрагментацию экранов и не потерять в качестве (плюсы, минусы, особенности)

                          Достаточно долгое время мы занимаемся разработкой детских приложений под Android, постепенно постигая множество нюансов этой платформы. Есть одни грабли, которые подстерегают нас в каждом приложении, – это фрагментация экранов. Если делать одно изображение только под телефон маленького размера, то на планшете оно выглядит мягко говоря “не очень”. А если делать изображение высокого разрешения для планшетов и пытаться использовать его на телефонах, то с очень большой вероятность приложение вывалится с OutOfMemory.

                          Приходится готовить несколько экземляров одного и того же изображения под разные экраны. Еще сильнее облака сгущает новый монстр Galaxy Nexus 10 с безумным разрешением 2560х1600.



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

                          Сказано — сделано. Итак, под катом история внедрения векторных изображений в одно из наших приложений. В статье мы поделимся опытом и особенностями использования векторных изображений в формате SVG в приложениях Android.
                          Читать дальше →
                        • Оптимизация Windows для использования SSD диска: мифы и реальность



                            Когда весь интернет пестрит холиварами на тему «SSD ненадежны» и «SSD настолько быстрые, что я больше никогда не буду работать с HDD», думаю самое время внести немного ясности в то море противоречевой информации о самих SSD и о настройке Windows для работы с ними.

                            Кто заинтересовался, прошу под кат.

                            Читать дальше →
                          • Альтернативный терминал для Windows

                              Часто путают терминал и шелл. В тех же *nix есть шеллы (bash, csh, zsh, …) и терминалы (konsole/guake/yaquake/tilda и т.д. и т.п.) Для мира Windows общеизвестный терминал только один – стандартное консольное окошко, которое часто ошибочно называют «cmd.exe». И мало кто знает о существовании множества других эмуляторов терминала. Известных шеллов больше, их целых два: cmd.exe и powershell.exe. И хотя есть как минимум три порта bash (MinGW, CygWin, GIT) многие юниксоиды предпочитают ругать cmd.exe.

                              Меня не устраивал ни один из найденных альтернативных терминалов (как в 2009-м, когда я начал работу над ConEmu, так и сейчас). Казалось бы требований немного, вот основные:
                              Читать дальше →
                            • 31 метод эффективного программирования под Android

                              Данная статья является переводом очень хорошего топика с форума Stack Overflow. Так как английский язык не является для меня родным, то какие-либо непонятные мне места я просто пропускал, что бы не разгневать тех, кто его действительно знает. Статья содержит список советов и рекомендаций для начинающих разработчиков под Android.

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