15 авг. 2015 г.

Application hangs in Windows XP SP2 compatibility mode under Windows 10

Seems that WinXP SP2 compatibility mode in the new Windows 10 has some... incompatibilities. Half of the past week was spent for a struggle with a mysterious application hang. Through some experiments it was found that the hanging is a result of interaction between gdNotifierThread and assigned notifier window. Although an update of a visual control is carried through a call of Synchronize method the whole application becomes unresponsive. The problem was solved by replacement of Synchronize call with sending a custom message using PostMessage function.

One could ask what is the reason in running Gedemin in a compatibility mode in the first place. Well, this is quick and dirty solution to make Gedemin's windows look good. Newest Windows 10 display theme looks weird with a windows and dialog boxes designed in the times when Ctl3D was a first class fashion.

2 авг. 2015 г.

Web designers don’t have groupies

История с нашим новым сайтом приключилась точь-в-точь как в заметке Strategy Letter VI от Joel Spolsky:
As a programmer, thanks to plummeting memory prices, and CPU speeds doubling every year, you had a choice. You could spend six months rewriting your inner loops in Assembler, or take six months off to play drums in a rock and roll band, and in either case, your program would run faster. Assembler programmers don’t have groupies.
Мы использовали новейшие стандарты CSS3 + HTML5, в частности FLEX боксы, для реализации адаптивного веб-дизайна. Один и тот же скрипт вместе с файлом стилей поддерживают десктопную, планшетную и мобильную версии сайта. Под конец разработки выяснилось, что ни 11-я, ни 10-я версии Internet Explorer не в состоянии отобразить сайт корректно там, где Firefox и Chrome справлялись без проблем. Перспектива перепроектировать все стили и заново тестировать все страницы не радовала. В сложившейся ситуации мы решили просто подождать, пока Microsoft не решит проблемы совместимости с современными стандартами. Спустя 6 месяцев Microsoft выпустила в составе Windows 10 новый браузер Microsoft Edge, который (наконец-то!) отображает наш сайт без ошибок.

Теперь осталось дождаться когда Google исправит встроенный браузер в Android.