Задать вопрос
  • Есть ли курсы без теории, только практика по фронтенд?

    miraage
    @miraage
    Старый прогер
    https://github.com/gothinkster/realworld - читайте README файл, пробуйте сделать свою имплементацию фронта. Необязательно следовать всех их "требованиям" - у Вас полная свобода. Можете просто взять их бэкенд, и писать свои фронты как хочется, будь то реакт, вью, ангуляр. Если реакт, можете пойти на тех же next и remix попробовать сделать. Поиграться с react-query. Может вообще по приколу заморочиться, и написать свой маленький apollo сервер, который будет проксей к их бэку, а Вы с клиента через apollo-client будете gql вытягивать. Потом можете взять react 19rc и поиграться с react compiler, поиспользовать всякими server components, server actions, use(...).
    Ответ написан
    Комментировать
  • Возможно ли сделать в exel такой функционал?

    ProgrammerForever
    @ProgrammerForever Куратор тега Excel
    Учитель, автоэлектрик, программист, музыкант
    Всё возможно, только сейчас это не вопрос, а задание.

    Для закраски подойдёт условное форматирование: номер недели + продолжительность <= номер столбца
    Для переноса номеров ИНДЕКС / ВПР / ГРП / ПОИСКОЗ
    Ответ написан
    1 комментарий
  • Нынешние реалии стандарта Java?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Каковы нынешние реалии стандарта языка? Используются ли в каких-то моментах фишки новых версий (если это вообще возможно)? Ибо судя по всем статьям, практически большинство до сих пор сидит на восьмёрке.

    Да. Это отчасти правда. Основные заказчики Java разработки - это банки. А они не любят миграции версий
    без какой-то особой причины. Я работал с тремя банками и я могу сказать что большая часть кода - это
    легаси. И совершенно нет никакой надежды что будет bump версии языка. Product owner-ы в таком случае
    задают вопрос - "а что мы с этого будем иметь". И обычно для банка - ничего особенного. В некоторых
    случаях (использование CORBA или JAXb, com.sun.*) повышение версии чревато проблемами. Что-то
    может резко отвалиться в новой версии.

    Самые интересные новшества после JDK8 с моей точки зрения были не в языке а в других слоях JRE/JDK (GC, FFI, vectorization, unmanaged memory). Но вы еще попробуйте эти новшества продать бизнесу. Успехов вобщем.
    На какой версии лучше всего практиковаться в написании кода, да и обучаться в целом?

    Да. Ты можешь брать самую последнюю LTS-версию. Брать preview нет никакого смысла. Очень
    сомнительно что для учебы тебе кто-то даст в туториалах экспериментальные фичи. Скорее наоборот.

    Есть ли вообще предпосылки на переход большей части энтерпрайза в ближайшем будущем (ближе к 2030) на более современную версию? Почему тезис о дорогом переходе не нивелируется тем, что за 10 лет со времён восьмёрки завезли достаточно "контента", например, новый синт.сахар и обновленный GC?

    Никакого глобального перехода на самом деле нет. Потому что нет такой проблемы.
    По сути проблемой например для Java 21 может стать "end of extended support" а он условно отмечен
    например на 2031 год. Вы еще попробуйте доживите до этого года и попробуйте сидеть на одном проекте
    столько лет.

    Java может стать COBOL-ом XXI столетия. Но у нее будет даже меньше проблем чем у Кобола, потому что
    байткод и стек-машина имеет больший потенциал. Тоесть пока жива концепция байт-кода и пока существуют
    процессоры Фон-Нейман архитектуры, можно сказать что Java неубиваема.

    Вообще не стоит вам сильно циклиться только на языке. Параллельно существуют Scala, Kotlin, Groovy, Clojure
    и их само существование делает много альтернатив. Одна JVM - бесконечное число языков.
    Ответ написан
    3 комментария
  • Как лучше устраиваться, по ИП или ТК РФ?

    Легко уволить, не выплатив даже увольнительные, легко уволить также со стажировки?

    У ИП нет такого понятия как "уволить" и "стажировка". Ты - самостоятельный исполнитель, который оказывает услуги.
    Соответственно и платят ровно столько, сколько написано - никаких премий. Никаких оплачиваемых отпусков, никаких больничных. (ну либо сам за себя плати взносы, чтобы таки получать выплаты по болезни)
    Ну и пенсия ещё - ИП платит сам за себя.
    Ну и никаких фишек типа брони от призыва или льготной ипотеки - они только для наёмных работников.
    А ещё всякие налоговые вычеты идут только с НДФЛ. Сделать налоговый вычет с ИП-шных налогов нельзя.

    Где я ошибся, поправите? И что по итогу лучше?

    Налоги при найме ещё больше, тк уже вроде одобрили прогрессивную шкалу (или уже на на финишной прямой).

    Оценивай сам, что тебе выгоднее:
    1. Некоторая прибавка к зп за счёт экономии на налоге. (а ещё может сможешь уговорить работодателя дать тебе хотябы часть от тех взносов, которые бы он отдавал в ФСС и ПФР).
    2. Гарантии, возможность уменьшить налог за счёт вычетов, и всякое по мелочи. (а ещё не забывай, что отпуск - это по факту ещё одна дополнительная зарплата)

    При равной зп на руки- ТК очевидно выгоднее.

    Работать с ИП-шником выгодно в первую очередь работодателю, а не работнику
    Ответ написан
    4 комментария
  • Как лучше устраиваться, по ИП или ТК РФ?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    1) По ИП даже когда ты безработный нужно за год выплатить фиксированную сумму ( штук 50 вроде )
    Легко уволить, не выплатив даже увольнительные, легко уволить также со стажировки?

    49500 руб в год + ежемесячный налог.
    Фиксированные взносы вычитаются из налога по УСН, поэтому при зарплате от 830 тыс в год их можно не учитывать.

    IKStantin
    Легко уволить, не выплатив даже увольнительные, легко уволить также со стажировки?

    Только расторжение договора. Нет нужных пунктов - нет и обязательств.
    2) По ТК РФ налоги 13% а не 6, но не уволят просто так и могут выплатить напоследок если не стерпеть

    Это лично Ваш налог 13%, но работодатель за Вас платит ещё порядка 30%.

    И что по итогу лучше?

    Чтобы ип или самозанятым было выгоднее работать исполнителю, нужно, чтобы заказчик платил раза в 2-3 большем, чем работнику по ТК (я про сумму на руки). Отпуска, выходного пособия и увольнения нет, есть расторжение договора.
    Ответ написан
    5 комментариев
  • Как лучше устраиваться, по ИП или ТК РФ?

    CityCat4
    @CityCat4
    В больнице с переломом ноги
    Конечно же по ТК :) Потому что только при устройстве по ТК есть "работник" и "работодатель". При работе с ИП ничего такого нет, есть просто контрагент. Другая модель отношений, понимаете? В отношении работника у работодателя куча ( да нет, даже КУЧА) обязанностней - от оплаты отпуска до проблем с травматизмом (не говоря уже про беременность и декрет), в отношении ИП - ничего такого нет :)

    Отношения с ИП очень простые - договор на поставку товаров или оказание услуг и соответствующие закрывающие документы.

    ВСЕ.

    Как ИП ведет свой бизнес - пофиг. Причем оплата товаров/услуг регламентируется совершенно другими законами, нежели выплата зп работнику :) Работать с ИП очень выгодно работодателю, но крайне не выгодно работнику (который ИП).
    Легко уволить, не выплатив даже увольнительные, легко уволить также со стажировки?

    Нет такого понятия. ИП не "принимают на работу" поэтому его нельзя "уволить". С ИП заключают договор. Который да, можно расторгнутьв любое время. Да, там могут быть санкции за досрочное расторжение - ну тут уж как пропишете. Договор - Ваш единственный правоустанавливающий документ.
    Ответ написан
    Комментировать
  • Какое приложение или сайт для заметок может подойти мне больше всего?

    newross
    @newross
    Product owner
    Notion как алтернатива Obsidian. Ультра просто и удобно.
    Ответ написан
    1 комментарий
  • Знаю только Python и SQL. Нужно ли наращивать стек знаний перед попыткой смены работы?

    Перед сменой работы следует сначала пройти собеседование и получить оффер, иначе рискуешь остаться и без воробья и без журавля.

    или мне в настоящее время стоит относить себя к т. н. «Разработчикам приложений» (по классификации «Хабр Карьеры»)

    То что ты описываешь - похоже на бэкендера.

    Нужны ли на рынке труда специалисты с таким стеком за такую зарплату

    Вопрос не имеет смысла, ибо он не отвечает на главный вопрос - найдёт ли конкретный соискатель себе рабочее место.
    надо заняться самообразованием, изучая, скажем связку FastAPI + Kafka + Kubernetes?

    Самообразование никогда лишним не будет.
    Ответ написан
    Комментировать
  • Почему в git добавляются папки, которые содержатся в gitignore?

    saboteur_kiev
    @saboteur_kiev Куратор тега Git
    software engineer
    1. так у вас сам .gitignore еще не был закоммичен
    2. в .gitignore указан /Debug, а в архив попадает папка /learning/Debug. Или кидайте в .gitignore просто Debug или прямо /learning/Debug
    Ответ написан
    Комментировать
  • Как найти частоту встречаемости строки в dataframe?

    @mkone112 Автор вопроса
    Начинающий питонист.
    Вроде

    df[cond].mean()
    Ответ написан
    2 комментария
  • Кем можно пойти работать со знанием языка С,ассемблера,хорошей математикой?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Если отбросить нюансы, то никуда. С и ассемблер - это инструменты системщиков и железячников, на которых очень низкий спрос, а значит вакансия появляется раз в несколько лет. Да и за ту будут бороться опытные программисты. Математика же большинстве компаний вообще пофиг. И опять же, где она нужна, туда обычно нанимают опытных. Учите что-нибудь прикладное, на прикладников спрос большой, если сможете выделиться из толпы других желающих, сможете устроиться.
    Ответ написан
    2 комментария
  • Как работает locals() в python?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Прежде всего, в pydoc-комментарии функции locals есть сноска о том, что синхронизация возвращённого функцией словаря с состоянием переменных не гарантируется и зависит от реализации. Конкретно в CPython в данный момент такой синхронизации не происходит потому, что locals получает значения переменных из фрейма стека, копирует в новый словарь и возвращает его. Сделано так, как ни парадоксально, для производительности.
    Ответ написан
    Комментировать
  • Преобразование шрифта?

    wataru
    @wataru Куратор тега Алгоритмы
    Разработчик на С++, экс-олимпиадник.
    Этот текст - это символы Unicode.

    Например, "б" в слове "большое" - это символ 0x0431

    Проблема в том, что там символы не из одного алфавита, а полная солянка. На этом сайте можно получить коды всех символов: https://www.rapidtables.com/convert/number/ascii-t...
    Получите:
    1D04 1D00 28D 43E 1D07 20 431 43E 1D27 44C 26F 43E 1D07 20 28D 43E 1D29 1D07


    Как видите, они все разбросаны довольно сильно. 1D** - Phonetic Extensions . 04** - Cyrillic, 02** - IPA Extensions

    Символы из разных алфавитов подобраны по внешней похожести на нужные буквы (как Ш - это перевернутая m вообще). Наверно, какой-то онлайнг конвертер вроде этого где-то имеет набор из 33 кодов и подставляет их вместо русских букв. Не знаю, есть ли такой обратный.

    Можно написать обратный конвертер на том же питоне, только надо руками сопоставить каждому символу из текста нужный символ из обычного ascii. Например, заведите солварь (вам надо руками все встречающиеся символы в исходной строке туда добавить):
    convert = {'ᴀ': 'а', ... 'ʍ':'м', ...}

    Потом примените его ко всем символам в вашей строке каким-нибудь map().
    Ответ написан
    Комментировать
  • Алгоритм поиска маршрута?

    wataru
    @wataru Куратор тега Алгоритмы
    Разработчик на С++, экс-олимпиадник.
    В питоне есть библиотека для работы с графами NetworkX. И там есть уже реализованные алгоритмы кратчайших путей.

    Это будет быстрее, чем самостаятельно реализовывать какой-нибудь алгоритм Дейкстры или обход в ширину, ибо питон - безбожно тормознутый язык. А в библиотеке вычисления обычно реализованы на более быстрых языках.
    Ответ написан
    1 комментарий
  • Как сменить одну из переменных в отдельном файле?

    @Everything_is_bad
    У тебя базовое непонимание, чтобы изменить значение переменной в файле, надо открыть файл, вписать значения и сохранить. Но еще есть runtime, в его момент, значения хранятся в памяти, ты меняешь их как хочешь, только по окончанию runtime, всё придет к изначальному состоянию. Короче, описывай общую задачу, из-за которой у тебя такая хотелка возникла.
    Ответ написан
    Комментировать
  • Стоит ли работать в тех поддержке?

    @rPman
    Лучшее начало карьеры в IT для неуверенных - отел тестирования. Во первых, такие есть только у компаний с определенным размером, во вторых, это подразумевает контакт с разработчиками (хотя что я говорю, крупные компании могут сделать одиноким и похоронить любого человека в толпе опенспейса) и главное, при правильном подходе будешь вращаться в той самой квинтэссенции того с чем работают программисты - отладка кода и поиск багов.

    Развиваться нужно только самому, это основа любого IT-шника, такова особенность отрасли. Конечно, может повезти, и компания может 'оплатить' какое то из направлений твоего развития, но вероятность что это совпадет с твоими желаниями околонулевая.

    И да, не гонись за абстрактным идеалом. Не пытайся объять необъятное. Время сейчас такое что знаний необъятно много, а многорукие шивы, разбирающиеся везде и во всем понемногу мало кому нужны (хотя это первый шаг в сторону аналитика), пощупай конечно на старте всего по мелочи, но выбери направлении и иди в нем хотя бы год.

    Области, которые настоятельно рекомендуется заглянуть - обязательно базы данных, автоматизация работы с типовыми пользовательскими задачами (вот по простому - файлы надо переименовать кучу, или в документе провести подмену чуть сложнее чем А на Б и т.п.) сразу пощупаешь и скриптовые адские языки типа bash/cmd/powershell и устаревшие visual basic script, и заглянешь в c# при наличии потребностей, между прочим простой офисный клерк, умеющий автоматизировать свою работу на уровне документов уже ценен.

    При наличии времени, загляни в веб-технологии (весь стек на низком уровне, от веб сервера до css) - у меня есть страх что это скоро, если не уже, станет основой вообще всего с чем работают разработчики. Не лезь в конструкторы и фреймворки, все упрощающие, они только вредят при изучении.

    Обязательно изучи все что сейчас вокруг использования ИИ (chatgpt), не как разработчик этих ИИ а как пользователь, понимание что такое промпт, какие задачи можно решать с их помощью и какие глупо, какие недостатки и чем они обусловлены - это мейнстрим, и отставать тут не рекомендуется, плюс ИИ сам по себе неплохой помошник в обучении (с осторожностью!).
    Ответ написан
    4 комментария
  • Стоит ли работать в тех поддержке?

    xez
    @xez
    TL Junior Roo
    Существует такое деление: разработка и эксплуатация.
    Разработка - это разработка, собственно, а так же системная аналитика, тестирование, продуктовая разработка.
    Эксплуатация - это системное администрирование, поддержка, хелп-деск и т.д.
    И в эксплуатации и в разработке есть развитие.
    Например, в эксплуатации можно устроиться «поднимать трубку», за тем на вторую-третью линии, оттуда в сисадмины/дба/сети/безопасность/девопс куда уж занесет ну и менеджмент конечно.
    В разработке растут по грейдам, а там либо в менеджеры, либо в архитекторы/евангелисты.

    В каждой области есть своя большая экспертиза и своя специфика.
    Редкий разработчик на экспертном уровне разбирается в сетях, например, ну и редкий сетевой администратор умеет в код энтерпрайз уровня.

    На ваш вопрос ответ такой: вам нужно самостоятельно определиться что вам интереснее, чем вам хочется заниматься. Если душа лежит в разработку - нужно как можно раньше именно ей и заниматься. Рост экспертизы в эксплуатации даст вам минимальное преимущество в дальнейшем трудоустройстве.
    Если же нравится «в эксплуатацию» - тоже классно; продолжайте карьерный путь, наращивайте экспертизу.
    Ответ написан
    3 комментария
  • Как вывод команды help в терминал передать в переменную?

    Vindicar
    @Vindicar
    RTFM!
    help() выводит doc-string переданного объекта. Обычно этот doc-string лежит в атрибуте __doc__.
    Так что можно сделать куда проще, чем подсовывать что-то вместо stdout:
    help_text = getattr(obj, '__doc__', None)
    В help_text будет None или строка документации.
    Ответ написан
    Комментировать
  • Как в название одной переменной внести значение другой переменной?

    Vindicar
    @Vindicar
    RTFM!
    Это можно сделать, но в 99% случаев это не нужно делать. Во-первых, пользователь может ввести строку, которая не является корректным идентификатором. Во-вторых, появляется риск нечаянно перезаписать переменную, которую мы не хотели трогать.
    Вместо этого следует использовать словарь (dict), где ключ - имя "переменной", а значение - её содержимое. Это куда более контролируемо.
    Нет, я хочу выстрелить себе в ногу, и санитары меня не остановят!

    Функция globals() возвращает словарь глобальных переменных, а locals() - словарь локальных.
    При этом эти словари - не копии, а, можно сказать, оригиналы. Добавишь в них новый ключ - появится новая переменная. Вот пример в интерактивной консоли питона:
    Python 3.11.7 (tags/v3.11.7:fa7a6f2, Dec  4 2023, 19:24:49) [MSC v.1937 64 bit (AMD64)] on win32
    Type "help", "copyright", "credits" or "license" for more information.
    >>> l = locals()
    >>> l['x'] = 1
    >>> x
    1
    >>>

    Ответ написан
    Комментировать
  • Как работают рекурсии?

    Vindicar
    @Vindicar
    RTFM!
    Raddzor788,
    Где хранятся все эти значение 1,2,3,4, ведь у моего 'x' нету же звездочки(*х), чтобы собрать столько аргументов.

    Твой x - это несколько разных x. Потому что есть такая вещь как области видимости. Обычно есть область видимости функции (локальная) и глобальная область видимости скрипта. Если функция не видит нужного имени в локальной области - она ищет в глобальной. Если не видит и там - ищет в __builtins__.
    0. По умолчанию есть глобальная область видимости скрипта.
    1. При вызове func(1) создаётся локальная область видимости (скажем, А), в ней создаётся имя x, указывающее на 1.
    2. Отработало условие 1 < 4.
    3. Вызывается func(2). При этом создаётся НОВАЯ локальная область видимости Б (потому что новый вызов функции), в ней создаётся имя x, указывающее на 2.
    4. Отрабатывает условие 2 < 4.
    5. Вызывается func(3). При этом создаётся локальная область видимости В, в ней создаётся имя x, указывающее на 3.
    6. Отрабатывает условие 3 < 4.
    7. Вызывается func(4). При этом создаётся локальная область видимости Г, в ней создаётся имя x, указывающее на 4.
    8. Условие 4 < 4 не отрабатывает. Происходит вызов print(x) - имя x находится в текущей локальной области Г, выводится ассоциированное с ним значение 4. Отрабатывает print(4), происходит возврат из функции, область видимости Г уничтожается.
    9. Происходит вызов print(x) в предыдущем "слое" рекурсии. Текущая локальная область видимости В - в ней имя x связано со значением 3. Отрабатывает print(3), происходит возврат из функции, область видимости В уничтожается.
    10. Происходит вызов print(x) в предыдущем "слое" рекурсии. Текущая локальная область видимости Б - в ней имя x связано со значением 2. Отрабатывает print(2), происходит возврат из функции, область видимости Б уничтожается.
    11. Происходит вызов print(x) в предыдущем "слое" рекурсии. Текущая локальная область видимости А - в ней имя x связано со значением 1. Отрабатывает print(1), происходит возврат из функции, область видимости А уничтожается.
    12. Мы вышли из всех слоёв рекурсии. Мы находимся в теле скрипта и работаем только с глобальной областью видимости.
    Ответ написан
    Комментировать