• QA Automation или Dev?

    lxsmkv
    @lxsmkv
    Test automation engineer
    Не отказывайтесь, позанимайтесь пару годиков автоматизацией - это бесценный опыт. Вам тоже придется программировать, только не продукт, а тесты. А чтобы писать тесты нужно в продукте разбираться не хуже разработчика. Через год вы сможете делать все тоже самое что делает разработчик и еще и автоматизацию, а разработчик так и останется разработчиком. Я работаю автоматизатором тестирования и получаю больше чем некоторые девы у нас в команде. И у меня есть перспективы, перейти в консалтинг.
    Но надо сказать я и выкладывался для этого три года по полной.
    Понимаете если в команде все будут только кодить - ничего хорошего из этого не выйдет. Если в понятиях какой нибудь многопользователькой игры говорить, то программист это штурмовик. А нужно еще звено прикрывающее тыл и медсанчасть- это QA. А еще нужно стратегическое звено - это архитектор. А еще нужна логистика - это DevOps. Если QA внимательно, с головой, относится к своей работе, то он может давать советы архитектору DevOps и разработчикам. Например - слишком много ранений в голову, может будем одевать каски? У раненых солдат мозоли на ногах, нужна более удобная обувь.
    Я, побыв автоматизатором, не хочу становиться рядовым разработчиком. Это будничная однообразная работа. А автоматизация ставит все время интереcные задачи. Заставляет учиться, развивать себя. Это абсолютно уникальные знания. Когда у разработчиков зытык в задаче, я могу им помочь, а когда у меня затык они мне не могут помочь. Понимаете разницу?
    Ответ написан
    Комментировать
  • Куда ехать фрилансить, в какую страну?

    @Yupa20171123
    1. Может лучше купить спутниковый телефон, солнечную зарядку и в Африку? Тепло, вкусно, ...
    На "одну зарплату" можно арендовать землю, построить домик (балок), и еще останется (чувствовать себя богатым, белым, человеком). Можно арендовать там лодку. Или в другие более мирные (безопасные) места.
    2. Мой знакомый думал перебраться в Японию (там трудоголиков ценят и косо не смотрят).
    3. Можно устроится в экспедицию на кораблик (айтишником, радистом, коком,... ) за хавку. Или просто на танкер. Тоже море свободного времени и порты иностранные.
    4. Искать работу "нужен человек ничего не делать", в другой стране.

    Снять квартиру... Значит сменить один гроб на другой - "турецкий отель открыл врата рая...". Малайзия и Индонезия - могут прибить за нарушение "табу" (у нас тоже могут и вероятность будет расти:). Это в старости надо в такие места ехать, место на кладбище присматривать, людей приручать чтоб следковали за могилкой будущей, цветочки там, оградку красили. Пока опыта нет лучше куда то по безопаснее и с людьми подобрее.

    Я вот после школы мечтал с ноутом бродить по заброшкам, делая теретории (здания, лагдшафт,...) для стрелялок, но нетути здоровья на то и дела другие насушьные...:(

    Так что желаю успехов.
    Ответ написан
    5 комментариев
  • Как выглядит "прокачанный" аккаунт ГитХаб?

    27cm
    @27cm
    TODO: Написать статус
    Примеры:
    https://github.com/pepelsbey
    https://github.com/Samdark
    https://github.com/mdo

    Как заинтересовать работодателя:
    1. Аватарка. Да, она должна быть. Ещё лучше, если это будет ваша фотография. Если видишь в профиле дефолтную аватарку, возникает ощущение, что GitHub у человека всего лишь для галочки.
    2. Контактный email.
    3. Полоска активности должна быть зеленой (см. примеры выше), но в меру — не нужно стремиться окрасить каждую клеточку, отдыхать тоже нужно. Если заходишь в профиль, а салатовые клеточки изредка были год назад или наоборот появились только две недели назад, то страница работодателя не заинтересует.
    4. Ссылка на персональный сайт.
    5. Наличие собственных public репозиториев. Работодатель хочет увидеть ваш код, поэтому очень желательно наличие в них свежих коммитов. Каким должен быть отличный репозиторий на GitHub — тема для отдельного вопроса, тут напишу кратко: README, понятная структура, тесты, звезды.
    6. Наличие вклада в Open Source проекты. Мне доводилось встречать профили, в которых были выполнены все пункты выше, но тем не менее их владельцы были очень слабыми разработчиками. Наличие вклада в крупные проекты с открытым исходным кодом — это однозначно вин. Очень желательно, чтобы он у вас был.
    7. Stars, Followers, Following. Всё это тоже было бы неплохо завести. Если у вас много фолловеров на GitHub, значит скорее всего вы из себя что-то представляете в мире Open Source, раз другим интересно следить за вами.

    P.S.: Хороший профиль на github сам может выступать в роли резюме. Очень часто хедхантеры через него и выходят на тебя.
    Ответ написан
    4 комментария
  • Актуальна ли карьера автоматизатора тестирования?

    terrier
    @terrier
    Ну, вы, в принципе, все понимаете, автоматизатор тестирования - это сейчас весьма узкая специализация. Тут есть плюсы и минусы. Если попробовать трезво прикинуть, то, с точки зрения именно карьеры и будущего для автоматизатора
    плюсы
    - вам эмоционально ближе
    - карьерный рост быстрее. Команды автоматизаторов в целом меньше, программистом вы начнете джуном снизу большой пирамиды, а стать старшим автоматизатором несложно, если всего автоматизаторов, например двое.
    - традиционно проще двинуть в менеджмент из тестирования
    - по идее, эта область должна расти

    минусы
    - денег в целом меньше
    - в более бедные времена всякие "излишества" типа автоматизации тестирования схлопываются
    - культура написания кода, в целом низкая
    - широко распространены самодельные решения для тестирования, актуальные только в пределах одной компании. Из общепринятых фреймворков разве что Selenium

    Ну, вот и смотрите.
    Ответ написан
    Комментировать
  • Как закрыть неполностью оплаченный проект c минимальными потерями (Upwork)?

    opium
    @opium
    Просто люблю качественно работать
    обратитесь в саппорт
    Ответ написан
    Комментировать
  • Переехать в Москву и устроиться джуниором. Сколько стоит?

    Bandicoot
    @Bandicoot
    Вась-программист
    7-е место на Тостере с более чем 1500 ответами (22% решений) и в Мск джуниором)) Ну вы даете) Неужели ваши знания и опыт так мало стоят?
    Ответ написан
    1 комментарий
  • Есть ли IT образование и работа в этой сфере в Казани?

    anyd3v
    @anyd3v
    1. ИТ есть во всех крупных городах и найти работу реально.
    2. Некоторые московские фирмы работают по принципу "менеджмент в Мск, разработка в ...", среди городов знаю НН, Екб, Новосиб, Уфа etc (извините но про Казань мало знаю в этом плане)
    3. В Казани сейчас развивается ИТ, посмотрите какой там ИТ парк открыли + второй в челнах, да и иннаполис пиарят во всю, думаю не с пустого места и вроде как республиканская программа предусматривает развитие ИТ сектора.
    4. Я не из Казани но мне периодически предлагали ремоут на фирмы из Казани (фирмы не помню, активно удаленку икал в прошлом году)

    Единственное что в Мск хорошо это зп, 80% москвичей-программистов с которыми сталкивался были с мега завышенным самомнением, что они боги программирования но на деле оказывалось все очень печально (может конечно я на таких натыкался, ни кого не хочу обидеть)

    На счет образования я ни чего не могу сказать, но возможно мой опыт вам поможет))
    Ответ написан
    Комментировать
  • Пригодится ли мне опыт 1С-программиста в работе (не 1С)-программистом?

    @mafusailmagoga
    Любой опыт всегда пригодится.
    И чем он ближе к желаемому - тем больше и пригодится, априори.
    ------

    По 1С.

    1С - это очень и очень разная квалификация.

    "Программистами 1С" называют и реальных программистов,
    и мальчиков-на-побегушках-настрой-принтер-установи-картридж.

    Ну исторически так сложилось.

    Если вы реально будете программировать - а программирование там вполне себе серьезное: есть где развернуться и с оптимизацией запросов к базам данных и пр.

    Те кто пишут иное:

    Идиоты или просто не в теме
    Ну например, они встречались только с одним аспектом по обслуживанию 1С, не относящимся к программированию - с ребятами которые бегают обновляют штатные конфигурации, а не занимаются программированием.

    Никаких таких сверхумных экономических или бухгалатерских знаний не требуется. Весь учет построен на здравом смысле. Было 3 яблока, купили 2 яблока, продали 4 яблока, осталось 1 яблоко.
    Спец. термины типа дебет, кредит, сальдо, проводка - программисту 1С нужны даже не каждый месяц, не то что каждый день. Да и учатся они за 15 минут. Бояться этого не стоит.

    Отлично развивает навыки общения с заказчиком, постановку задачи.
    Отлично развивает навыки оптимизации запросов, работы с типовыми алгоритмами.

    Принципиальное отличие в 1С следующее:

    Все эти так называемые "настоящие программисты" вместо того, чтобы решать конкретную прикладную проблему - тратят свое время в том числе и на общеупотребимую обвязку: логи, БД, GUI. В 1С это все уже реализовано и жестко зашито. Тебе не нужно тратить время на это.
    Ты будешь тратить время на решение программным путем конкретной проблемы клиента.
    Очень способствует развитию навыков системного анализа.

    P.S.:
    Отлично владею 1С, Go, C#, Python, JavaScript, Java программировал довольно много на С/С++, ассемблере, Pascal/Delphi. Изучаю Rust, Haskell, Kotlin
    Считаю что навыки на одном языке программирования прекрасно дополняют навыки на другом языке.
    Ответ написан
    Комментировать
  • Попросили проверить код, на что смотреть нужно?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Смотря зачем)). Я когда делаю Code Review критерии следующие:

    * Безопасность:
    - Каждый аргумент метода простого типа должен проверяться на тип в случае его проксирования и на граничные значения в случае обработки. Чуть что не так - бросается исключение. Если метод с кучкой аргументов на 80% состоит из поверки из аргументов - это вполне норм))
    - Никаких trigger_error, только исключения.
    - Исключения ДОЛЖНЫ быть человеко-понятны, всякие "Something went wrong" можно отдавать пользователю, но в лог должно попасть исключение со стектрейсом и человеко-понятным описанием, что же там пошло не так.
    - Каждый аргумент (объект) метода должен быть с тайпхинтингом на этот его класс, или интерфейс.
    - За eval как правило шлю на **й.
    - @ допускается только в безвыходных ситуациях, например проверка json_last_error.
    - Перед работой с БД - обязательная проверка данных.
    - Никаких == и !=. Со swtich - единственное исключение, по ситуации.
    - Если метод возвращает не только bool, а еще что-то - жесткая проверка с ===, или !== обязательна.
    - Никаких условий с присваиваниями внутри. while($row = ...) - тоже идет лесом.
    - Магические геттеры/сеттеры разрешаются только в безвыходных ситуациях, в остальном - запрещены.
    - Конкатенации в sql - только в безвыходных ситуациях.
    - Параметры в sql - ТОЛЬКО через плейсхолдеры.
    - Никаких глобальных переменных.
    - Даты в виде строки разрешаются только в шаблонах и в БД, в пхп коде сразу преобразуется в \DateTimeImmutable (в безвыходных ситуациях разрешено \DateTime)
    - Конечно зависит от проекта, но как приавло должно быть всего две точки входа: index.php для web и console(или как-то по другому назваться) - для консоли.

    * Кодстайл PSR-2 + PSR-5 как минимум, + еще куча более жестких требований (для начала все то что в PSR помечено как SHOULD - становится MUST)
    - В PhpStorm ни одна строчка не должна подсвечиваться (исключением является typo ошибки, например словарик не знает какой-то из аббревиатур, принятых в вашем проекте). При этом разрешается использовать /** @noinspection *** */ для безвыходных ситуаций.
    - Если кто-то говорит, что пишет в другом редакторе и у него не подсвечивается, на эти отговорки кладется ВОТ ТАКЕЕЕНЫЙ мужской половой **й и отправляется на доработку)).

    * Организация кода:
    - Никаких глобальных функций.
    - Классы без неймспейса разрешаются только в исключительно безвыходных ситуациях.

    * Тестируемость (в смысле простота тестирования) кода должна быть высокая.
    - Покрытие кода обязательно для всех возможных кейсов использования каждого публичного метода с моками зависимостей.

    * Принципы MVC:
    - Никаких обработок пользовательского ввода в моделях, от слова совсем.
    - Никаких ***ть запросов в БД из шаблонов.
    - Никаких верстки/js/css/sql-ин в контроллерах.
    - В моделях НИКАКОЙ МАГИИ, только приватные свойства + геттеры с сеттерами.
    - В моделях разрешено использовать метод save(при наличии такого разумеется) только в исключительных ситуациях. Во всех остальных - либо insert, либо update.

    * Принципы SOLD:
    - Никаких божественных объектов умеющих во все.
    - Если метод для внутреннего пользования - private, никаких public.
    - Статические методы разрешаются только в случае безвыходности.

    * Принцип DRY разрешено нарушать в случаях:
    - Явного разделения обязанностей
    - В тестах (каждый тест должен быть независимым, на сколько это возможно)

    * Работа с БД:
    - Запрос в цикле должен быть РЕАЛЬНО обоснован.
    - За ORDER BY RAND() - шлю на***й.
    - Поиск не по ключам (конечно если таблица НЕ на 5 строк) запрещен.
    - Поиск без LIMIT (опять же если таблица НЕ на 5 строк) запрещен.
    - SELECT * - запрещен.
    - Денормализация БД должна быть обоснована.
    - MyISAM не используется (так уж)) )
    - Множественные операции обязательно в транзакции, с откатом если чо пошло не так.
    - БД не должна содержать бизнес логики, только данные в целостном виде.
    - Не должно быть нецелесообразного дерганья БД там, где без этого можно обойтись.

    * Кэш должен очищаться по двум условиям (не по одному из, а именно по двум):
    - Время.
    - Протухание по бизнес логике.
    Разрешается по только времени в безвыходных ситуациях, но тогда время - короткий период.
    - При расчете ключей кэша должна использоваться переменная из конфигурации приложения (на случай обновлений кэш сбрасывается кодом, а не флашем кэш-сервера). В случае использования множества серверов - это очень удобный и гибкий инструмент при диплое.

    * О людях:
    - "Я привык писать так и буду дальше" - не вопрос, ревью пройдешь только когда поменяешь свое мнение.
    - "Я пишу в vim-е и мне так удобно" - здорово, код консолью я тоже в нем пишу)) но есть требования к коду, если в них не сможешь - не пройдешь ревью.
    - "Я скопировал этот страшный метод и поменял 2 строчки" - это конечно замечательно, но по блейму автор всего этого метода ты, так что давай без говняшек, хорошо?
    - "Оно же работает!" - вот эта фраза переводится примерно так: "да, я понимаю, что пишу полную хрень, но не могу писать нормально потому, что руки из жо", я правильно тебя понял?))
    - "У меня все работает!" - рад за тебя, а как на счет продакшна?
    - "Там все просто" - не используй слово "просто", от слова "совсем". Вот тебе кусок кода (первого попавшегося с сложной бизнес логикой), где там ошибка (не важно есть она, или нет)? Ты смотришь его уже 2 минуты, в чем проблема, там же все "просто"))

    * Всякое:
    ActiveRecord (это я вам как в прошлом фанат Yii говорю) - полное говно, примите за исходную. По факту у вас бесконтрольно по проекту гуляют модельки с подключением к БД. Не раз натыкался на то, что в тех же шаблонах вызывают save, или update (за такое надо сжигать).
    То, что используется Laravel - это печально((. Что бы выполнить требования приведенные выше, приходится "воевать" с фреймворком.

    Это далеко не полный список требований, очень много зависит от проекта в целом и от принципов, заложенных в нем. Для больших мредж реквестов 200 комментариев к коду - это ок. Дерзайте.

    UPD

    Формализировал данные критерии по ссылочке: https://github.com/index0h/php-conventions
    Ответ написан
    55 комментариев
  • Можно ли покороче записать строку проверки условия?

    AnnTHony
    @AnnTHony
    Интроверт
    if all([csv_tr_opcode == 2, one_row.opcode in (3,  6)]):
    Ответ написан
    Комментировать
  • На чем в 50 лет можно зарабатывать?

    @noprof
    Вы бы заранее не суетились бы, пока его не сократили, а спросили бы его, чего он хочет на самом деле. Что он умеет, что знает, готов ли он морально обучатся чему-то новому. Что ему для этого необходимо?

    Просто тут много сказочников, которым просто повезло в какой-то момент оказаться в нужный момент и в нужном месте. Вот они и рассказывают что все просто и легко с заработком в интернет.
    А на самом деле, все куда жестче происходит, и все пытаются сожрать друг друга, и умников разных во всех сферах полно, и все хотят кушать, и будут рвать волосы на пятой точке, что бы получить какую-то копейку. (+ учитывая текущую ситуацию)
    + Отягощающий фактор это возможное сокращение. Ведь ситуациях когда жизнь бьёт, то удар приходится со всех сторон и сразу. Если бы он давно бы имел доп. заработок в виде чего-то там в интернет, то это одно, а резко сменить занятость с одной сферы на другую, это очень тяжело.

    Хочу вас огорчить, что ничего толком и не получится, если он сам этого искренне не будет желать, и стремится учится и прогибаться под чужую волю. А учитывая что вы его сын - будет ему это сделать труднее в разы.

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

    ===================================================

    Узнайте у него самого, что ему интересно делать? Может быть у него хобби какое-то есть? Пусть развивает своё хобби подсунутыми вами средствами (тот же фриланс по узкой специализации).
    + Сейчас популярны всякие видеоблогеры, а если руки и мозги есть, то я думаю и материал будет.
    Ответ написан
    2 комментария
  • Не завышено ли тестовое?

    vvpoloskin
    @vvpoloskin
    Инженер связи
    М-да, 10 лет назад для того, чтобы устроиться стажером на 3-5тр в месяц надобыло просто знать базовый синтаксис языка программирования (можно даже школьный алгоритмический) на уровне объявления переменных и базовых инструкций потока выполнения (циклы и if). Сам так начинал, только программирование не пошло и я отказался от этого направления. Видимо правду на ebanoe.it пишут про перспективы программистов. Стажер на любом заводе инструменты подает только если что.
    Ответ написан
    4 комментария
  • У вас есть проект. Должна ли основная работа быть простой?

    Armin
    @Armin
    Gamedev, http://fatenation.ru
    У меня тоже печальный опыт есть. Из которого я сделал вывод что программист в принципе не может создать проект который принесёт деньги. Деньги делает бизнес, а не программист. Нужно быть бизнесменом, а не программистом. К сожалению мы программисты часто переоцениваем свой вклад в бизнес, и нам кажется что мы сами можем написать приложение и заработать много денег. Но это не так.

    Я 6 лет свой проект развиваю, коммерчески выхлоп никакой, но интересно же всё равно. Кроме того этот свой проект помог мне увеличить свою зарплату в 3 раза. Этот проект как портфолио говорит о том насколько я крут. Так что ради портфолио делать стоит однозначно, а вот ожидать миллионов долларов и всемирной славы не стоит.
    Ответ написан
    6 комментариев
  • Как выглядит реальный пример теста JUNIT?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    Пользу от тестов замечаешь только тогда, когда начинаешь писать что-то сложнее hello world'ов. Особенно хорошо их видно, когда приложение разрабатывается уже несколько лет и более, чем десятком разработчиков. Изменяешь какую-то часть кода, запускаешь тестирование и видишь, что теперь другой участок кода тестирование не проходит, так как в прошлом году у разработчика, которого ты даже не встречал, протекла абстракция.
    Ответ написан
    Комментировать
  • Почему в вакансии слишком много требований или это стандартные требования?

    saboteur_kiev
    @saboteur_kiev Куратор тега Карьера в IT
    software engineer
    "по должности модератор сайта"
    Ваша должность модератора по идее никак и не связана с разработкой.

    Если бы вы год не модерировали, а писали код, для вас не было бы сложностью изучить какой-либо js фреймворк, css, получить опыт с VCS, с git и так далее.

    В вакансиях перечислены среднестатистические требования к уверенному джуниору - начинающему мидеру.
    Ответ написан
    Комментировать
  • Каков сценарий использования git для одного разработчика?

    gobananas
    @gobananas
    finishhim.ru
    Делаете ветку master, ветку dev и отдельные ветки под отдельные фичи.
    Делаете 2 сайта - один сам проект (основной) - на него выкатываете master, второй сайт тестовый - на него выкатываете ветку dev. Остальные ветки разрабатываете, сливаете с dev выкатываете на тест, если там всё нормально то dev сливаете с мастером. За ноут просто когда садитесь если мастер новый есть делаете git pull и стягиваете новую версию
    Ответ написан
    11 комментариев
  • Как заменить switch case паттерном стратегия?

    lexxpavlov
    @lexxpavlov
    Программист, преподаватель
    Switch
    public enum DamageType { Melee, Range, Magic }
    public class Monster
    {
        public double Health { get; private set; }
        public double MeleeDamage { get; private set; }
        public double RangeDamage { get; private set; }
        public double MagicDamage { get; private set; }
        public DamageType FavoriteDamageType { get; private set; }
    
        public Monster(double health, double meleeDamage, double rangeDamage, double magicDamage, DamageType favoriteDamageType)
        {
            Health = health;
            MeleeDamage = meleeDamage;
            RangeDamage = rangeDamage;
            MagicDamage = magicDamage;
            FavoriteDamageType = favoriteDamageType;
        }
    
        public void AttackTo(Monster monster, DamageType damageType)
        {
            switch (damageType) // используется switch
            {
                case MonsterType.Melee: monster.Health -= MeleeDamage; break;
                case MonsterType.Range: monster.Health -= RangeDamage; break;
                case MonsterType.Magic: monster.Health -= MagicDamage; break;
            }
        }
    
        public void AttackTo(Monster monster)
        {
            AttackTo(monster, FavoriteDamageType);
        }
    }


    То же самое, но со стратегией
    public class Monster
    {
        public double Health { get; set; }
        public double MeleeDamage { get; private set; }
        public double RangeDamage { get; private set; }
        public double MagicDamage { get; private set; }
        public IDamageStrategy FavoriteDamageStrategy { get; private set; }
    
        public Monster(double health, double meleeDamage, double rangeDamage, double magicDamage, IDamageStrategy favoriteDamageStrategy)
        {
            Health = health;
            MeleeDamage = meleeDamage;
            RangeDamage = rangeDamage;
            MagicDamage = magicDamage;
            FavoriteDamageStrategy = favoriteDamageStrategy;
        }
    
        public void AttackTo(Monster monster, IDamageStrategy damageStrategy)
        {
            damageStrategy.Attack(this, monster); // не используется switch
        }
    
        public void AttackTo(Monster monster)
        {
            AttackTo(monster, FavoriteDamageStrategy);
        }
    }
    
    
    public interface IDamageStrategy
    {
        void Attack(Monster attacker, Monster defender);
    }
    public class MeleeDamageStrategy : IDamageStrategy 
    {
        public void Attack(Monster attacker, Monster defender)
        {
            defender.Health -= attacker.MeleeDamage;
        }
    }
    public class RangeDamageStrategy : IDamageStrategy 
    {
        public void Attack(Monster attacker, Monster defender)
        {
            defender.Health -= attacker.RangeDamage;
        }
    }
    public class MagicDamageStrategy : IDamageStrategy 
    {
        public void Attack(Monster attacker, Monster defender)
        {
            defender.Health -= attacker.MagicDamage;
        }
    }

    Отличие класса Monster только в коде первого метода AttackTo. Ну и свойства FavoriteDamageType или FavoriteDamageStrategy.

    Стратегия может быть полезна, если код атаки, в зависимости от типа, сильно отличается, используя внешние данные (не из класса монстра), например, день или ночь, ясно/дождь и пр. Использование стратегии переносит часть кода из класса монстра (и так сложного класса) в несколько простых классов.
    Ответ написан
    1 комментарий
  • Как найти работу аналитику требований в Германии без знания немецкого?

    @enoizze
    Антон, полагаю, что для аналитика требований умение общаться с бизнес-пользователями это ключевая компетенция, а без свободного владения языком это будет крайне сложно.
    Думаю, что в вашем случае нужно крепко поработать над уровнем немецкого и попытаться приобрести опыт работы именно с немецкими проектами, чтобы вы могли в своем резюме приводить артефакты на немецком. Или попытаться применить себя в англоговорящих странах (например, в той же Голландии на английском говорят больше).
    Однозначно разработчику гораздо проще найти работу, так как общения у него на порядок меньше.
    Ответ написан
    Комментировать
  • Есть ли смысл дальше учить?

    JackShcherbakov
    @JackShcherbakov
    Было такое. Проблема решилась бональным перечитыванием и конспектированием учебника, по которому я учился. Ваше состояние - следствие неполучения ожидаемого результата + осознование того, что Вас тащют. Вас не должен никто тащить.
    У меня чуть ли не депрессия была когда я думал о том, что все зря. Дело в том, что наш мозг считает все бессмысленным то, от чего мало пользы, тем более, когда на это ушло куча врмени. У Вас, к тому же, наверное, просто нету мотивации и прчины это все изучать.
    Ответ написан