Как стать автором
Обновить
25
0
Алексей @lxsmkv

тестировщик-автоматизатор

Отправить сообщение
data scientist'y такая шпаргалка не (должна быть) нужна. Они дышат этими распределениями.
хотя кошка, она то подкрадывается, то напрыгивает на бантик, значит тоже варьирует «план» действий. Планирует значит. Вообще планирование сложная когнитивная задача, поэтому у меня сомнения. С одной стороны мозг не любит сложностей, с другой планирование для него увлекательно?
Отчего кошка бегает за бантиком на нитке? Это какая-то имитационная игра. Мы не можем сказать, что кошке это интересно из-за возможности планирования. Значит планирование не может быть единственной, либо основопологающей причиной интереса к игре.

Есть еще какой-то аспект. Что общего между майнкрафтом, беганием за бантиком на нитке, марио, автомобильной гонкой, скайрим и лотереей? Я думаю тут важную роль играет получение вознаграждения. Я сам писал маленькие обучающие игры, и мотивация самым простым путем достигается вознаграждением — ты хочешь что-то получить. Звездочки, кружочки, баллы, что-угодно, но это должно присутствовать. В играх типа Dear Esther (сам не играл, но предствляю что там нужно разгадать тайну, которая скрыта в этом мире) тоже присутствует вознаграждение. Когда игрок раскрывает очередную часть тайны, это и есть его вознаграждение.
Возьмем гипотетическую игру, ты находишься в пустом кубическом пространстве, сером кубе. Ты будешь по началу бегать и пытаться найти «секрет». Когда ты поймешь, что секрета нет, наступит отчаяние. В майнкрафте вознаграждением является «собственность» которую мы создаем. В гонках понятно, это баллы, время, место.

Любопытно что если мы будем получать награду ничего для этого не делая мы не будем воспринимать происохдящее как игру. Значит элемент участия, «быть причиной вознаграждения» — это важный фактор.

Все, мысль кончилась пока…
По теме:
Мне кажется это усилит/поддержит гипотезу эффективного рынка. Т.е. в принципе это хорошо, когда в этом не будут участвовать люди. Но может получиться борьба искусственных интеллектов. В теории ИИ может обладать полной информацией. На практике от качества ИИ будет зависеть доступная ему информация, т.е будет информационная ассимметрия, даже возможно большая чем в случае с людьми.
Как один ИИ может вв принципе систематично обыгрывать другой в игре «монополия», так и на бирже может произойти тоже самое.



[Ирония:] Представляю как в будущем вся биржевая торговля ведется только ИИ. Если соединить это с «умными контрактами», то деятельность искусственных биржевых маклеров сможет проходить полностью автономно, годами. И в один прекрасный день сообщение в новостях «Государство обанкротилось по причине программной ошибки»
Раньше из-за программных ошибок теряли миллиарды и несколько человеческих жизней, а в будущем можно будет потерять целую страну [/Ирония]
Спасибо за замечание, не знал.
Я про то, что можно было бы хотя бы серебристо-серой пленкой обклеить нижнюю четверть стекла, и оно уже не бросалось бы так в глаза. И еще теплоотражающий эффект возможно был бы.
А, вот теперь я понял где пробел.
Теперь отправляем на наш upload_url отправляем POST-запрос с полем photo в формате multipart/form-data, точно также, как и с любыми документами.
На правах того, что это туториал:) хотелось бы пример запроса.
т.е. по сути мы пишем сервис/программу которая будет переодически делать на статический урл запрос с новыми данными? шестизначные суммы? Ну там наверно еще обертку для удобного пользования делают (админку), и аггрегатор информации которая рендерится в картинку, а это уже тянет на пару тыщ долларов.

На правах того, что это туториал, задам вопрос:
https://api.vk.com/method/photos.saveOwnerCoverPhoto?hash=HASH&photo=PHOTO&access_token=ACCESS_TOKEN&v=5.65

Как выглядит параметр PHOTO? Это кодированное содержание файла, это url ссылка, это путь к файлу на диске? Немного не ясно. Полный пример был бы полезен.
ну так и получается что меня ценят потому что больше эту работу делать некому. Нехочется и неумеется. Я на перекурах коллег подкалываю, когда они мне начинают жаловаться на свои проблемы: «давай меняться ты будешь писать тесты, а я ..» — «не-не-не, давай не будем..». Даже джуны которые по началу просто стонут от сложности системы, не хотят попробовать автоматизацию. Хотя само программирование в автоматизации проще, но нужно дофига держать в голове и постоянные расспросы, выяснение, что да как в системе поменялось.
Мне кажется просто есть люди которые хотят работать nine-to-five и те, кто работают ради успеха проекта. Есть люди которые когда нет задач сидят и валяют дурака, а другие проявляют инициативу. И это не от позиции зависит, а от человека. У меня колеги спрашивают, зачем я читаю дома рабочую почту. Я им объясняю, мол если мы в пятницу сломали билд перед уходом с работы, можно его починить до девяти утра понедельника, это сэкономит один день (у нас ежедневные билды) — они не понимают, зачем такие лишения. Так же быть в курсе, что тебя ждет на работе перед началом работы, позволяет расставить приоритеты заранее, и тратить меньше времени на «разгон». К сожалению автоматизация хоть и является желанием заказчика, но мой ПМ сказал, что это хоть и важная работа, но не первостепенная. Оно понятно, первостепенен продукт, он приносит деньги. И тут выделить собственную незаменимость трудно. Ведь в принципе никто не незаменим. Поэтому я просто делаю объем рассчитаный на троих человек.
И мне кажется, что уважение коллектива ко мне за последние пол года выросло в разы. Раньше ко мне отностились типа " ты кто? ты тестировщик, вот и иди нафиг, тестировщик" (ну в шутку конечно), а теперь прислушиваются, сами приходят за советом. Осталось это как-то в денежный эквивалент перевести :)
Очень познавательно, вообще, что из себя представляет «взлом».
увидел отопительную батарею за стеклом на фотографии мэрии — совок неистребим.
Я постоянно советую инженерам в своих командах переключатся на новые задачи и развиваться профессионально.

Вот как-то я себе не могу представить как это в жизни происходит. У тебя спектр задач, например в моем случае автоматизация тестирования. Мой тимлид не против если я буду помогать в разработке, но это я могу делать только в том случае, если основная работа от этого не будет страдать.Так? Никто не скажет мне, «Алексей, харе уже тесты писать, засиделся совсем, лица нет, давай развейся, попрограммируй на яве, а тесты за тебя ..» вот в том-то и дело что твою основную работу за тебя никто делать не будет. Ротация задач, не уверен что работает. Я не смогу сходу писать/чинить приложение как это делает опытный разработчик, а разработчик не сможет писать/чинить тесты с той же эффективностью как это делаю я. Все в силу набранного опыта. Так что все эти предложения о смене спектра задач, ни к чему не приводят. Хотя на словах очень красиво, каждый мог бы каждого подменить. И какое-то лукавство в этом есть. Зачем мне чтобы меня кто-то мог подменить, да? Job Safety Index нужно держать на уровне. И даже понимая, что JSI — глупость в широком плане, но такое поведение — часть человеческой природы. И самый ярый альтруист не станет делать что-то во вред себе. И каждый боится, что с дополнительным навыком на него лягут и дополнительные задачи/обязанности. Гарантий-то никто не дает. Поэтому все готовы друг другу помогать, но никто не хочет мерять на себя чужой хомут. Такое вот равновесие Нэша.
кэп-то кэп, однако по сей день, к сожалению, случается, что тестируемость не закладывается в архитектуру системы. И видимо до сих пор понимание такой необходимости не просочилось во все мозги.
Планы бесполезны, но важны

это неудачно перефразированая цитата Д.Д. Эйзенхауэра:
Plans are worthless, but planning is everything
Не знаю, немецкие врачи даже анализы не берут если их об этом не попросить. А если ты за прием платишь сам, а не страховка, то они сделают любые анализы вплоть до ДНК.
Зачем им высокие технологии, если они и без них нормально могут принимать решения. Назначаешь лечение, если не помогло — придет еще раз, а если не придет, то, либо помогло, либо кони двинул.
Если вы беспокоитесь о собственной бездарности, то вы уже не так бездарны. © Я
Спасибо за дополнение, а то мой комментарий прозвучал немного бескомпромиссно.

Мой «кумир» из-за которого я вообще пошел в профессию — James Bach. Послушав его лекции, сложилась картина, что можно стать «ниньзя-тестировщиком» (вот как-то так я себе его представляю). Это не значит конечно, что нужны только такие специалисты, это просто такой продвинутый уровень квалификации, который как мне кажется нарабатывается только опытом. И опытом в конкретном проекте. Но я точно знаю, что есть те кто стремятся стать такими высококлассными тестировщиками, а есть те кто предпочитают оставаться «обычными». А может быть опыт тоже такая штука что нарабатывается он всеми а усваивают его не все. Я пока не понял как это работает. Почему одни стремятся стать лучше а потом еще лучше, а другие остаются на своем уровне навыка и не страдают.
Я никогда не ставлю себе прямую задачу найти ошибку. Иногда меня просят потестировать какой-то кусок программы, и я знаю какую последовательность действий выполнить чтобы увеличить вероятность выявления ошибки. Чтобы выявить ошибку, нужно понимать, как устроена программа внутренне, как взаимодействуют ее части. Это как тестировать спичечный домик. Можно его сжечь и сказать, что он не огнеустойчив, но это бесполезный тест, если он не является прямым требованием. Но то что спичечный домик можно сжечь ясно и без теста. А требовать от спичечного домика быть огнеустойчивым — безумие. С другой стороны, инженер, понимающий как он собран, будет искать места где неровно стоит спичка, так что зацепив ее можно развалить его полностью. Так вот в моем понимании, хороший тестировщик знает за какую ниточку стоит тянуть, а за какую не стоит. Ему не нужно рисовать матрицы эквивалентных классов, не нужно составлять комбинаторные таблицы. Они у него подвешены на интуиции, он проведет три теста, и скажет — все нормально или найдет проблему. И если он проблемы не выявит, это не значит что ее нет, это значит что за 20 % времени он проверил 80 % приложения. И такой тестировщик ценен. Он добивается приемлемого качества за короткий отрезок времени. Правильный тестировщик напишет очень много разных «тестов для карандаша», отличный тестировщик сделает два-три теста и скажет «окей» или нет. И в этом «окей» будет всё. Это будет уверенность в том, что оно действительно «окей». В свою оценку он вкладывает риск, обусловленный нецелесообразностью полного тестирования, и отвечает за этот риск. Мастер своего дела, не тот кто делает все по учебнику, а тот кто берет на себя обоснованные риски.
А я не считаю себя программистом, и мне легче. Я считаю что программист, это тот кто может написать свой компилятор или что-то подобное. Я даже ушел со второго курса информатики, когда увидел что я просто не дотягиваю до лучших. А быть лучшим среди худших — зачем. Никто такого решения не понимает, говорят надо было дожимать. Теперь я работаю тестировщиком-автоматизатором — это мне по силам, и нравится, нашел себе работу по плечу. Если мне нужно какое-то нестандартное решение у меня под рукой есть хороший архитектор, хороший программист. А знаний мне хватает чтобы обьяснить проблему и понять ответ. Мне не нужно соревноваться с коллегами. А юниоры вообще иногда ко мне за советом приходят. Важно быть нужным. Можно быть не мега-мозгом, но пока ты справляешься с задачами — все отлично. А еще работая тестировщиком знаешь, что даже лучшие ошибаются. И перестаешь от себя ожидать чего-то сверхестественного, а просто делаешь свою работу. Но и кадровик у нас талантливый. Он не только меня «с улицы» подобрал, у нас много толковых парней без профильного образования успешно в проектах работают. Сделал ставку на потенциал человека, а не на список скиллов.
«fun indended» (orig. pun indended)
(сорри за каламбур про каламбур)
причина совсем не в этом. Даже если бы все сели вместе разрабатывать единый язык программирования в каменном веке, дискуссия длилась бы до сих пор. Потому проще сделать свое чем заставить кого-то поменять точку зрения.Это раз. И два, это то что не всегда измененение существующего продукта целесообразно. Некоторые вещи лучше оставлять как они есть.

Информация

В рейтинге
5 514-й
Откуда
Германия
Зарегистрирован
Активность

Специализация

Test Automation Engineer, Quality Assurance Engineer
Senior
Python
Docker
Git
Linux
OOP