• Строение двигателей

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

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

      Читать дальше →
    • Forum Nokia проведет семинары для разработчиков в четырех городах России

        Forum Nokia проведет семинары для российских разработчиков ПО на платформах Nokia. Мероприятия под названием “Nokia Developers Breakfasts” пройдут в четырех городах России:
        • Нижний Новгород (29 октября)
        • Самара (29 ноября)
        • Санкт-Петербург (6 декабря)
        • Новосибирск (13 декабря)


        image
        Читать дальше →
      • Анонс книг 7'2010

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

          Прежде чем выбрать книгу я точно так же пытаюсь выяснить ответ на этот вопрос с помощью некоторых критериев, которыми являются «перекрестные ссылки» авторитетных авторов друг на друга, имя самого автора (мало кто сомневается в качестве очередной книги Джеффри Рихтера, его книги можно брать практически не раздумывая), а также рецензии, желательно, так же известных людей.

          За последнее время вышло (или собирается выйти) достаточное количество интересных книг, как на русском, так и на английском языках, поэтому я решил сделать подборку книг, которые я либо совсем недавно приобрел, либо с удовольствием бы сделал это в самое ближайшее время. С некоторыми из представленных ниже книг я в той или иной степени знаком лично и мое мнение является более обоснованным, в некоторых других случаях я основываюсь на приведенных выше критериях, поэтому мое мнение вполне может быть не слишком точным (хотя мое мнение в любом случае может не совпасть с вашим). Представленный ниже список – это такой себе wish list из новинок компьютерной литературы, который может стать отправной точкой при выборе книги другими специалистами.

          Р. Мартин. Чистый код: создание, анализ и рефакторинг. Питер. 2010


          (Оригинал: Robert C. Martin, Clean Code: A Handbook of Agile Software Craftsmanship, Prentice Hall, 2008)

          image
          Читать дальше →
        • URL Rewrite Extension: исправляем распространенные проблемы SEO

          • Translation
          seo toolkit
          Поисковая оптимизация (SEO) очень важна для сайтов. Большинство трафика на сайты идет прямиком из поисковых систем, а улучшение поисковой релевантности вашего сайта приведет к увеличению переходов пользователей на сайт. Это может явно или неявно увеличить доход с сайта.

          Данная статья расскажет вам, как вы можете использовать URL Rewrite Extension для того, чтобы исправить кучу распространенных проблем в SEO, которые могут быть у вашего сайта. Вам потребуется всего 15 минут и не нужно вносить какие-либо изменения в коде, чтобы применить 4 простых правила URL Rewrite для своего сайта и привлечь больше посетителей и трафика с поисковых систем. Перечисленные ниже приемы работаю одинаково, как на ASP.NET Web Forms, так и на ASP.NET MVC сайтах (и даже не на ASP.NET сайтах)
          Читать дальше →
        • Защита прав потребителей в России: Мы далеко не последние

            Устал я слушать от знакомых причитания по качеству защиты прав покупателей в России и завистливые возгласы: «Вот на западе....».
            Нет, я не хочу сказать что я негативно отношусь к западу, просто хочу показать, что и у наших граждан, есть защита. И закон о защите прав потребителей далеко не такой, каким многие его представляют.
            Что же даёт нам закон?
          • Auditorium — что это?

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

              Собственно, я не могу с уверенностью сказать, что это вообще игра. Вернее, это игра, но в том же смысле, который мы вкладываем в выражения «игра на пианино» или «игра света и тени».

              Играющему на Аудитории («в Аудиторию» как-то язык не поворачивается сказать, пардон) предлагается управлять Потоком (the flow) для того, чтобы заполнять им Контейнеры (the containers) с использованием Контролов (the controls). По мере заполнения Контейнера Потоком, он начинает проигрывать свою мелодию. Больше потока — больше звука. Когда все контейнеры на сцене заполнены, она считается пройденной.

              Просто? Ну да, несложно. Только вот поток может изливаться совсем не в ту сторону, где стоит контейнер… Да и препятствия могут быть на пути, да вот ещё и потоки, оказывается, бывают разных цветов — под свои контейнеры… В общем, чем дальше, тем разнообразнее музыкальное сопровождение и тем сложнее его получить. Но оно того стоит!

              вот картинка и вот ещё

              Стоит ли говорить, что творение это требует некоторых процессорных мощностей и хорошего канала связи?

              Итак, покоритель всевозможных конкурсов и призов — Auditorium.
            • Как из дешевого и простенького роутера сделать полнофункциональный сервер.

                Введение


                Первым роутером, который попал ко мне, был D-Link DI-524, у меня не было времени что либо выбирать, просто купил первый попавшийся недорогой роутер с wi-fi. Так как по натуре я люблю всё ломать, я почти сразу полез в интернет искать, как его можно усовершенствовать.
                Но в то время почти ничего не нашел кроме советов просверлить в нем дырок. Да действительно он частенько перегревался и поэтому нестабильно работал, но на такой рискованный шаг я не пошел.
                Благо я его почти сразу продал своему другу.
                Когда мне снова понадобилось такое устройство, я уже знал какие функции мне действительно необходимы, для меня это было QoS. Я как обыденный покупатель начал смотреть на маркетинговые описания возможностей и фишек устройств. Для меня это тогда казалось единственно верным. Оказалось это не совсем так.
                Я купил asus w520gu, я им в целом доволен (об этом позже), но считаю правильным поделиться опытом и информацией как я его усовершенствовал.
                Кому интересно читаем дальше
              • Скан-код: Ремаппинг клавиш на клавиатуре

                  Предыстория


                  Всю свою жизнь был фанатом бесшумных, тонких, и красивых клавиатур и к моему удивлению обнаружил что таковых не так уж и много, из доступных в свободной продаже, — их единицы. Пришлось пользоваться «Genius SlimStar Pro», и все равно она меня угнетала, как и мысль о том, что я никогда не найду клавиатуру которая бы удовлетворяла меня на все 100%. Я такую нашел и по рекомендации товарища Boomburum, приобрел "Illuminated Keyboard", которая стала достойной подругой моей "MX Revolution", и я окончательно порвал отношения с Genius, а последние рассказы о поддержке пользователей со стороны Logitech, убедили меня, что вложенные (не малые деньги) себя оправдают за 3 гарантийных года.
                  image
                  Но есть небольшая беда в клавиатурах этой компании, — "Не стандартные, не удобные, или не нужные расположения некоторых кнопок". В случае с Illuminated, это две одинаковые кнопки "\", левая из которых пошла в ущерб клавише «LShift», Кстати на картинке вы можете заметить что раньше эти клавиатуры имели стандартный размер «LShift». Под катом, я расскажу как вернуть «стандартную длину» этой кнопки, так как в слепой печати и в силу привычки, я нажимаю именно / вместо шифта. А заодно расскажу как без дополнительного установленного ПО, на примере, вы сможете менять назначения любых клавиш ваших клавиатур (в том числе и функциональных/медийных) при помощи Реестра и Скан-кода клавиш.
                  Читать дальше →
                • Хорошо ли вы подготовились к использованию Windows 7? Несколько “горячих” клавиш

                    Сразу хочу извиниться, статья не очень то техническая. Если вы считаете, что уже и так хорошо знаете все горячие клавиши Windows 7, которые упрощают работу с ней, то просто пропустите этот топик.

                    Случайно на глаза попалась табличка c «горячими» клавишами, связанных с новым тулбаром Windows 7 – узнал для себя много новых и полезных и спешу поделиться ими с вами, предварительно собрав по максимуму полезных сочетаний.

                    Читать дальше →
                  • Ресурсы по программированию панели задач для Windows 7

                      В течении последнего месяца я публиковал статьи о том, каким образом мы можем программировать панель задач в Windows 7. В этом месте я бы хотел собрать ссылки на все ресурсы.
                      Читать дальше →
                    • Все «секреты» Windows 7

                      • Translation
                      По многочисленным просьбам — перевод статьи «The Bumper List of Windows 7 Secrets».

                      Здесь пропущено вступление о том как здорово, что Windows 7 вышла в свет, которое все равно все пропустят и будут читать сами «секреты».

                      1. Управление окнами


                      Вы, наверное, уже знаете, что Windows 7 делает работу с окнами во многом проще. Окно можно «прикрепить» к левой или правой половине экрана просто придвинув к соответствующему краю, а так же окно можно разворачивать/восcтанавливать по вертикали двойным щелчком по нижней границе окна. Но вот чего вы, наверное, не знаете, так это того, что все эти действия доступны через горячие клавиши.
                      • Win+Влево и Win+Вправо — прикрепить окно
                      • Win+Вверх и Win+Вниз — разворачивает и восстанавливает/сворачивает окно
                      • Win+Shift+Вверх и Win+Shift+Вниз — разворачивает и восстанавливает окно по вертикали
                      Но это далеко не всё
                    • Основы программирования под Android на примере игры Судоку

                        В статье описаны основные трудности создания приложений под Android.
                        Рассматриваются базовые понятия программирования Android.
                        Для примера описано создание игры Sudoku из книги Hello, Android – Ed Burnette.
                        Осторожно много скриншотов.

                        Читать дальше →
                      • Альтернативные аллокаторы памяти

                        • Translation
                        Написал Стивен Тови в 2:29 утра по программированию (шутка юмора Google Translate)
                        Вступление от себя: эта заметка, прорекламированная Алёной C++, предназначена в основном разработчикам игр для консолей, но будет, наверное, полезна и всем, кому приходится сталкиваться с экстремальным аллоцированием динамической памяти. Возможно, любители посравнивать управление памятью в C++ и Java тоже найдут над чем задуматься.

                        Оригинал с небезынтересной дискуссией в комментариях: altdevblogaday.org/2011/02/12/alternatives-to-malloc-and-new


                        Обязательная вступительная басня

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

                        Сейчас объясню, почему...
                      • Настраиваем Windows для программирования OpenGL

                        • Tutorial
                        Пост ориентирован на новичков. В нем не рассматривается настройка Visual Studio. Он научит вас настраивать некоторые текстовые редакторы на компиляцию OpenGL приложений, либо выполнять это из консоли вручную.

                        Недавно, наконец, вышло 8-е издание книги OpenGL programming guide, которую я ждал уже более чем 2 года. Чуть раньше я познакомился с замечательным текстовым редактором Sublime Text 2 и решил настроить его вместо установки тяжелой Visual Studio.

                        Итак, для начала нам нужен компилятор — я остановился на G++. Он является частью GCC, а его порт под Windows называется MinGW. С него и начнем:
                        Пошаговые инструкции
                      • Непредсказуемый, но адекватный бот в играх

                        Рассказ пойдет о 2D играх от третьего лица (вид сверху). В основном это шутеры, но и стратегия будет тоже затронута. Для простоты сравнения и понимания мы возьмем наших любимых «котяток». Да, да, именно коты нам хорошо в этом помогут.



                        Почему коты, узнаешь под катом.
                      • Оптимизация 2d-приложений для мобильных устройств в Unity3d

                        • Tutorial
                        Недавно наша студия завершила разработку большого обновления — Captain Antarctica: Endless Run — для устройств на iOs. Кропотливая работа над обновлением затронула производительность, которая оказалась очень низкой на слабых устройствах. Я боролся с этим целую неделю и добился как минимум 30 FPS, а также значительного сокращения размера приложения. Хочу рассказать, как я это сделал, ну и как делать не стоит.
                        Статья пригодится любым разработчикам на Unity (причем не только менеджерам проектов и техническим специалистам, но и просто программистам, художникам и дизайнерам), потому что она затрагивает как оптимизацию на Unity в целом, так и конкретно оптимизацию 2d-приложений для мобильных устройств.

                        Читать дальше →
                      • Несколько подробностей об std::string

                          Недавно заинтересовался реализацией std::string в libstdc++. Не в связи с принятием нового стандарта, а чтобы разобраться. Благо требования к строковму типу почти не изменились.

                          Основным средством для анализа кода несомненно является метод пристального вглядывания, но чтобы сузить область вглядывывания и сделать процедуру более захватывающей можно реализовать для строки идиому «трассер» подсмотренную в «C++ Templates: The Complete Guide». Трассировка позволяет выявлять подозрительные интересные операции над строками.

                          Как известно, std::string это псевдоним для
                          std::basic_string<char>
                          и нам ничего не мешает определить
                          std::basic_string<X>
                          . В X можно определить несколько статических счетчиков и итерировать их в конструкторе, деструкторе и остальных методах. Выполняя разные операции над такой строкой можно будет проследить эффективность применяемых алгоритмов в терминах количества операций.
                          Кроме того, в g++ для
                          std::string a(«entrails»); 
                          выражение
                          std::cout << reinterpret_cast<char*>(*((void**)(&a))); 

                          выведет содержимое строки. Т.е. std::string — является, по сути, указателем на char.
                          Вобщем, эти и другие шокирующие поднобности под катом.
                          Читать дальше →
                        • 10 девайсов, которые вы можете проапгрейдить, немного поковырявшись с электроникой

                          • Translation

                          Правило №1 в DIY: никогда не довольствуйтесь тем, что вам дано. Вы можете проапгрейдить или улучшить все что угодно обладая скромными познаниями и приложив немного усилий, особенно если вы немного знакомы с электроникой. Под катом 10 домашних предметов, которые вы можете круто прокачать, используя капельку припоя и ряд DIY ноу-хау.
                          Читать дальше →
                        • Применение процедурных генераторов в создании контента для real-time 3D приложений: Часть 1. Oil Rush

                            Игра Oil Rush


                            В данной статье, состоящей из двух частей, речь пойдёт об использовании возможностей процедурных генераторов при создании контента для компьютерной игры Oil Rush и бенчмарка Valley (выйдет в феврале), разработанных на нашем собственном движке Unigine.
                            Читать дальше →
                          • Как выглядит беспорядок или были ли у фашистов самонаводящиеся ракеты

                            • Translation
                            13 июня 1944 года, через неделю после вторжения союзников в Нормандию, громкий жужжащий звук прогремел в небе избитого боями Лондона. Источником звука было недавно разработанное немецкое орудие войны: воздушная бомба V-1. Будучи предшественником крылатых ракет, V-1 была самоходной бомбой, управляемой с помощью гироскопов, питалась она от простого пульсирующего воздушно-реактивного двигателя, который поглощал воздух и воспламенял топливо 50 раз в секунду. Такая высокая частота пульсации давала бомбе характерный звук, зарабатывая ей прозвище «жужжащая бомба» (в оригинале – «buzz bomb» – прим. перев.).
                            Читать дальше →