пятница, 9 мая 2014 г.

Ночь удалась и программист полиглот

Практически одновременно я смог запустить хард сестры, с которым возился неделю и найти плавающий баг по работе, который искать начал две недели назад. Прямо, счастливые полчетвёртого утра!
Теперь об интересном. Замечательным у меня выдались конец апреля и начало мая: больше пятисот строк на VBA, 353 строки на C++, 1500 строк на Java, на C# посчитать не получится + выиграл очередную футболку. На этот раз от 1С :-)

воскресенье, 9 февраля 2014 г.

Тру программист

Пытаюсь заработать все достижения в StarCraft II Wings of Liberty. Застрял на достижениях, связанных с игрой Lost Viking - отсылка к популярной когда-то игре про трёх викингов, каждый со своими способностями и они должны были выбраться из той хрени в которую попали. Брату она очень нравилась раньше.
В общем, а в SC II, в Lost Viking нужно управлять как бы самолётом и стрелять во всё что движется, зарабатывая очки. Суть в том, что надо часто жать на пробел - производить выстрел. Это неудобно по нескольким причинам: во-первых, пробел на моей Microsoft 4000 громкий, а во-вторых, я не умею нажимать с такой скоростью, какую надо иметь чтобы пройти эту игру. В итоге в голове за 10 минут родилось такое прекрасное решение:

var
    wnd:HWND;
    Key:NativeUInt;
begin
    key:=VK_SPACE;
    while (true) do
    begin
        wnd:=GetForegroundWindow;
        sleep(10);
        if not PostMessage(WND, WM_KeyDown, KEY, 0) then break;
        if not PostMessage(WND, WM_KeyUp, KEY, 0) then break;
    end;
end.

Теперь клики по пробелу происходят каждые 10 мск.

Небольшой обзор SIMD в .NET

Вашему вниманию предлагается небольшой обзор возможностей векторизации алгоритмов в .NET Framework и .NETCORE. Цель статьи познакомить с эт...