Search
Write a publication
Pull to refresh
0
0
Сергей Чудаков @CSRedRat

DevOps

Send message

15000 FPS. Хардкорные трюки ч.2 — ну cовсем нестандартное окно

Reading time6 min
Views27K

Стремимся к «pixel perfect» + прячем окно от RDP!


imageЭто продолжение серии постов с префиксом «15000 FPS», начало тут: часть 1 и часть 1.5. Можно и к этому окну добиться 15К FPS, но разумный подход тут не долбить FPS в цикле Render(), а перерисовывать лишь при необходимости, а большую часть остальной работы за нас винда сама сделает. Глядя на скриншот, первая мысль кодера — «ха, да мы все умеем делать нестандартные окна!».
Но дизайнер поопытнее заподозрит неладное: тень от окна какая-то не виндовая, и вообще тут градиенты и альфа-смешивание, не обошлось без честных 8 бит на альфа-канале. Как?
А нужен только Win32 API + System.Drawing.Bitmap, работать будет даже на Win2K с .Net 2.0 и это окно великолепно и быстро масштабируется и перемещается без глюков.
«Кастомное альфа-смешивание окна на десктоп и не тормозит? Вы шутите?».
Совсем не шучу

Насколько ценно ваше время? YouTrack и Pomodoro помогут это узнать

Reading time3 min
Views25K
Сегодня мы расскажем о методе Pomodoro и о том, каким образом он поддерживается в YouTrack. Вы узнаете, насколько эффективным может быть пользовательский workflow и насколько творчески можно подойти к его использованию.

Как вы уже знаете, мы внедрили возможность управления временем в YouTrack 4.1. Наши клиенты прислали множество полезных отзывов и идей по улучшению, среди них был запрос о реализации популярного метода управления временем, разработанного Франческо Сирилло в 1980-х. По удачному стечению обстоятельств этот метод также позволяет продемонстрировать эффективность пользовательских workflow в YouTrack.

Итак, что представляет собой метод Pomodoro?
image
Pomodoro (итал. помидор) — это популярный метод отслеживания и управления временем, который позволяет определить, сколько усилий требуется для выполнения определенной задачи, а также понять, что именно прерывает вашу работу и мешает сосредоточиться. Такой подход позволяет исключить отвлекающие факторы, увеличить продуктивность и сделать время своим союзником.
Читать дальше →

Как мы приложение с Silverlight на Windows 8 портировали

Reading time6 min
Views7.5K
Недавно мы портировали на Windows 8 относительно объемное бизнес приложение — редактор диаграмм, флоу чартов и другой деловой графики. Изначально этот редактор был написан под платформу Silverlight, но мы его переписали под Windows Runtime и успешно разместились с ним в Windows 8 Store. К сожалению, стандартных контролов нам очень не хватало, поэтому попутно пришлось ещё написать свою библиотеку контролов. И теперь мы готовы поделиться опытом. В этой статье собран ряд нюансов разработки приложений под Windows 8 — от проектирования интерфейса пользователя до технических деталей по работе с DirectX.

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

13 причин не быть управленцем

Reading time12 min
Views465K
Так уж сложилось, что последние несколько лет я занимал самые разнообразные руководящие должности в полудюжине компаний, занимающихся разработкой программного обеспечения разного рода. Довелось побывать и тимлидом, и менеджером проекта, и группы проектов, руководителем отдела и руководителем технического направления; подопечных бывало от двух до ста пятидесяти человек, да и размеры компании варьировались от трёх до двухсот тысяч работников. Неизменным оставалось только одно: чисто управленческая работа, постепенный и окончательный отход от технических задач.

А сейчас, в период между Рождеством и Новым Годом, когда особенно обострена склонность к углублённой рефлексии, приходит понимание того, что, знай я некоторые «инсайдерские» подробности управленческой деятельности заранее – сделал бы совсем другой выбор лет эдак семь назад.

Вот поэтому и родился этот немного хаотичный и очень разнокалиберный список моментов, которые очень хотелось бы передать куда-то обратно, примерно в 2005 год – дайте знать, если кто-то вдруг уже научился это делать! А пока, может быть кто-то найдёт некоторые из перечисленных ниже пунктов не до конца очевидными, или даже полезными для себя; было бы приятно осознавать, что удалось помочь кому-то сделать более осознанный выбор профессии – или просто о чём-нибудь важном задуматься.
Итак, поехали

Пять причин быть управленцем

Reading time4 min
Views163K
Я прочитал пост «13 причин не быть управленцем» и хочу написать ответ.

Прежде всего хочу заметить, что доктор биологических наук Сергей Савельев в книге «Изменчивость и гениальность» говорит, что мозг каждого человека под что-то создан. Кто-то имеет мозг программиста, кто-то управленца, кто-то обе сферы может осилить. Но обычно талант вынуждает человека делать то, что ему нравится. А к чему он не создан, его радовать не будет, и в это все дело.

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

Весь вопрос в том, чтобы освоить азы профессии, и если она нравится — ей и нужно заниматься. Если нет — пробовать себя в чем-то другом.

Поэтому универсальных советов нет, каждому нужно искать свое дело.

Это было предисловие, а теперь про плюшки работы управленцем.

Итак, что в управлении проектами круто.

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

Программирование под Android для начинающих. Часть 1

Reading time5 min
Views1.2M
Здравствуйте. Сегодня на глаза попался пост о курсе программирования под Android на сайте Linux Foundation, а вместе с ним — и немало комментариев о том, что хотелось бы видеть и перевод этих уроков. Поскольку я сейчас, после четырех лет разработки под микроконтроллеры, начал изучать и программирование для мобильных устройств, то параллельно решил сделать перевод первой части урока.

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

Хитрости сисадминов

Reading time3 min
Views140K
У каждого системного администратора за время его работы накапливаются мелкие, но полезные действия, которые облегчают работу в той или иной области его ответственности. Такие действия или привычки, к которым он привык и которые он выполняет на автоматизме, могут быть не знакомы его коллегам. Поэтому в этом списке, я хочу сделать подборку некоторых своих и собранных в интернете привычек, которые могут оказаться полезными и вам.

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

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

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

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

Ищем деньги. Каталог инвесторов для стартапа

Reading time4 min
Views230K
UPD: получил инвестиции под свой проект в сфере обучения облачным технологиям

Здравствуйте уважаемые Хабравчане, особенно те, у кого есть идея своего стартапа! А вот с деньгами и осведомленностью похуже. Хочу Вам в помощь поделиться небольшой таблицей IT-инвесторов, которая была составлена для себя. Дело в том, что я также как и вы, обладаю минимум информации. Такие вопросы как: «к кому идти за деньгами», «как составить бизнес-план», и наконец «кому я вообще нужен со своей идеей» — давно стали навязчивыми.
Именно сейчас, после Новогодних праздников, самое время начать искать тех самых менторов, инвесторов, бизнес-ангелов, да и в целом зачитываться информацией на эту тему. Да, и у меня есть свой стартап, который перестал быстро развиваться и я активно ищу инвестора на дальнейшее развитие (О чем уже писал неделю назад).
Под катом таблица, со списком полезных ссылок, в помощь начинающим IT-компаниям.
Читать дальше →

Программируем на праздниках в Windows 8

Reading time2 min
Views23K
Новогодние праздники — традиционное время, когда многие разработчики по всей России радуются свободному времени и думают, что бы такого попрограммировать. Лично я живу с таким ощущением уже который год.
Поэтому решил в одном посте собрать ссылки на материалы, которые помогут начать создавать приложения для Windows 8.

Прежде всего это бесплатные электронные книги.
На русском — Разработка приложений для Windows 8 на языке C#
На английском — Programming Windows 8 Apps with HTML, CSS, and JavaScript

В одном месте — все ссылки для разработчиков, включая Windows 8, SDK и дополнительные библиотеки.
Читать дальше →

Что такое TCHAR, WCHAR, LPSTR, LPWSTR,LPCTSTR (итд)

Reading time12 min
Views349K


Многие C++ программисты, пишущие под Windows часто путаются над этими странными идентификаторами как TCHAR, LPCTSTR. В этой статье я попытаюсь наилучшим способом расставить все точки над И. И рассеять туман сомнений.

В свое время я потратил много времени копаясь в исходниках и не понимал что значат эти загадочные TCHAR, WCHAR, LPSTR, LPWSTR,LPCTSTR.
Недавно нашел очень грамотную статью и представляю ее качественный перевод.
Статья рекомендуется тем кто бессонными ночами копошиться в кодах С++.

Вам интересно ??
Прошу под кат!!!
Читать дальше →

Множественные Assertion’ы без прерываний в одном юнит-тесте на примере NUnit

Reading time4 min
Views19K


В практике юнит-тестирования часто возникает желание сделать несколько Assertion'ов в одном тест-методе. В теории же, такой подход критикуется с двух основных позиций. Во-первых, семантически, один тест должен проверять только один кейс, не разрастаться. Во-вторых, при падении одного из Assertion’ов в цепочке, выполнение теста прервется и мы увидим сообщение об ошибке лишь от него, а до всех остальных дело не дойдет, что не даст наиболее полной картины произошедшего. Первый аргумент безусловно резонен и при написании тестов его всегда следует держать в голове, но фанатичное следование этому принципу зачастую не представляется разумным (пример далее). Устранению же второй проблемы посвящен этот пост. Будет представлен небольшой класс, позволяющий просто и лаконично обеспечить исполнение нескольких Assertion’ов без прерывания выполнения метода и с выводом сообщения об ошибке каждого из них.
Читать дальше →

Тернистый путь в Windows Store

Reading time7 min
Views48K
Как и многие программисты, я с опаской относился (и отношусь) к Windows 8, но не удержался попробовать написать пару программ для Windows Store. Все-таки, это модная тенденция: .Net 4.5, C# 5, XAML.

Как раз в эти дни, 4го декабря, мне попалась на глаза статья про конкурс приложений для W8 от Microsoft. Выкладывать экспериментальные программы было как-то не серьезно (хотя маркет такими поделками буквально переполнен), потому я решился портировать достаточно масштабный проект с MonoTouch и iOS. Запаситесь попкорном, потому как кроме программистских деталей тут будет и комедия, и драма, и жизненный финал.

Поехали!

Приручаем и прокачиваем огнелиса: The Ultimate Guide

Reading time13 min
Views82K
Подчини себе этого 9-хвостого лиса

Лирическое вступление


Не люблю гонку версий, своей бессмысленностью отдаленно напоминающую гонку вооружений. Не успели как следует довести до ума текущую версию — выпускают новую, с новыми багами, уязвимостями и «особенностями». Для таких как я — любителей стабильных и проверенных решений для корпоративной среды, да и для себя тоже — у команды Мозилы есть сборка типа ESR: в течение длительного времени для нее выходят обновления, устраняющие ошибки и уязвимости, сама же major версия браузера не обновляется! Вот ссылка на страницу оф.сайта, откуда можно скачать эту замечательную ESR-версию (достигается путем не слишком очевидных ходов), также, ESR можно скачать с официального FTP ftp.mozilla.org/pub/firefox/releases/latest-esr/
Только что вышла давно мной ожидавшаяся 17-я ESR версия (предыдущая была только 10-я). В связи с этим событием решил написать подробное руководство по оптимизации нашего (не)любимого браузера — с разбором всех параметров, что каждый из них делает и откуда он получен.

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

Что нам стоит Git настроить!

Reading time3 min
Views107K

Дарова, хабр! (ничего оригинальнее не придумал)

Сомневаюсь что эта заметка тянет на полноценный пост, но я все же оставлю ее здесь. О чем же пойдет речь?

Все мы слышали о Git. Все мы знаем что он — хорош. Но лишь немногие пытаются что-то с ним делать, как-то его протвикерить. Сразу говорю, тут не будет ничего паранормального, только немного работы с файлом .gitconfig. Да-да, именно с тем файлом, который так трепетно пылится у вас в домашней директории.

Так, мне уже немного надоело писать этот, по сути, бессмысленный вступительный текст, так что давайте уже начнем что-то делать.
Читать дальше →

Что не пишут в википедии о глобальных навигационных спутниковых системах

Reading time8 min
Views46K
Вдохновлённый серией постов «Теория радиоволн», я решился на аналогичный пост о системах спутникового позиционирования. Я работаю в структуре, которая занимается обеспечением функционирования системы ГЛОНАСС, поэтому постараюсь рассказать о ней и её конкурентах с несколько другой точки зрения. Пост будет именно об их устройстве, попутно хотелось бы развеять несколько мифов.
Читать дальше →

Microsoft Reporting Services советы начинающим

Reading time4 min
Views82K

Предисловие


Исторически сложилось так, что придя на новое рабочее место, мне было поручено создать несколько отчетов используя Microsoft Reporting Services. До моего прихода, компания, в которой я работаю по сей день, использовала для построения отчетов Sybase DataWindow. Но в момент моего прихода было принято решение о переходе на Reporting Services, таким образом мне выпала честь пройтись этим тернистым путем и набить не одну шишку. В процессе создания отчетов накопилось достаточно много полезных советов новичкам, некоторыми из них хочу сегодня поделиться.
Читать дальше →

10 дистрибутивов Linux специального назначения

Reading time2 min
Views224K
Прелесть Linux в том, что можно сделать дистрибутив под любые запросы. Требуется лишь время и желание. Многие популярные дистрибутивы Linux — результат работы отдельных энтузиастов или групп, недовольных имеющимся набором опций. Вот некоторые из дистрибутивов Linux специального назначения.

1. Parted Magic OS: дистрибутив для восстановления дисков и работы с разделами, который поддерживает более десяти файловых систем и включает различные утилиты для «переноса, копирования, создания, удаления, расширения и сжатия дисковых разделов. Клонирование дисков и осуществление полного бэкапа. Тестирование дисков на возможность сбоя в будущем. Поиск сбойных секторов. Тестирование производительности компьютера. Безопасная полная очистка диска без возможности восстановления. Доступ к незагружаемым HDD для восстановления важных данных».


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

Dji — Death fails. Приквел к мультфильму Цыган (Making off )

Reading time7 min
Views27K
Это наша 4-ая по счету работа. Делали мы ее примерно полгода. Это приличный срок, и за это время у нас накопилось достаточно материала, которым мы хотели бы поделиться.

Итак, с чего все начиналось?


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

Весь этап работы над мультфильмом официально можно разделить на несколько этапов:
  1. Препродакшн
  2. Продакшн
  3. Постпродакшн

Начнем с препродакшна



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

Генератор аватарок в стиле пиксель-арт, более 40 миллионов изображений

Reading time2 min
Views101K
Привет, жители и гости хабра.
Хочу поделиться с вами одним интересным инструментом. Наша команда разрабатывала его в ходе проекта, о котором я еще расскажу. Пиксельный человек на КДПВ — результат его работы.

Мы не поленились посидеть с калькулятором и подсчитали приблизительное количество возможных изображений. Получили число чуть более сорока миллионов. Поэтому каждый может подобрать что-то на свой вкус. Картинок хватит на всех!

Итак, встречайте, 8biticon.com. Бесплатный, открытый и простой в использовании генератор аватарок.

Под катом история, описание и немного технической информации.

Интересно, что же дальше!

Information

Rating
Does not participate
Location
Пермь, Пермский край, Россия
Date of birth
Registered
Activity