• 42 оператора расширенного поиска Google (полный список)

    • Translation
    • Tutorial
    Те, кто давно занимается поисковой оптимизацией, хорошо знают об операторах расширенного поиска Google. Например, почти все знают об операторе site:, который ограничивает поисковую выдачу одним сайтом.

    Большинство операторов легко запомнить, это короткие команды. Но уметь эффективно их использовать — совсем другая история. Многие специалисты знают основы, но немногие по-настоящему овладели этими командами.

    В этой статье я поделюсь советами, которые помогут освоить поисковые операторы для 15 конкретных задач.
    Читать дальше →
  • Как на самом деле работают z-index

      Наверное, почти каждый из нас хоть раз в жизни использовал свойство z-index. При этом каждый разработчик уверен, что знает, как оно работает. В самом деле — что может быть проще операций с целыми числами (сравнение и назначение их элементам). Но всё ли так просто, как кажется на первый взгляд?

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

      image
      Читать дальше →
      • +16
      • 12.6k
      • 7
    • Допустимые и недопустимые контакты металлов. Популярные метрические и дюймовые резьбы

        Электронику часто называют наукой о контактах. Многие знают, что нельзя скручивать между собой медный и алюминиевый провода. Медная шина заземления или латунная стойка для платы плохо сочетаются с оцинкованными винтиками, купленными в ближайшем строительном супермаркете. Почему? Коррозия может уничтожить электрический контакт, и прибор перестанет работать. Если это защитное заземление корпуса, то прибор продолжит работу, но будет небезопасен. Голая алюминиевая деталь вообще может постепенно превратиться в прах, если к ней приложить даже низковольтное напряжение.

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

        В советских ГОСТах было написано почти всё о допустимых контактах металлов, но если изучение чёрно-белых таблиц из 1000 ячеек мелким шрифтом утомляет, то правильный ответ на «медный» вопрос — нержавейка, либо никелированная сталь, из которой, кстати, и сделан почти весь «компьютерный» крепёж. В эпоху чёрно-белого телевидения были другие понятия об удобстве интерфейса, поэтому для уважаемых читателей (и для себя заодно) автор приготовил цветную шпаргалку.

        И, раз уж зашла речь о металлообработке, заодно автор привёл таблицу с популярными в электронике резьбами и соответствующими свёрлами, отобрав из объёмных источников наиболее релевантное по тематике портала. Не все же здесь слесари и металлурги, экономьте своё время.
        Читать дальше →
      • Умное мигание светодиодом в Ардуино



          Мигание светодиода в Ардуино, что может быть проще и бесполезнее. На самом деле практическую пользу от этой простой функции можно найти.

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



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

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

            Каждый электродвигатель обладает некоторыми отличительными свойствами, которые обуславливают его область применения, в которой он наиболее выгоден. Синхронные, асинхронные, постоянного тока, коллекторные, бесколлекторные, вентильно-индукторные, шаговые… Почему бы, как в случае с двигателями внутреннего сгорания, не изобрести пару типов, довести их до совершенства и ставить их и только их во все применения? Давайте пройдемся по всем типам электродвигателей, а в конце обсудим, зачем же их столько и какой двигатель «самый лучший».
            Читать дальше →
          • C#: коллекции только для чтения и LSP

            • Translation
            Часто разработчики утверждают, что read-only коллекции в .NET нарушают принцип подстановки Барбары Лисков. Так ли это? Нет, это не так, потому что IList интерфейс содержит флаг IsReadOnly. Исключением является класс Array, он действительно нарушает LSP принцип начиная с версии .NET 2.0. Но давайте разберемся во всем по порядку.
            Читать дальше →
          • Подбор книг по C#

              image

              Мы решили собрать в одну подборку самые, по нашему мнению, интересные книги нашего издательства, посвященные языку программирования C#. В посте собраны хорошие книги от пособий для начинающих (например, примелькавшаяся книга серии Head First) до изданий Джеффри Рихтера и Чарли Петцольда для практикующих программистов, в общем – на любой вкус по самым лучшим ценам в интернете.
              Читать дальше →
            • Интересное по хабу .Net за 2014 год

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

                Новости хаба .Net на Хабре занимают 33 страницы или 328 постов. Что говорит о том что новости появляются почти каждый день =) Посмотрим на самое интересное из них (на мой скромный взгляд). Ну и загляните под кат: до ката, конечно же, не все.

                Доступен новый JIT: теперь с поддержкой SIMD
                Как работает декомпиляция в .Net или Java на примере .Net
                Microsoft раскрыла исходный код компилятора С#
                Consulo: ~1000 коммитов, или как прошла осень
                Под капотом у Stopwatch
                Как тестировать код финализатора (c#). Послесловие: тест все-таки упал
                Посмотреть на прочие статьи
              • Беззеркальная революция

                  В понедельник 23 июля Canon последним из крупных фотопроизводителей анонсировала свою первую беззеркальную камеру EOS-M. На бумаге новая камера имеет неплохие характеристики, но речь пойдет не о ней, а беззеркалках вообще и о позволивших их создать технологиях в частности.

                  Мы наблюдаем очередную революцию в фотоделе. Первые беззеркалки появились меньше пяти лет назад, но уже успели существенно подвинуть традиционные зеркалки (в Азии так и вовсе их продажи сравнялись с продажами зеркалок), а заодно помогли камерафонам уничтожить рынок мыльниц (спад продаж только в прошлом году под 40%).

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

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

                  Вы можете одновременно держать несколько вещей в голове (регистр). Не больше, чем десяток или два в вашей активной памяти, но вы способны вспомнить любую из них практически мгновенно. Важную для себя информацию вы держите под рукой, будь то доступный за пару секунд отрывной блокнотик на рабочем столе (кэш L1) или одна из книжек на полке (кэш L2 и больше), которые настолько хорошо организованы, что любой фрагмент информации вы можете получить не более чем за десяток секунд или около того.
                  Читать дальше →
                • Строение двигателей

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

                    А можете ли Вы сходу объяснить Вашей девушке, в чем отличие бензинового двигателя от дизельного? Четырёхтактного и двухтактного движков? Нет? Тогда приглашаю под кат.

                    Читать дальше →
                  • Отказ от письма — прогресс или регресс?

                      Последнее время идут разговоры о том, нужно ли вообще учиться писать от руки, если все идет к великому светлому будущему, когда будут одни электронные девайсы, а деревья наконец оставят в покое и не будут переводить на бумагу. Вот некоторые соображения, уважаемое хабрасообщество.
                      Читать дальше →
                    • Переход с Windows Mobile на Android. Список приложений

                      Практический опыт перехода от WM-коммуникатора к Android.
                      Очередной список Android-приложений со ссылками и кратким описанием.
                      Все нижеописанное — субъективное мнение автора и не претендует на истину в последней инстанции


                      Преамбула: после трех лет сосуществования с коммуникатором на базе Windows Mobile наступил момент, когда WM начало казаться мне жутким, неповоротливым и кривым чудовищем. Коммуникатор использовался очень плотно: звонки и SMS, разумеется, но это не главное; в основном – чтение книг, ежедневная навигация в московских пробках, web-серфинг, почта, хранение контактов, планирование рабочего (и не только) времени с помощью Календаря (от Задач ушел), Заметки (в том числе и графические от руки), переписка IM, звонки VoIP, ssh. Причем, Контакты, Календарь и Заметки постоянно синхронизировались с MS Outlook на настольном компьютере (ББ) и ноутбуке через USB и Bluetooth. Необходимые данные были постоянно доступны и на коммуникаторе и на рабочем месте и на домашнем ноутбуке, и отказываться от этого при переходе на другую платформу я не хотел. Мой выбор пал на Android. Открытая современная платформа и все такое. Близко душе программиста.
                      Читать дальше →
                    • Orange San Francisco — Совсем не бюджетный андроидфон за £99

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

                            Изучив российский розничный рынок не дорогих смартфонов на базе Android'а я начал уже присматриваться к LG Optimus One, но по счастливой случайности бродя по интернетам наткнулся на героя обзора — Orange San Francisco, ценой в Англии всего в £99 (около 4500 наших рублей) и по техническим характеристикам превосходящий чуть-ли не в два раза все предоставленные на нашем рынке смартфоны стоимостью до 10 000 рублей.

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

                          Сегодня мы поговорим о региональных настройках. Но сперва — небольшая задачка: что выведет нижеприведённый код? (Код приведён на языке C#, но рассматривается достаточно общая проблематика, так что вы можете представить на его месте какой-нибудь другой язык.)

                          Console.WriteLine((-42).ToString() == "-42");
                          Console.WriteLine(double.NaN.ToString() == "NaN");
                          Console.WriteLine(int.Parse("-42") == -42);
                          Console.WriteLine(1.1.ToString().Contains("?") == false);
                          Console.WriteLine(new DateTime(2014, 1, 1).ToString().Contains("2014"));
                          Console.WriteLine("i".ToUpper() == "I" || "I".ToLower() == "i");
                          

                          Сколько значений true у вас получилось? Если больше 0, то вам не мешает узнать больше про региональные настройки, т. к. правильный ответ: «зависит». К сожалению, многие программисты вообще не задумываются о том, что настройки эти в различных окружениях могут отличаться. А выставлять для всего кода InvariantCulture этим программистом лениво, в результате чего их прекрасные приложения ведут себя очень странно, попадая к пользователям из других стран.Ошибки бывают самые разные, но чаще всего связаны они с форматированием и парсингом строк — достаточно частыми задачами для многих программистов. В статье приведена краткая подборка некоторых важных моментов, на которые влияют региональные настройки.

                          CultureInfoExplorer Sceenshot
                          Читать дальше →
                        • Гармонические колебания

                            На хабре было несколько статей по преобразованию Фурье и о всяких красивостях типа Цифровой Обработки Сигналов (ЦОС), но неискушённому пользователю совершенно не понятно, зачем всё это нужно и где, а главное как это применить.


                            АЧХ шума.

                            Лично мне после прочтения этих статей (например, этой ) не стало понятно, что это и зачем оно нужно в реальной жизни, хотя было интересно и красиво.
                            Хочется не просто поглядеть красивые картинки, а так сказать, ощутить нутром, что и как работает. И я приведу конкретный пример с генерацией и обработкой звуковых файлов. Можно будет и послушать звук, и поглядеть его спектр, и понять, почему это так.
                            Статья не будет интересна тем, кто владеет теорией функций комплексной переменной, ЦОС и прочими страшными темами. Она скорее для любопытствующих, школьников, студентов и им сочувствующих :).
                            Читать дальше →
                          • [видео] Как поставить человека на место: 10 реальных вопросов про давление в переговорах

                              Видео про 8 способов противостояния формуле нужды оказалось неожиданно популярным, набрав 8,000 просмотров за два дня. Мы решили продолжить тему.

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

                              Мы отобрали 10 самых любопытных, на наш взгляд, вопросов в этой теме и снова заперли в студии Дмитрия Коткина, руководителя Санкт-Петербургской школы переговорщиков ШиП и нашего хорошего друга, чтобы он рассказал, что конкретно делать:



                              10 реальных ситуаций, которые удалось осветить — под катом:

                              Читать дальше →
                            • Правильное логгирование в Microsoft .NET Framework

                                Зачем нужны логи


                                Очевидно, что логи делаются для разработчиков, чтобы облегчить им (нам) жизнь. Основные цели, ради которых существуют логи:
                                • сказать, что же делает система прямо сейчас, не прибегая к помощи отладчика, т.к. это иногда не оправдано;
                                • провести «расследование» обстоятельств, которые привели к определённому состоянию системы (например, падению или багу);
                                • проанализировать, на что тратится больше времени/ресурсов, т.е. профилирование.

                                Примитивный подход


                                Казалось бы, всё просто:
                                public static void Log(string message) {
                                 File.AppendAllText("log.txt", message);
                                }

                                Зачем что-то ещё придумывать, подключать внешние библиотеки, настраивать конфиги?
                                На практике, оказывается, что всё не так: одного лог-файла становится уже недостаточно, возникают проблемы с многопоточностью, форматом логов, записью времени, производительностью итд.
                                Какие же фичи должен поддерживать хороший логгер?
                                Читать дальше →
                              • C#. Сортировка членов типа с помощью ReSharper


                                Существуют некоторые соглашения касаемые структуры класса, и того, в каком порядке должны располагаться его члены.
                                Вот, например, правила которые использует StyleCop, возможно, в вашей компании есть свои собственные.
                                Поддерживать структуру вручную довольно тяжело, скучно и отнимает много времени, особенно когда в классе довольно большое количество свойств, полей, методов и.т.д.
                                В этом посте речь пойдет о том, как с помощью ReSharper автоматизировать этот процесс.
                                Читать дальше →
                              • Runtime-генерирование .Net-кода для тех, кому некогда

                                Инфраструктура .Net содержит встроенные средства генерирования кода (On-the-Fly Code Generation). Это позволяет .Net-программе в момент своего исполнения самостоятельно (без участия программиста) скомпилировать текст, написанный на каком-либо языке программирования и исполнить получившийся код. Логично было бы ожидать, что для осуществления этих действий в стандартной .Net-библиотеке предусмотрен простейший метод соответствующего класса. Но к сожалению это не так. Microsoft, проделав огромный путь по встраиванию в среду .Net средств генерирования кода, не сделала самый последний шаг навстречу простейшим потребностям программистов. Значит, придётся сделать этот шаг самостоятельно.

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