• Приближаясь к 3D картам



      Все ближе и ближе картостроители всего мира подбираются к созданию 3D карт. В этом в первую очередь конечно заинтересован google со своими карто-проектами. Пытается не отставать и microsoft, но теперь вперед вырвался тот, чье имя врядли было у всех на слуху — компания из Швеции — C3 Technologies.
      Дальше
    • Программируем Windows 7: Taskbar. Часть 10 (заключительная) – JumpLists

        Одной из важнейших функций панели задач в Windows 7 являются Jump Lists. Jump lists отображаются, если выделить значок приложения в панели задач и нажать правую кнопку мыши. Если приложение использует функциональность JumpLists, то кроме стандартных действий (pin, close) появятся еще ряд дополнительных действий, которые облегчают нашу повседневную работу.

        Этой функциональностью панели задач активно пользуются различные приложения. Например, Windows Media Player отображает опции переключения плейлистов. Internet Explorer и Windows Explorer содержат в jump lists с сылками на последние места, куда вы заходили. Windows Live Messanger отображает опции переключения состояния.

        Читать дальше →
      • Программируем Windows 7: Taskbar. Часть 7 – ThumbnailClip

          Как мы уже видели, Windows 7 обладает удобной функциональностью по отображению preview окон приложений. При наведении мыши на значок окна в панели задач можно посмотреть уменьшенное представление окна за считанные секунды. Это очень удобно когда у пользователя открыто большое количество окон.

          По умолчанию в этих preview отображается все содержимое окна. Однако, для некоторых приложений было бы гораздо удобнее показывать в preview не все содержимое окна, а только его часть. Такая функциональность также предусмотрена для панели задач Windows 7 и мы можем использовать ее для своих приложений. Давайте разберемся с этой возможностью панели задач Windows 7.

          Читать дальше →
        • Программируем Windows 7: Taskbar. Часть 8 – IconicThumbnail

            Недавно я рассказал о том, каким образом можно влиять на preview окна в панели задач Windows 7. Тогда мы отображали только ту часть окна, которая наиболее важна для пользователя. Тем не менее в определенных ситуациях гораздо полезнее может быть отображение не части окна, а совершенно другая картинка, отображающая состояние приложения.
            Читать дальше →
          • Программируем Windows 7: Taskbar. Часть 6 – AppId

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



              Такого же эффекта можно добиться, если мы запустим несколько экземпляров одного и того же нашего приложения. В этом случае Windows 7 определит что это одно и то же приложение и сгруппирует окна в один значок.
              Читать дальше →
            • Программируем Windows 7: Taskbar. Часть 5 – CustomWindowsManager

                Мы продолжаем изучать возможности панели задач в Windows 7. Наверняка все вы обратили внимание на то, что если одно и то же приложение запустить несколько раз, Windows 7 автоматически сгруппирует их в одну кнопку на панели задач. Кроме того при наведении на значок этого приложения панель задач покажет набор preview для этих окон.

                Однако, мы видим, что такое же поведение реализовано для открытых вкладок в Internet Explorer 8. В этом случае фактически запущен один экземпляр IE8 (технические детали мы опустим) и много вкладок. В этом случае Internet Explorer отображает их в виде нескольких preview. В данном случае это очень полезно, т.к. прямо из панели задач можно сразу переключиться на нужную вкладку.

                Читать дальше →
              • Программируем Windows 7: Taskbar. Часть 3 – OverlayIcon

                  На этот раз мы поговорим о другой особенности панели задачи Windows 7 – OverlayIcon. Эта возможность исключительно полезна для приложений, которые обладают каким-то состоянием с точки зрения пользователя.

                  К таким приложениям можно отнести программы для обмена мгновенными сообщениями (IM). Например, Windows Live Messanger активно использует эту возможность. Например, если мы откроем WLM и будем изменять состояние, то можно увидеть как оно отображается на панели задач.



                  Читать дальше →
                • Программируем Windows 7: Taskbar. Часть 4 – Custom OverlayIcon

                    Ранее я писал о том, как можно добавить значок состояния для вашего приложения в панели задач Windows 7. Мы рассматривали статические изображения для этих целей. Напомню, что для этого мы использовали метод SetTaskbarOverlayIcon, в параметрах которого передается ссылка на Icon.

                    Однако, один из читателей блога предложил другой сценарий, в котором на месте дополнительной иконки отображается какая-то информация. К примеру, это может быть текущая скорость закачки, если ваше ПО что-то загружает по сети.
                    Читать дальше →
                  • Программируем Windows 7: Taskbar. Часть 2 — ThumbButtons

                      Недавно я рассказывал о том, как в Windows 7 можно отображать прогресс выполнения операции прямо в панели задач Windows. На этот раз мы продолжим разговаривать про возможности Windows 7 для программиста и рассмотрим возможность добавления собственных кнопок управления в preview окна.

                      Читать дальше →
                    • Программируем Windows 7: Taskbar. Часть 1 — Progress Bar

                        Новая операционная система Windows 7 содержит большое количество нововведений и улучшений. Эти улучшения касаются безопасности, производительности, надежности и т.д. Серьезное внимание также уделено и пользовательскому интерфейсу. Для разработчиков ПО на платформе Windows новая ОС также представляет интерес, т.к. в ней содержатся элементы, на которые можно воздействовать программно. В течении нескольких постов мы поговорим об основных нововведениях и программной модели для них.

                        Читать дальше →
                      • Программируем Windows 7: Taskbar. Часть 9 – PeekBitmap

                          Ранее я писал о возможности панели задач Windows 7 изменять preview для окна. Мы говорили о том, что в preview можно отображать как часть окна, так и собственное изображение. У Windows 7 есть такая приятная особенность, что если мы наведем курсор мыши на preview окна, то все остальные окна скроются, а выделенное окно будет отображаться. Выглядит это следующим образом.

                          Читать дальше →
                        • HOWTO: свой бизнес в США из России

                              Наверняка многие из нас хоть раз думали про себя: «Черт побери, и везет же этим американцам!». Это касается многого, от магазинов с доставкой «только в пределах 48 континентальных штатов» до вполне серьезных контрактов, которые срываются только потому, что потенциальный заказчик в США категорически не желает иметь дело с иностранцами.

                              В этой статье я попробую осветить процесс создания и администрирования американской корпорации для резидента РФ. Наверняка многие из фактов для самих американцев покажутся тривиальными, однако для жителя России все куда сложнее — увы, это данность. Чтоб не сказать — это Родина, сынок. Оговорюсь сразу — я все это проделал более 2 лет назад, так что, некоторые детали могут быть не совсем актуальны. Но вряд ли что-то поменялось принципиально.
                          Читать дальше →
                        • Знакомимся с PayPal API

                            На данный момент, PayPal — это самая популярная платформа электронных платежей. Именно то, насколько легко можно открыть счет и начать получать на него средства, по сравнению с традиционными способами получения платежей, и является причиной #1 его запредельной популярности. Второй причиной, многие со мной согласятся, является мощный API, предоставляемый PayPal. В этом топике я по порядку разложу все способы и трюки, связанные с работой PayPal API, чтобы вы избежали проблем с его интеграцией.
                            Читать дальше →
                          • Почему фрилансер и заказчик часто считают друг друга идиотами

                              Мне повезло: я побывал по обе стороны баррикад и теперь знаю, что и как делает заказчик на проектах разного уровня и что делает фрилансер, чтобы получить или провалить такой проект. В итоге я уверен, что 95% фрилансеров говорят с заказчиком на разных языках.

                              Осторожно, butthurt.

                              Читать дальше →
                            • Введение в Wacom Javascript API

                                image

                                Wacom Javascript API позволяет приложению получить разные интересные параметры текущего состояния планшета. Например, силу нажатия или координаты ручки относительно планшета. А так же статические данные, такие как версия плагина или модель планшета.

                                В данном Хабратопике я покажу, как работает данный API, на примере HTML5 Canvas «рисовалки».

                                Читать дальше →
                              • Фильтрация изображений методом свертки

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

                                  Введение.


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

                                  Что же там дальше?
                                • Максимальный поток минимальной стоимости

                                    Транспортная задача (классическая) — задача об оптимальном плане перевозок товара со складов в пункты потребления на транспортных средствах.

                                    Для классической транспортной задачи выделяют два типа задач: критерий стоимости (достижение минимума затрат на перевозку) или расстояний и критерий времени (затрачивается минимум времени на перевозку).

                                    Под катом очень-очень много текста, т.к. рассказывается один из вариантов решения данной задачи «в картинках» для тех, кто мало знаком с графами. Листинг прилагается.

                                    Путешествие в тысячу миль начинается с первого шага
                                  • Определяем порядок столбцов в составном индексе

                                    • Перевод
                                    Хочу поделиться простым эмпирическим методом, который я использую для определения того, в каком порядке должны идти столбцы в составном индексе. Этот способ подходит не только для MySQL, он также применим к любым СУБД, в которых используются b-tree индексы.

                                    Давайте начнем с запроса, который возвращает пустой результат, но при этом делает полный скан таблицы. EXPLAIN покажет на нем, что нет доступных индексов (т.е. possible_keys = NULL)

                                    SELECT * FROM tbl
                                    WHERE
                                      status='waiting' AND
                                      source='twitter' AND
                                      no_send_before <= '2009-05-28 03:17:50' AND
                                      tries <= 20
                                    ORDER BY date ASC LIMIT 1;
                                    Читать дальше →
                                  • Memcached — стратегия кеширования

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

                                      Memcached применяется для кеширования данных. Это делается для того, чтобы избежать лишних обращений к базе данных, т.е. в Memcached сохраняют результаты запросов. Это ускоряет работу сайта и уменьшают время выдачи страниц.
                                      Кеш кроме преимуществ имеет свои недостатки. Одна из проблем кеша — это его актуальность. В режиме работы «только чтение» трудностей не возникает. Если же мы имеем дело с данными, которые изменяются, или изменяются часто, то эффективность кеширования резко падает.
                                      Читать дальше →