Здравствуйте, Sharov, Вы писали:
__>>однажды, когда мы собеседовали похожего чувака, после разговора мой куда более опытный коллега, сказал: к такому возрасту и с таким опытом у человека должны быть какие-то уже существенные достижения. если их нет, то он из тех, кто приходит в офис греться у батареи и досиживать до пенсии.
S>Что такое существенное достижение? Свой какой-то проект, которые еще кому-то нужен? Грамота на стене или что?
есть стандартный вопрос — каким проектом бы больше всего годитесь? на самом деле вопрос с подвохом — если человек называет недавний проект, значит, он развивается как профессионал и постоянно идет на уровень выше, если же это какой-то старый проект, то человек застрял в развитии
__>>чисто теоретически могу сказать, что интерес к жизни, наверное, может показать какой-то свой собственный проект S>Как оценить существенность своего проекта?
да по разному можно
один мой знакомый, например, гуй андроидный писал — чекбоксы там стандартные и т.д, что много людей видят каждый день
другой в компиляторе MS оптимизацией занимался
третий data scientist проанализировал рынок и поднял выручку конторы на 40%
четвертый писал самый апопулярный коммерческий HEVC энкодер
пятый программировал FPGA для ракет
Здравствуйте, CreatorCray, Вы писали:
CEM>>Это интересно. Потому что во времена XP я как раз использовал DX2D чтобы получить более быстрый доступ к экрану, и тогда это отлично работало. CC>Ты с DirectDraw не путаешь? CC>Direct2D появился с Vista а для HW acceleration требует WDDM 1.1 (W7+)
А, да, путаю, давно это было
Здравствуйте, CreatorCray, Вы писали:
CEM>>У меня была 2D графическая библиотека своя, скейл, повороты, фильтры. CC>А GDI каким боком там была?
Через него всё рисовалось, HDC/GetDeviceBits/BitBlt.
CEM>>40 fps на моём старом лаптопе она держала. CC>Самая медленная часть в любом рендерере это рендеринг векторных шрифтов.
Я сделал пререндеринг шрифтов, чтобы экономить. У меня много времени уходило на поиск пути, на AI и на разворот спрайтов.
Здравствуйте, CEMb, Вы писали:
CEM>>>У меня была 2D графическая библиотека своя, скейл, повороты, фильтры. CC>>А GDI каким боком там была? CEM>Через него всё рисовалось, HDC/GetDeviceBits/BitBlt.
Если ты байтики вручную обрабатывал то GDI тут мало каким боком — просто передать вручную посчитанный результат в видюху.
У тебя SW rendering был по сути.
CEM>Я сделал пререндеринг шрифтов, чтобы экономить.
Для игр практически всегда так и делают.
Здравствуйте, CEMb, Вы писали:
CEM>Я сделал пререндеринг шрифтов, чтобы экономить. У меня много времени уходило на поиск пути, на AI и на разворот спрайтов.
О, да! У меня эта часть вообще на ассемблере была сделана — летало всё. Но с переходом на Direct3D стало проще и это дело ушло в прошлое.
Здравствуйте, CreatorCray, Вы писали:
CC>>>Можно пример того самого современного UI "с овальчиками"? SVZ>>"С овальчиками" у меня нет, но есть другой пример. SVZ>>Штатные средства WinAPI не заточены для flexible layout'а. CC>Какие штатные средства и что понимается под flexible? Как то уж слишком расплывчато, нельзя ли конкретики?
Дискуссия началась с вопроса "а что такого революционного дают всякие Qt".
Я же пытаюсь расширить ответ Окона про "типовой GUI в коммерческих продуктах это не совсем стандартные контролы".
В большом проекте, помимо нестандартных контролов, кастомного отображения стандартных (та самая "цветная кнопка"), возникают еще и resizeable диалоги (АКА forms).
Resizeable диалоги на чистом WinAPI доводилось делать? То еще развлечение.
В сторонних фреймворках, особенно, когда все контролы windowless, это всё реализуется из коробки, просто и быстро.
И рисуется шустро, без тормозов.
В WinAPI можно сделать быстро, но придется закатывать солнце вручную.
Микрософт развивает GUI API только в сторону .NET, а нативная разработка осталась в стороне.
_____________________
С уважением,
Stanislav V. Zudin
Здравствуйте, sergey2b, Вы писали:
S>>>потому что на последней работа начальник на цыпочкаах подкрадывался сзади S>>>и начинал громко возмущаться если на экране не раабота
S>>Мрак... Ну хоть палкой не били.
S>Я к одним пришёл на собеседование S>Они говорят мы хотим что бы вы писали тест в vim S>Я им я его не знаю S>Они вот вам инет на полчаса изучайте
Я бы все-таки попробовал изучить и сделать. Хотя странно, почему не современные ide.
Здравствуйте, __kot2, Вы писали:
S>>Как оценить существенность своего проекта? __>да по разному можно __>один мой знакомый, например, гуй андроидный писал — чекбоксы там стандартные и т.д, что много людей видят каждый день __>другой в компиляторе MS оптимизацией занимался __>третий data scientist проанализировал рынок и поднял выручку конторы на 40% __>четвертый писал самый апопулярный коммерческий HEVC энкодер __>пятый программировал FPGA для ракет
Так это же работа, а не хоббийный проект. Или рассказать о своем вкладе?
Здравствуйте, sergey2b, Вы писали:
S>Я к одним пришёл на собеседование S>Они говорят мы хотим что бы вы писали тест в vim S>Я им я его не знаю S>Они вот вам инет на полчаса изучайте
Сергей, вот честно, ты прям такой жесткач рассказываешь, я ХЕЗ как такое найти вообще можно...
С++ народа на рынке вообще нет, молодежь учит только МЛ/Питон/Дата сайенс, самые толковые — JS/front-end. Друзья-знакомые рассказывают — в обычных конторах прямо праздник когда С++ сеньора удается нанять. Я за полгода с полсотни человек прособеседовал, было только пару С++ сеньоров из индийских бодищопов, совсем никакие.
Молодежь приходит и уходит в Микрософты и Амазоны, даже самая бестолковая — я ХЕЗ как у них получается проходить собеседования, учитывая что люди за два года не могут ни С++ ни JS выучить чтоб хоть как-то пользу приносить.
Здравствуйте, Sharov, Вы писали: S>Так это же работа, а не хоббийный проект. Или рассказать о своем вкладе?
я знаю много людей, которые считают, что работа это баги фиксить. ну, это тоже работа — во многих крупных конторах полно саппорта, которым никто не хочет заниматься.
но на самом деле людям бывает обычно просто в лом проявлять какую-то инициативу и они предпочитают просто ходить и жаловаться, что на работе скука, заняться нечем, это же не хоббийный проект. такие проходят собеседование только в саппорт. выйти из саппорта сложновато.
Здравствуйте, __kot2, Вы писали:
__>Здравствуйте, Sharov, Вы писали: S>>Так это же работа, а не хоббийный проект. Или рассказать о своем вкладе? __>я знаю много людей, которые считают, что работа это баги фиксить. ну, это тоже работа — во многих крупных конторах полно саппорта, которым никто не хочет заниматься. __>но на самом деле людям бывает обычно просто в лом проявлять какую-то инициативу и они предпочитают просто ходить и жаловаться, что на работе скука, заняться нечем, это же не хоббийный проект. такие проходят собеседование только в саппорт. выйти из саппорта сложновато.
что мне ттеперь говорить если я 2.5 года фиксил баги пока ждал GC
минимум 4 раза подходил к начальнику и говорил дайте нормальный проект, я буду оставаться и после работы делать
закономерно что когда мне в очередной раз отказали написал заявлление об увольнении
но как вы выше написали все проекты которыми я горжусь сделанны до 13 года ( 13-15 было два нормальных проекта но не рокетсайнс )
Здравствуйте, CEMb, Вы писали:
... CEM>Теперь про WinAPI. Главная мысль ТС была именно про GUI, так ведь? Моё личное убеждение (которому я иногда даже 100% следую) — отделение в коде UI в прослойку. В идеале я вообще сначала пишу консольное приложение с командами (да, я такой), потом сверху обкладываю это более высоким UI.
+100500
Решение верное — для любой технологии.
CEM>Почему я не беру QT? В своё время QT был платный,
...теперь есть и вариант бесплатной (open-source) лицензии...
CEM>у него была странная IDE,
QtCreator — хорошая IDE. Но никто не заставляет тебя его использовать!
Если пишешь коды в серде Windows — используй привычную MSVS. Установи только Qt Vs Addin (это такой плагин к вижуал студии — для поддержки Qt).
CEM>странная манера без спроса инсталлироваться прям в корень, тяжёлые приложения (рантайм на борту).
Возможностей НЕ-топового железа (даже 5-летней давности) хватит за глаза.
CEM>В общем, не пожилось. Кроме того, у меня все юзеры под виндой, мне кроссплатформа не нужна, поэтому переносить/писать заново много кода ради кроплатформенности — никому не нужно. Мне всё ещё охота посмотреть Qt, и может быть даже всё писать на нём, я не знаю, очень может быть, что это правильное решение. Но, блин, я работаю в очень большой конторе, мне надо будет как-то обосновать для нашей медленной бюрократии, чтобы мне выдали лицензии и возможность делать софт в промышленных масштабах.
Не нужно тебе никаких лицензий — бери бесплатный опен-сорц и изучай! Пригодиться!
CEM>Я не помню, чтобы у меня были какие-то проблемы с WinAPI. При этом я вот сейчас не уверен, что Qt без лишних проблем быстро умеет работать в лист размером в 1 млн записей(это вот прям сщас реальная задача). Нет, если сможет, то всё ок. А если я сейчас переведу код на Qt, а потом выяснится, что он что-то не умеет, мне придётся ещё решать проблемы Qt. Если у меня были проблемы с WinAPI, то прелесть WinAPI в том, что его внутренний механизм очень сильно прозрачен (да даже исходники есть, если на то пошло) и все вопросы быстро решаются. И я знаю, что у некоторых фреймворков есть нерешаемые проблемы, или обкладывание граблями. Надо рисковать/изучать, а на это надо время (рабочее) которого не так-то и много.
Для Qt — также открыты все исходники.
Притом в Qt проблем (ИМХО) на порядок или даже два меньше, чем в том же WinAPI.
Тем более, если времени на работе не так много — то изучение и применение Qt сможет сэкономить твоё время.
P.S. Раньше (лет 5-ть назад) я также не верил в полезность Qt. Я разрабатывал тогда софт в основном на C++ MFC.
Но три с половиной года назад познал Qt — и c тех пор я не хочу слышать ни про WinAPI, ни про MFC
Здравствуйте, sergey2b, Вы писали: __>>но на самом деле людям бывает обычно просто в лом проявлять какую-то инициативу и они предпочитают просто ходить и жаловаться, что на работе скука, заняться нечем, это же не хоббийный проект. такие проходят собеседование только в саппорт. выйти из саппорта сложновато.
причем я не говорю что это плохо. у меня лучший друг такой же, например. они поддерживают старый кал на wxwidgets, я ему говорил пусть берет инициативу и в веб это все переносит, если ему не нравится в копрокоде баги фиксить. нет, не хочет. хотя, конечно, от начальства тут тоже много что зависит
причем я за обедом как-то разговорился с их начальником и говорю — а почему вы там и так не сделаете. тот на меня глаза выпучил и говорит: я ровно в этом направлении и пытаюсь копать, никто не хочет браться
S>что мне ттеперь говорить если я 2.5 года фиксил баги пока ждал GC
а я вот не дождался и ушел через полтора. кто вас заставлял сидеть ждать 2.5 ?
S>минимум 4 раза подходил к начальнику и говорил дайте нормальный проект, я буду оставаться и после работы делать
так не надо подходить и просить дайте, надо подходить с конкретной инициативой и говорить — смотрите, если мы сделаем это, то нам за это будет то и то
я, например, сейчас пытаюсь изменить стандарты дизайна и тестирования кода. представляете себе, насколько это сложно?
S>закономерно что когда мне в очередной раз отказали написал заявлление об увольнении
а смысл уходить в никуда? это что за "ой, всё"?
S>но как вы выше написали все проекты которыми я горжусь сделанны до 13 года ( 13-15 было два нормальных проекта но не рокетсайнс )
ну и нормально
Здравствуйте, sergey2b, Вы писали:
S>что мне ттеперь говорить если я 2.5 года фиксил баги пока ждал GC S>минимум 4 раза подходил к начальнику и говорил дайте нормальный проект, я буду оставаться и после работы делать S>закономерно что когда мне в очередной раз отказали написал заявлление об увольнении S>но как вы выше написали все проекты которыми я горжусь сделанны до 13 года ( 13-15 было два нормальных проекта но не рокетсайнс )
Это, ценность человека для бизнеса определяется его способностью и желанием решать проблемы для бизнеса.
На собеседованиях и в резюме — надо рассказывать о том какие ты проблемы решал.
Чем "фиксил всякие баги" отличается от "делал всякие проекты и фичи"? Please elaborate, как говорят буржуи.
Про фикс некоторых багов можно целые книги писать. Люди которые хорошо умеют в отладку, рефакторинг и юнит-тестинг ценятся везде.
Здравствуйте, __kot2, Вы писали:
__>я знаю много людей, которые считают, что работа это баги фиксить. ну, это тоже работа — во многих крупных конторах полно саппорта, которым никто не хочет заниматься. __>но на самом деле людям бывает обычно просто в лом проявлять какую-то инициативу и они предпочитают просто ходить и жаловаться, что на работе скука, заняться нечем, это же не хоббийный проект. такие проходят собеседование только в саппорт. выйти из саппорта сложновато.
А какие варинаты у таких людей? Ну проявит инициативу, сделает что-нибудь на его взгляд полезное, потом это уберут в стол да еще наорут, мол чем занимался, почему баги не фиксил. Хотя инициативу проявил, взял что-то на себя,
а всем оказалось пофиг. Все-таки должна быть соотв. атмосфера, какая-то инициатива должна исходить и от начальства тоже. А то вот Сергея почитать в этой ветке от предд. работе и волосы дыбом -- иди и фикси баги и ни-ни.
Здравствуйте, Sharov, Вы писали: S>А какие варинаты у таких людей? Ну проявит инициативу, сделает что-нибудь на его взгляд полезное, потом это уберут в стол да еще наорут, мол чем занимался, почему баги не фиксил. Хотя инициативу проявил, взял что-то на себя,
самая неожиданная похвала в мой адрес на прошлом месте работы звучала как "благодаря тебе мы стали делать многие вещи по-другому". я вот сейчас вот только задумался, что мой основной программисткий талант — это уметь убедить всю остальную компанию делать вещи так, как я считаю нужным
S>а всем оказалось пофиг. Все-таки должна быть соотв. атмосфера, какая-то инициатива должна исходить и от начальства тоже. А то вот Сергея почитать в этой ветке от предд. работе и волосы дыбом -- иди и фикси баги и ни-ни.
это занимает года разного рода политики, убеждения на примерах и совершенно бесполезно пытаться переубедить всех. нужно найти союзников и работать с ними. русские люди в основном делают все очень топорно и потом обижаются. я ни одного такого случая не знаю, чтобы вы себе врагов не заработали, пытаясь что-то сделать лучше в компании. ну это тема отдельная и большая.
самая плохая черта людей, которые любят обижаться на начальство и обстоятельства — это упертость и неумение видеть и признавать собственные ошибки. работать с такими людьми совершенно невыносимо.
F>Молодежь приходит и уходит в Микрософты и Амазоны, даже самая бестолковая — я ХЕЗ как у них получается проходить собеседования, учитывая что люди за два года не могут ни С++ ни JS выучить чтоб хоть как-то пользу приносить.
Возможно, они не рассматривают вашу контору как перспективную.
Устраиваются, по рабочим обязанностям делают что-то кое-как лишь бы не выгнали. То, что для вашей работы нужно, отдельно не изучают. А учат то, что нужно для устройства в FAANG.
Здравствуйте, sergey2b, Вы писали:
S>Я к одним пришёл на собеседование S>Они говорят мы хотим что бы вы писали тест в vim S>Я им я его не знаю S>Они вот вам инет на полчаса изучайте
Если нужно поправить скрипт или конфиг на удаленном компе (например, в AWS instance), то vim- самый простой вариант. Запомнить :w, :q, /<поиск> N P — это всё.
$>Здравствуйте, sergey2b, Вы писали:
S>>Я к одним пришёл на собеседование S>>Они говорят мы хотим что бы вы писали тест в vim S>>Я им я его не знаю S>>Они вот вам инет на полчаса изучайте
$>Если нужно поправить скрипт или конфиг на удаленном компе (например, в AWS instance), то vim- самый простой вариант. Запомнить :w, :q, /<поиск> N P — это всё.
да именно так, еше vy and p
на собеседовании они давали задачки вырви глаз на оптимизацию функций по скоростти, во что функция скомпилируеться, сколько тактов выполняеться код
в том числе с подсчетом битов и оборачиванием байтов в long ))