• Как определить свой уровень и какую работу искать?

    @aby125
    У вас очень размытое описание. У вас может быть как уровень студента, т.е. новичок, так и высокий уровень.
    Попробуйте подготовиться к собеседованиям, порешать тестовые задания. Поищите список типичных вопросов к собеседованиям, например, мне понравились тут вопросы - https://techrocks.ru/2021/04/18/250-php-job-interv....
    Попробуйте подготовить эти темы. Поучите, поотвечайте их, закройте пробелы.
    Так же вам нужно сформировать полностью стек для вакансии. Например, может вы не знаете базы данных, типа mysql. И толку тогда от вашего опыта, вы будете сыпаться на этом. Посмотрите 20+- вакансий, посмотрите стек и проработайте его, подтяните. Чаще всего требуется знание фреймворка или cms.
    Универсальный способ определения своей уровня:
    Проходите 20-40 однотипных вакансий, если берут на джуна, но не берут/плохо берут на мидла, значит, вы джун. Если берут на мидла, но не берут на сеньера, значит, вы мидл. Если берут на сеньера хорошо, значит, вы сеньер.
    Ответ написан
    Комментировать
  • Какие еще проекты сделать junior на php помимо дефолтных?

    @aby125
    Если хочешь быстрее работу найти и коммерческий опыт получить, то бери битрикс. Пару недель с ним посиди, сдай экзамен и думаю быстро устроишься, с твоими знаниями думаю хватит пары недель.
    А там, за пол года-год освой ларавел. Как освоишь его на хорошем уровне, так иди на него.
    Про ООП посмотри, пару уроков и подучи ответы, чтобы на собесе не лажануть(могут спросить), хотя на битриксе его никто не будет использовать, не переживай, что не знаешь.
    https://github.com/bzick/oh-my-backend тут можно про бекенд посмотреть, какие знания нужны.
    Так же, хороши уроки Дмитрия Елисеева, там много чего можешь найти полезного для себя, и про ООП, и про фреймворки, и про микрофреймворки. https://deworker.pro/ https://elisdn.ru/
    Ответ написан
  • Куда развиваться Python разработчику (не для поиска первой работы)?

    @aby125
    Осваивай бекенд в целом, вот можешь использовать как карту-памятку https://github.com/bzick/oh-my-backend
    Как хорошо освоишься в джанго, можешь в java, spring попробовать.
    Ну и go ещё тоже как дополнение. Часто бывают вакансии php + go, python + go.
    Лучше в рамках бекенда оставаться и не уходить в другие направления, типа мобильной разработки, геймдева и т.п.
    Единственное, можешь во фронтэнд попробовать, если нравится, чтобы фулстеком быть. Или оставаться в рамках бекенда.
    Ответ написан
    Комментировать
  • Почему многие говорят учить python вместо php?

    @aby125
    Я как человек, который постоянно находится в телеге в чатах по поиску работы и на пхп, и на джанго скажу, что наоборот, лучше на пхп начинать.
    На питоне тяжелее найти первую работу, очень многие ноют, что не могут её найти. Зайди в джанго чат по поиску работы(достаточно уютненький) и посиди там, увидишь это сам.
    На пхп проще первую работу найти. Почему так? У пхп грубо говоря две ниши, это обычные сайты/магазины на cms и более сложные сайты-сервисы на фреймворках, а у питона одна ниша в беке, это как раз те же самые более сложные сайты на фреймворках. Туда с полного нуля плохо берут, что на пхп, что на питоне. Т.е. чисто стартануть карьеру проще на пхп, проще найти первую работу(а это очень важно) и не слиться. А когда дорастешь до более сложных сайтов, то сможешь переходить хоть на питон с джанго, хоть на пхп. Никаких проблем не будет. Вообще, язык это инструмент, не надо на нём зацикливаться. При желании можешь одновременно всё это осваивать, тем самым расширив количество потенциальных вакансий.
    Так же, тут есть небольшое исключение. Если понимаешь, что сможешь попасть на стажировку в крупную компанию по типу яндекса и дальше оттуда будешь развивать карьеру, то можно и с питона начинать, там обычно он используется, а не пхп. Но тут есть риск слиться, подумав, что программирование, это не твоё.
    А так, смотря кто говорит. Очень много статей, блоггеров в ютубе, которые советуют питон. Но берут они это не с реального опыта трудоустройства/старта карьеры в странах СНГ, а переводят зарубежные ролики/статьи. А так же друзья твои могут говорить, потому что сами начитались.(они так же могут работать программистами, например, фронтэндерами, но плохо представлять, как проще начинать карьеру в беке)
    Ответ написан
    Комментировать
  • Сколько часов кодить на работе?

    @aby125
    На старте вполне сможешь. По своему опыту говорю. Дело в том, что если ты новичок, то часть времени ты будешь гуглить, разбираться, читать статьи, пытаться понять почему твой код не работает так как надо и т.п. В общем, это не чистый кодинг. И тут вполне можно 8-9 часов сидеть.
    А когда уже будешь уметь, то там 3-5 часов примерно работают. Больше может привести к выгоранию, либо сам организм начнет тормозить. Но это когда ты уже почти не гуглишь, а знаешь всё как делать или большую часть.
    Ответ написан
    Комментировать
  • Как начать карьеру, если нет опыта работы и опускаются руки?

    @aby125
    Вы не рассказали про город, это тоже достаточно важно. А так советую менять язык. И вообще, определиться с направлением, т.е. веб - бекенд/фронтэнд, мобильная разработка и т.д. Из языков лучше выбирать php, верстка -> javascript или java. На этих языках берут новичков. На php/верстке можно и пофрилансить немного, хотя со старта это тяжело делать, лучше сначала офис. А Python он для более опытных разработчиков, на нём плохо берут новичков в СНГ. В целом, сильно не привязывайтесь к языку, с одного на другой можно переходить в рамках одного направления.
    Ответ написан
  • Дополняется константа массива, хотя явного преобразования нет. Как решить?

    @aby125
    Я сильно в код не вникал, но думаю причина примерно в следующем - при первом вызове outlineRectSize, параметр p_tiles у вас пустой и сохраняется он в tiles.from_pass. При последующих вызовах вы его передаете последним параметром и он используется повторно.
    Ответ написан
    Комментировать
  • Эффективна ли такая практика?

    @aby125
    Я думаю использовать только этот подход не очень эффективно. Скорее можно этим методом дополнять основное обучение. Как дополнение уже будет эффективно.
    Так же хочу отметить, что возможно вы видите только часть кода и понимаете эту часть, а не от начала до конца. Возможно поэтому не можете написать свой код и при небольшом обучении сможете. Например, в калькуляторе, вы понимаете, что вот функции есть, тут складывается, вычитается и т.д. Но как сделать такую программу с нуля, как организовать ввод данных, куда прописать операции и т.п. Тут нет понимания? Тогда просто надо основы программирования подтянуть.
    Попробуйте порешать задачи на codewars.com Там начинается с совсем простых и по нарастающей сложности(можно задержаться на слабых задачах), думаю это поможет в вашей проблеме и быстро сможете закрыть свои слабые стороны и решить проблемы.
    Ответ написан
    Комментировать
  • Что в среднем должен уметь младший Web-разработчик за 20 000 рублей в месяц?

    @aby125
    Я думаю такой человек должен уметь делать примерно то, что делают работники за 50-100 тыс рублей в месяц, только без опыта работы.
    А по поводу конкретно цены, тут тоже не совсем уместно так говорить, потому что можно сказать - хорошо, а за 18 тыс? А за 15 тыс? А за 12 тыс? А за 10 тыс в месяц, что должен уметь? Или ещё меньше можно назвать. Есть просто минималка в данной профессии. Допустим, 30-35к на старте(на стажировке или в первый месяц может быть любая). А если вам не на стажировке предлагают 10-20к, то это говорит о неадекватстве начальника. Возможно работая там, вы получите нерелевантный опыт, который равен опыту на пет проектах. Тут надо ориентироваться по рынку в своём городе.
    Ответ написан
    Комментировать
  • Сколько стоит разработка игр в разных странах мира?

    @aby125
    Думаю всё правильно считаете. Только есть некоторые нюансы. Во-первых, зп в США у программистов не 10 тыс в месяц, а куда больше. Это у джуниоров такие зп со стажем 0-1 года или у удаленщиков. Насчет зарплат других профессий, которые требуются для разработки игры не знаю, но думаю не ниже 10 тыс будет.
    Во-вторых, один сотрудник может заниматься сразу несколькими играми. В-третьих, есть движок и какие-то наработки внутри компании.
    А что касается других стран, думаю в Европе или плюс минус так же, или дешевле в раза два. А так явно в какой-нибудь Индии будет гораздо дешевле, чем в США.
    Ответ написан
    4 комментария
  • Где найти достоверный источник информации по теме создания игровых карт на JS?

    @aby125
    Кажется тяжело, но попробуй разбить на маленькие подзадачи и максимально упрости проект:
    т.е. на скрине достаточно сложный проект, хотя многое будет однотипно.
    Попробуй сделать такой вариант - есть карта с клетками(используй canvas), где надо раставлять элементы ландшафта, дороги и т.п. Так же можно дома, здания расставлять и т.п.
    И сделай кнопку сохранения, если это редактор игровых карт. Т.е. чтобы сохранял эту карту. Все остальные элементы интерфейса к данной задаче мало относятся.
    если кратко разобрать эту задачу, то будет примерно так - карта представляет из себя, например, массив, в массиве можешь указать число, которое будет соответствовать рисунку текстуры, например - 0 - трава, 1 - деревья, 2 - дорога и т.д.
    попробуй разбить на маленькие подзадачи:
    1) загрузить изображение
    2) сделать несколько изображений
    3) сделать в памяти массив, где будут храниться номер текстуры соответствующей клеточки
    4) сделать визуал, который считает сохраненный массив с текстурами и расставить их по нужным координатам
    5) сделать функцию с тремя параметрами, которая будет ставить текстуру клетки в нужное место(можно проверить в консоли)
    6) сделать окошко, откуда будем вытягивать текстуры
    7) разместить текстуры в окошке из пункта 6
    8) реализовать перетягивание из окошка в поле и сохранение. этот пункт лучше разбить на подпункты:
    8.1) сделать определение координат квадрата над которым находится мышка.
    8.2) сделать определение текстуры в окошке из п.6 над которым находится мышка.
    8.3) сделать перетягивание текстуры мышкой при клике и сохранение в нужном месте при отпускании
    9) сделать сохранение результата
    Это будет конечно не уровня senior, но хотя бы поймешь суть и что к чему, для себя думаю пойдет. Потом можно поискать библиотеки для разработки игр на js и т.п., если будет необходимо.
    Посмотри несколько видео на ютубе по созданию простых игр на js, там весь нужный функционал разбирается. Т.е. как загружать изображение, события клавиатуры и мышки и т.д., но если не знаешь азов js, то будет тяжко
    Ответ написан
    Комментировать
  • Как открывать одну и ту же страницу по разным ссылкам (1С Битрикс)?

    @aby125
    В .htaccess редиректы настроить, например, так:
    Redirect 301 /catalog/dushi/brand-is-termmiks/apply/ https://site com/catalog/dushi-termmiks/
    Ответ написан
    Комментировать
  • Как вы справляетесь с тупняком в программировании?

    @aby125
    Достаточно расплывчатое описание.
    Если проблема в том, что до каких-то алгоритмов не доходишь сам. То не хватает опыта. Попробуй порешать задачи на www.codewars.com. Тут после решение показываются лучшие решения, сможешь подучиться.
    Если более глобальные идеи не можешь реализовать, например, думаешь а как мне сделать крутую игру, чтобы там была тысяча планет и классный ИИ, который будет их осваивать сам и т.д., но при этом в геймдеве вообще не разбираешься, то надо поднимать знания по данной специализации.
    Вообще, чистое программирование нигде не используется. Т.е. мало знать один язык. Всегда надо знать направление и фреймворки/библиотеки для него. Надо выбирать, например, бекэнд, а фреймворк ларавел. Или фронтэнд, реакт. Обычно работают в таком ключе. Если ты изучишь один голый php или js, то тебя никто не возьмет работать программистом, т.к. этого мало. Нужно знать целый стек технологий для данного направления. Лучше посмотри стек для твоего языка/направления в вакансиях на hh, подучи их и возможно половина решений , которые не мог найти, сразу же в голову придут.
    Ответ написан
    Комментировать
  • Мультиплеер для уже созданой игры?

    @aby125
    Тут несколько вариантов.
    1) Самый простой, но он может не сработать. Попросить у разработчиков исходники, объяснив причину. И если они согласятся, то уже делать мультиплеер, исходя из исходников, там и будет понятно какой язык использовать, технологии и всё остальное.
    2) Можно расковырять игру на ресурсы, графику(текстуры, модельки, анимацию), звуки и т.д. или купить/заказать похожие и на том же юнити/UE4 написать аналогичную игру с похожей/аналогичной графикой и геймплеем. А после сделать мультиплеер. Тут вы уже написали, что нашли даже статьи на эту тему.
    3) Декомпилировать/модифицировать игру. Но тут надо искать, что есть для модов и есть ли вообще. Вариант, от среднего до очень сложный, т.к. подразумевает объемные знания, если конечно игра не заточена для модификаций, если заточена и есть инструменты, то уже проще. Тут надо искать в гугле, конкретно по этой игре и модам.
    Предлагаю сначала поискать по модам к данной игре и информации по модостроительству к ней. Если этого нет или мало, то тогда можно рассмотреть другие варианты.
    Ответ написан
    Комментировать
  • Курсы для программистов с трудоустройством?

    @aby125
    А что за город? Если небольшой, то всё немного сложнее.
    Мне кажется выбор языка неправильный, тут почти не берут джунов, поэтому и нет таких вакансий.
    Так же, не очень понятно насколько хорошо это освоено или просто курсы пройдены, видосы посмотрено и всё или более серьезно?
    А как же знания html, css, js, ajax?
    Я бы советовал отложить python с джанго, подтянуть html, css, js(в js азы, не надо сильно погружаться, а то это много займет времени), ajax и выбрать для начала php. Если хочется побыстрее найти работу, то можно выбрать 1с-битрикс, хотя его многие хейтят(потом поймешь почему). Это cms на php. У них много обучающего материала и курсов с тестами разного. Тут сдаешь экзамен на сертификат, а лучше на 2, но хотя бы один. И тут дальше будет нетрудно найти работу джуниора в какую-нибудь веб-студию. По сути это и надо ставить первоначальной целью, устроиться в веб, чтобы получить опыт. Как освоитесь там за месяца 3-6, дальше будет более понятно, куда двигаться дальше. Скорей всего в студии будет не только битрикс, но и другие cms и фреймворки, например, ларавел и т.п., на них и переходите. А может там будут сайты и на джанго, тогда попроситесь и вам дадут, тем более какие-то знания есть. А дальше будете развиваться как джангист.
    Если посмотреть внимательно вакансии, то на джанго минимум требуют от года опыта, даже иногда просто бекэнда. С нулевым опытом практически вакансий на нём нет.
    Ответ написан
    Комментировать
  • Почему функция возвращает None?

    @aby125
    В вашей функции deistvie происходит просто вызов функций сложение, вычитания, умножения и т.д. И вы с ними ничего не делатете, т.е. как вариант, это выводить результат, например так:
    #Определяем что делать
    def deistvie(znak, num1, num2):
      if znak == '!':
        print(factorial(num1))
      elif znak == '+':
        print(summa(num1, num2))
      elif znak == '-':
        print(raznost(num1, num2))
      elif znak == '*':
        print(proisvedenie(num1, num2))
      elif znak == '/':
        print(delenie(num1, num2))
      else:
        return ('Нет такого действия')

    либо надо возвращать значения в deistvie и в inputs, т.е. таким образом
    #Определяем что делать
    def deistvie(znak, num1, num2):
      if znak == '!':
        return factorial(num1)
      elif znak == '+':
        return summa(num1, num2)
      elif znak == '-':
        return raznost(num1, num2)
      elif znak == '*':
        return proisvedenie(num1, num2)
      elif znak == '/':
        return delenie(num1, num2)
      else:
        return ('Нет такого действия')
    #Получаем данные
    def inputs():
      num1 = float(input('Введите число: '))
      znak = input('Введите знак (+, -, *, /, !): ')
      if znak == '!':
        num2 = ''
      else:
        num2 = float(input('Введите второе число: '))
      return deistvie (znak, num1, num2)
    Ответ написан
    1 комментарий
  • Новичок лезет в web, но хочет уметь управлять электроникой, full-stack и backend, а также C. Поможете?

    @aby125
    1) это не играет решающим фактором в программировании. Тут скорее играет наибольшую роль на сколько готов учиться и самосовершенствоваться. Есть люди, которые не готовы. Как-то давно я предложил одному знакомому стать программистом/верстальщиком. Для этого надо учиться. В общем, закончилось это тем, что он сказал, что это полная лажа, я что снова в школу попал, чтобы в 25-30+ лет учиться??? И так в целом, часто попадаются люди, которые явно не готовы учиться, тратить время на новые технологии, которые постоянно появляются. А программирование очень быстро развивается. Поэтому если человек не готов много и упорно учиться для базы, а потом периодически обновлять свои знания, то вряд ли его ждет успех в этой сфере.
    2) Пока лучше си забросить или уделять ему мало времени. Он никак не поможет в бекэнде. Но не волнуйся, если ты станешь программистом, будешь понимать как всё устроено, то тебе не составит труда перейти на си или чтобы программировать для электроники, особенно если это будет как увлечение. Главное базу веб-программирования освой. А пока её не освоил, лучше не распыляться на другие области программирования.
    3-4) нода неудачный выбор для новичка, она только для синьёров или крепких мидлов. Так же как и питон(когда говорят, что питон хорош для новичков, то подразумевают, что в школе/институте азы программирования на нём хорошо изучать вместо паскаля, а не с целью заработка, есть и статьи где пишут, что питон как первый язык для карьеры это плохой выбор). Если брать веб и питон, то это джанго. Очень классный фреймворк, но джуниором тебя никто не возьмёт. Обычно там пишут, что надо хотя бы год опыта бекэнда. Так что выбор тут ложиться на php. По стандарту html, css, js, sql(хотя бы азы, кроме html, его надо знать нормально, с js надо уметь отправлять ajax). Так же советую подучить вордпресс и битрикс. Битрикс многие хейтят, есть причины(когда втянешься, поймешь почему). Но при этом он достаточно востребованный, у него хороший маркетинг. И там есть пару сертификатов, есть от них самих документация и обучающие курсы с тестами. В этом плане очень хорошо его изучать. Сдашь два экзамена битрикс разработчика, получишь сертификаты и работу джуниором тебе точно не составит труда найти. Потом уже по ходу изучай какой-нибудь фреймворк типа ларавела, либо можешь переходить на джанго с питоном. Если будешь работать в какой-нибудь веб-студии, то скорей всего у них будут задачи по разным cms и фреймворкам. Так что когда освоишь допустим, джанго, то сможешь просто попросить, чтобы тебе ставили задачи по нему и так перейдешь на него.
    Ответ написан
    Комментировать
  • В какой сфере программирования меньше конкуренции?

    @aby125
    Не стоит бояться конкуренции. И как вообще её считать? Т.е. допустим, вот есть в городе по одному направлению условно 1000 спецов, а вакансий для них 1200, т.е. недобор спецов, скажем так. А по другому языку всего 100 спецов, но вакансий для них всего 20. Получается как большой перебор.
    Насчет питона, хоть он и считается хайповым, но на мой взгляд всё хуже, потому что большая часть вакансий, где нужен питон, это математические, дата сайнс, мл. А тут по сути нужны знания дата сайнс, математики, мл, а сам язык программирования, это дело двадцатое. Т.е. в этих вакансиях платят за математику, ДС, МЛ, а не за навыки программирования и питон. И математика там нужна на очень высоком уровне, возможно физмат вышка хорошая понадобится(хотя тут не уверен). Другое направление в питоне, менее популярное, это веб, бекенд, джанго.
    Если хочется попроще путь, можно в веб пойти, html, css, js, php, python, cms какие-нибудь, фреймворки, базы данных. Стандартный набор. Но лучше с питона и джанго не начинать, а начать с php и cms каких-нибудь, плавно перейдя на джанго. Из плюсов, очень быстрый старт. Т.е. можно за пару месяцев изучения найти работу. Особенно если это не Москва, то спецов часто не хватает. Потому что есть всегда вариант с удаленкой и когда веб-программист чувствует себя уверено, то он не будет работать за 40-70 тысяч, когда можно удаленно на Москву работать за 100-120 тысяч, или переехать туда. А как ещё большим специалистом становишься и изучаешь английский, то можно работать удаленно на иностранную компанию за ещё большие деньги. Поэтому и в Москве тоже не перебор с веб спецами.
    В общем, если питон хочешь, то я бы лучше стартовал на php, после в питон, с питона стартовать мне кажется тяжело будет.
    У джавистов насколько слышал тоже дела очень хорошо. Старт правда более медленный, но платят хорошо.
    В целом, стоит отметить, что основной выбор идет на направление. Т.е. есть тот же веб, мобильные, гейм дев, программы, дс и мл и т.д.(и поднаправления, типа фронт энд - бек энд). И допустим если завтра питон с джанго вытеснит php, то все бекендеры перейдут на питон с джанго, это для них не будет большой проблемой, основная база веба там и там одинакова. А вот уже между направления, т.е. с веба на пхп/питоне перейти в геймдев на с++ будет гораздо сложнее, т.е. при смене направления, по сути почти как джуниор становишься. И вот ты зарабатывал 150 тыс, и переходит на джуна/слабого мидла с 50 тыс уже вряд ли захочется.
    Ответ написан
    1 комментарий
  • Как вывести foreach arResult в случайном порядке Битрикс?

    @aby125
    Как я понял, надо в самом foreach в случайном порядке вывести? Дело в том, что можно выборку из базы данных сделать в случайном порядке. Но если надо в самом foreach, то попробуйте так:
    <?$counter = 0;
    $ar_keys = range(0, count($arResult["ITEMS"])-1);
    shuffle($ar_keys);?>
    <?foreach($ar_keys as $key):?>
    
      <?if($counter >= 5){break;}?>
      <h1><?=$arResult["ITEMS"][$key]["NAME"]?></h1>
      <?$counter++?>
    <?endforeach;?>
    Ответ написан
    Комментировать
  • Битрикс как сделать URL и структуру без слова product / catalog?

    @aby125
    Скрины битые, но попробую ответить по описанию.
    Кидаешь компонент на главную. Там нажимаешь на шестеренку в режиме редактирования. Там где настраивают ЧПУ(Управление адресами страниц) ставим галку Включить поддержку ЧПУ. И в "Каталог ЧПУ(относительно корня сайта)" ставим слеш /. По идее всё, должно работать.
    Так же можно зайти в настройки инфоблока и там изменить ссылки(URL страницы раздела и URL детальной страницы), сделать такие же как в ЧПУ прописаны. Это надо делать, если, например, есть отдельно компонент с меню, который стоит в хедере и берет ссылки именно с настроек инфоблока. Может по этой причине и не работает что-то.
    Ну и кеш не забываем чистить.
    Ответ написан
    1 комментарий