Задать вопрос
  • Где и как лучше начать изучать Python?

    @anerev
    https://qna.habr.com Хороший сайт, если в поиск скопировать заголовок вопроса вашего то парочку ответов будет
    Ответ написан
    Комментировать
  • Можно ли как-то ограничить количество одновременных сессий для пользователя в Symfony 5?

    myks92
    @myks92
    Нашёл решение — пометь вопрос ответом!
    Мне кажется, что тут не совсем вопрос про симфони, но тем не менее отвечу.

    Храните каждый сеанс пользователя в базе. Данные храните такие как ID пользователя, IP, user agent, тайм зону и т д. А в приложении проверяйте, если в пользователь зашёл с другого устройства (браузера), то говорите ему о том, что нужно завершить прошлый сеанс или этот сеанс будет автоматически удалён через 5 минут, если пользователь не будет продолжать этот сеанс.

    Думаю, что это самое простое решение.
    Ответ написан
    Комментировать
  • Где искать работу Junior'ом?

    @AndromedaStar
    .Net - monkey
    Добрый день, вот у вас же есть гитхаб с хорошими проектами? Если есть, то не вижу никаких препятствий, чтобы начать искать работу по всей России, или отправлять свой гитхаб всем HR из вашего региона.
    Вот вы ищете работу, здесь тоже сидят вполне себе люди, которые в поиске работников, но вы себя никак не рекламируете. С таким навыком поиска работы будет очень сложно куда-либо попасть.
    Ответ написан
    6 комментариев
  • Как правильно реализовать FullRestApi на yii2?

    @Mylistryx
    Наверное правильней на уровне роутов.
    'GET some' => '/site/index',
    'PUT some' => '/site/create',
    'POST some' => '/site/update'
    ....
    Ответ написан
    Комментировать
  • Как справиться с проблемами на некоторых моделях телефонов?

    alexgp13
    @alexgp13
    Руководитель ИТ-проектов
    К сожалению, Андроид такая штука, что на каждом телефоне есть свои крайне специфичные глюки. Например, одно из моих приложений упорно вылетает на Honor/Huawei, причем не всегда и не на всех. Но на Xiaomi, Samsung, Sony, LG, BQ, Highscreen и прочих работает стабильно. Решение пока так и не нашел, учитывая, что у меня самого Honor/Huawei нет, а используемые библиотеки более чем стандартны - из чистого Андроида, даже не GMS.

    По вопросам:
    1. Единственный вариант из-за большого зоопарка, и то не факт что на конкретной версии прошивки в конкретной стране не будет глюков.
    2. Тестируют долго и упорно, на всех устройствах, плюс анализ логов при сбоях на релизных версиях.
    3. Компоненты то есть, наверное, только это не гарантия, что в новой прошивке производитель ничего не сломает.
    4. Старайтесь максимально детально отрабатывать любые потенциальные ошибки, даже через банальное try-catch
    5. Не нужно, со временем нужный навык прокачается, а если просто так зубрить, то оно все равно без применения быстро забудется. Но это не значит что читать для себя интересные статьи про типичные ошибки не нужно.
    Ответ написан
    Комментировать
  • В 40 лет планирую поменять сферу деятельности с 1С на Android? Сколько на старте смогу зарабатывать?

    @ScyTer
    18 лет в 1С для программирования на почти любой другой технологии - почти нулевой опыт, разве что алгоритмика развита должны быть хорошо, возможно, архитектура, но вряд ли это можно перенести мобильную платформу. Навыков ООП нет. В общем, опыт крайне не релевантный.

    По Андройду советую строго Kotlin,: на Java будешь писать на старых (с точки зрения Андройда) технологиях, то есть тоже не релевантный опыт. Если планы на иос есть, то можно думать о Flutter сразу.

    Карта: открывай любые курсы, бери там список тем и на каждую уделяй часа 3 на теорию, потом часа 3 на практику. Но, вообще, вопрос странный для айтишника с 10+ стажем.

    И пиши приложения. Начиная от простых, вроде, будильника или погодного приложения и продолжая уже чем-то более сложным, желательно, клиент-серверным.

    Про Unity вообще отдельная тема, это, скорее, гейм-дев, а не мобильная разработка. Т.е. опыт будет релевантный лишь для Unity-вакансий.

    Возраст - не проблема. Зп никто выше 1к$ точно сразу не даст. Но за год-полтора, при целеустремлённости и нормальной конторе (что первое бывает не всегда) можно до 2к$ подняться.
    Ответ написан
    1 комментарий
  • Какую конфигурацию выделенного сервера выбрать для Autocad?

    avc
    @avc
    Инженер и программист
    Видеокарты Автокад почти не использует. Только для отображения в визуальных стилях с затенением, но ими мало кто пользуется и при этом софтовая прорисовка (при выключеном 3d-ускорении) стабильней и быстрее (но выглядит страшненько). Встроенного видео достаточно.
    Многоядерность вообще не используется - Автокад чисто однопоточный (кроме рендера, который вообще никто не использует). Так что требуется максимальная производительность одного ядра, быстрый системный диск, большой дисковый кэш (многие команды идут через сохранение файлов).
    А вот причем тут сервер - я тоже не понял. Я в принципе на серверных материнках Автокадом пользуюсь: Xeon E3-1270v3. Просто такие у меня десктопы. Проблем нет.
    Ответ написан
    Комментировать
  • Какая самая перспективная и востребованная отрасль в С#?

    @spaceatmoon
    Вначале писал как ответ на ваш вопрос про разные языки и решил отдельным ответом сделать.


    Со своей стороны скажу php, он очень востребован. Простой язык, половина возможностей носят рекомендательный характер и сильно зависит от команды, в частности от их силы в программирование. Мне попадались хорошие ребята, а попадали очень не очень, но всё конечно же зависит от ваших навыков.

    Минус PHP в отсутствии однородности экосистемы. В РФ есть 3 главных фреймворка Symfony, Laravel, Yii2 и дальше 0.5% другие. Каждый из них тянет лямку на себя и составляют долю по грубому 33%. Каждый фреймворк богат на возможности, решают одну и туже проблему, но это всё равно что react/vue/angular. Свои подходы, методы и быть профессионалом в каждом нельзя. Соответственно список вакансий уже не такой большой как кажется, ведь потом явно появится какое-то предпочтение. Например у меня в blacklist однозначно стоит Yii2.

    Также минус PHP в его направленности чисто на веб. Рано или поздно устаешь и хочешь возможности сделать обычное Windows приложение, игру, бинарник. Ведь PHP сильно зажат в этом плане, даже не так, там в принципе ничего нет на эту тему и не будет никогда. Только веб, но он прекрасен местами.

    Ещё можно рассмотреть Python/Django.

    В любом случае стоит ориентироваться на удалённую работу если вы не в СПБ и Москве. Лично в моём мухосранске какую технологию не выбери, максимум 1-3 контора нормальная. Остальные что-то мутят или в подвале сидят.

    Выбирай по зову сердца, иначе тошнить уже будет на 2 неделю. Я сейчас изучаю C# в частности asp.net, wpf. Даже по этим направлениям информации выше крыши.
    Ответ написан
    Комментировать
  • Что делать с этой формой?

    @Dementor
    программист, архитектор, аналитик
    Создал форму, сохранил, запускаю 1С Предприятие, нажимаю Файл\Открыть. Открывается моя форма.
    Поздравляю - вы стали программистом 1С!

    Это всё для чего она нужна?
    Окружающему миру ваша форма в таком виде даром не нужна - увеличивает энтропию и приближает к гибели вселенной. Но вы можете наполнить свою форму полезным содержимым.

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

    Её куда-то можно передать, как готовую форму?
    Да.

    Как?
    Снова очень широкий вопрос. Можно скопировать из вашей обработки и вставить туда, куда хотите. Можно внести в справочник внешних обработок и она станет частью учетной системы: будет открываться в качестве внешней печатной формы или внешнего обработчика табличных частей документов.
    Ответ написан
    Комментировать
  • Что лучше выбрать?

    Cuoca
    @Cuoca
    Подумайте об образе жизни, который хотите вести.
    SAP - это командировки, если вы хотите развиваться и получать больше 150к. Если вы согласны на меньшее, то обоснуетесь в сервисной компании и будете там вариться. SAP - это переработки. Т.к. всё завязано на бизнес-циклы компаний, вы должны ориентироваться на периоды производственной, бухгалтерской и налоговой отчетности вне зависимости от позиции ( конс или разраб). Например, свалить покататься на лыжах в декабре-январе-феврале-марте может быть проблемой (закрытие года, закрытие 1 квартала параллельно). Просто могут не отпустить или отправить в командировку (если вы работаете на таком модуле).
    Про фронтэнд ничего сказать не могу, но в SAP нет такого потока обновлений, что вам постоянно требуется бесперебойно учиться, чтобы не оказаться за бортом трудового рынка.
    Сейчас все активно переходят или завершают переходы на HANA, так что вы можете удачно въехать на рынок, т.к. всем, кто работал до этого, тоже надо будет доучиваться/переучиваться. Это даёт вам некоторую фору.
    Главный плюс - SAP очень интересный и очень большой. Если вы любите копаться, ковыряться и понимать как тут это вообще всё взаимосвязанное работает, надо брать.
    И еще надо учесть, что если вы хотите идти консом по функциональному направлению, то ваша работа больше про понимание бизнес-процессов и знание и выполнение настроек своего модуля и хорошее ориентирование в смежных. Если бизнес попросит что-то новенькое, то кодить будете не вы, а разраб, ТЗ которому вы поставите.
    Ответ написан
    Комментировать
  • Стоит ли учить Spring если не знаю некоторые темы?

    azerphoenix
    @azerphoenix Куратор тега Spring
    Java Software Engineer
    Добрый день.
    Все вышеперечисленное вами составляют базис языка Java. Возможно, что на начальном этапе вам не нужна многопоточность, но в любом случае знание основ java будет не лишним.

    но я не знаю такие темы как Аннотации, Коллекции, Обобщения, Многопоточность и т. д.

    Аннотации используются во всех современных библиотеках и фреймворках. Нужно знать хотя бы как они работают. В Spring, Hibernate также используются аннотации.
    Коллекции (JCF) - как по мне обязательный минимум, который нужно знать. В Spring вам придется работать с коллекциями.
    Обобщения (generics) - также достаточно широко используется, в том числе и в Спринг. Например, банальный конвертер (интерфейс Converter<S, T> и т.д.).
    До изучения Spring я бы рекомендовал вам изучить следующее:
    1) основы языка Java (все то, что вы перечислили выше).
    2) Ознакомиться с Java EE (сервлеты), глянуть на jdbc
    3) Изучить SQL (поиграться чуть с БД - MySQL, PostgreSQL и т.д.)
    4) Изучить Hibernate (ORM для работы с БД).
    5) Изучить TCP / IP. Изучить http методы (GET, POST, PUT и т.д.). Возможно, ознакомиться с сокетами.
    и только потом уже с имеющимися знаниями изучить Spring. При изучении Spring уже можно смотреть в сторону АОП и потихоньку изучить Spring AOP и т.д.
    Вот, курс по Spring Framework - https://www.youtube.com/watch?v=5ePo08sqcpk
    Курсов по Spring Boot полно. Есть неплохие на Udemy. Не лишним будет также изучение документации самого фреймворка. Также можете прочитать книгу Spring Boot in Action.

    Стоит ли мне учить Spring и доучивать эти темы вместе или сначала учить эти темы потом перейти к Spring?

    Сперва изучите эти темы, а потом уже Spring.

    https://javastudy.ru/interview/jee-spring-question...
    Ответ написан
    2 комментария
  • Подсистемы, назначение списков?

    @kalapanga
    По-моему, Вы в гугле задаёте совсем не тот вопрос, что Вас интересует. Найденные ответы не имеют отношения к проблеме. Ну вот грубо по пунктам:
    2) Сотрудники "почему-то не отмечена бухгалтерия". А бухгалтерии не интересен каждый сотрудник по отдельности. Она учтёт в расходах предприятия одну общую сумму - зарплата всех сотрудников. А каждым отдельным сотрудником видимо будет заниматься подсистема Зарплата.
    3) Номенклатура "что это вообще". Список услуг, которые оказывает предприятие клиентам, и список материалов, которые требуются для оказания этих самых услуг. "Покраска стен" - услуга. "Банка краски" - материал. Вот это будут элементы справочника Номенклатура. Имеет отношение ко всем подсистемам кроме Зарплаты.
    4) Склады "почему нет галочки бухгалтерии". Склад - это конкретное физическое место, где лежит допустим та самая банка краски. Складов может быть несколько. А бухгалтерии нужно только знать, что у организации есть столько-то краски, на такую-то сумму.

    Всё это деление условное, это видение разработчика. Можете поставить все галки - ничего не сломается. Но зачем человеку, который занимается в организации кадрами и зарплатой информация о клиентах? Как минимум лишняя, а возможно ему и не положено её видеть!
    Ответ написан
    Комментировать
  • Как сделать диапазон цены в 1с?

    @twistfire92
    Python backend developer
    В обработчике ПриИзменении

    Можете завести отдельный регистр, в котором будете хранить допустимые диапазоны цен для каждой позиции. Измерение - ссылка на справочник товаров, ресурсы - минимальная и максимальная цена.
    В обработчике ПриИзменении уже проверять подходит ли новая цена под эти границы.
    Ответ написан
    Комментировать
  • Подойдет ли ms sql express-версия для создания бд где планируется около миллиона записей?

    quality
    @quality
    admin, supp: windows,linux; ubiquiti,mikrotik.
    Добрый день. Установите локально express редакцию, создайте таблицу и поля, внесите 1 запись (+- что планируется вносить) и посмотрите запросом размер строки. И методом простой математики, узнаете ответ на ваш вопрос.
    Ответ написан
    Комментировать
  • Как работает веб-сервер и node js в связке? Зачем нужен Nginx?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега Веб-разработка
    Самое простое - nginx отдаёт статику. На больших объёмах делать это через Ноду неэффективно.
    Посложнее - nginx позволяет управлять ходом запроса. Например, редиректить на https.
    Ещё сложнее - можно настроить nginx, чтобы он умно балансировал запросы между несколькими бэкендами и автоматом блокировал слишком частые попытки подключения.

    Nginx очень хорошо в промышленных масштабах делает определённую часть работы, связанной с http-запросом, поэтому ему эту часть работы и делегируют.
    Ответ написан
    Комментировать
  • Стоит ли начинать карьеру в SEO?

    @pcdesign
    Идти в сеошники, все равно как идти в шаманы. Как в шаманизме постучал эдак по бубну и пошел дождь, а эдак снег. Исключительно опытный путь, методы проб, ошибок и экспериментов. Тоже самое и в сео.

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

    Но вы всегда будете как эйнштейновый человек вне ведении истинной картины:
    «В нашем стремлении понять реальность мы отчасти подобны человеку, который хочет понять механизм закрытых часов. Он видит циферблат и движущиеся стрелки, даже слышит тиканье, но он не имеет средств открыть их корпус. Если он остроумен, он может нарисовать себе некую картину механизма, которая отвечала бы всему, что он наблюдает, но он никогда не может быть вполне уверен в том, что его картина единственная, которая могла бы объяснить его наблюдения. Он никогда не будет в состоянии сравнить свою картину с реальным механизмом...»
    «Эволюция физики» А.Эйнштейн, Л.Инфельд.
    Ответ написан
    1 комментарий
  • Как хостить 100+ баз 1С?

    Jump
    @Jump
    Системный администратор со стажем.
    Сервер на windows (есть мысль, что во всём виноват он, так ли это? стоит ли переехать на линукс?)
    Нет. Быстрее на линуксе работать не будет.

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

    Если предположить что базы файловые то -
    1. Обратить внимание на клиентские компьютеры которые работают с базой - SSD и8гб озу обязателны. Именно на клиентах. Ну и настройка процессора на максимальную производительность.
    2. Сеть, и организация шары. Сеть должна быть нормально настроена и работать четко.
    3. Базы на сервере на SSD желательно, обязательно форматировать диск под базами с размером кластера 8к.
    4. Обратить пристальное внимание на обслуживание БД. Регулярно проводить реиндексацию и сжатие баз. В процессе работы, а особенно при обновлениях базы распухают - а это все приходится тащить по сети.


    В общем при нормальной настройке база должна открываться примерно за 1-2минуты. Быстрее не получится. А этих результатов достичь вполне реально.

    Из явно видных проблем - raid 1 из 2-х дисков.
    Сразу возникает подозрение что на этом массиве установлена система и лежат базы. Так делать нельзя.
    Сделали рэйд под систему - отлично. Но под базы будьте добры выделить отдельный диск или рэйд.
    Ответ написан
    Комментировать
  • Какие версии Delphi сейчас актуальны для разработки desktop-приложения?

    HemulGM
    @HemulGM Куратор тега Delphi
    Delphi Developer, сис. админ
    Актуальны все версии после 10.х.
    RAD Studio - это среда разработки, которая позволяет писать и на Delphi и на C++
    Delphi - это среда, в которой можно писать только на Delphi.

    Использовать всегда стоит самую последнюю версию. Последняя бесплатная версия (Community Edition) - это 10.3.3.
    Ответ написан
  • WPF Каким образом можно передать данные из СоmboBox одного окна в Label другого окна?

    AVollane
    @AVollane
    Начинающий C# разработчик
    Здравствуйте. Думаю, простым и надёжным способом будет передача нужных данных через конструктор второго окна. Стандартно он создаётся без параметров, но мы можем дописать их туда. Написал код и снабдил его комментариями, думаю так будет проще разобраться.
    Код XAML главного окна (MainWindow):
    <Window x:Class="ComboBoxResultToAnotherWindow.MainWindow"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
            xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
            xmlns:local="clr-namespace:ComboBoxResultToAnotherWindow"
            mc:Ignorable="d"
            Title="MainWindow" Height="450" Width="800">
        <StackPanel>
            <ComboBox Name="cbPat" Margin="100" Height="30"/>
            <Button Name="openSecondWindowButton" Width="100" Height="40" Content="Second Window" Click="OpenSecondWindowButton_Click"/>
        </StackPanel>
    </Window>


    Код XAML второго окна (SecondWindow):
    <Window x:Class="ComboBoxResultToAnotherWindow.SecondWindow"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
            xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
            xmlns:local="clr-namespace:ComboBoxResultToAnotherWindow"
            mc:Ignorable="d"
            Title="SecondWindow" Height="450" Width="800">
        <Grid>
            <Label Name="labelWindow2"></Label>
        </Grid>
    </Window>


    Код C# главного окна (MainWindow):
    // Основное окно
        public partial class MainWindow : Window
        {
            // Тестовый список элементов, здесь я взял строки, но вы можете взять другой источник данных
            // и другой тип данных. Можете изменить способ их получение, вобщем как сами посчитаете необходимым
            List<string> elements = new List<string>() { "first", "second", "third" };
    
            // Конструктор основного окна
            public MainWindow()
            {
                InitializeComponent();
    
                // Привязываем элементы к комбобоксу
                cbPat.ItemsSource = elements;
            }
    
            // Обработчик события нажатия на кнопку
            private void OpenSecondWindowButton_Click(object sender, RoutedEventArgs e)
            {
                // Создаём объект, представляющий второе окно с лэйблом, на котором будем отображать данные
                // В конструктор передаём выбранный в комбобоксе элемент (мы изменили конструктор второго окна,
                // соответствующим способом). Данные преобразованы к нужному типу.
                SecondWindow secondWindow = new SecondWindow((string)cbPat.SelectedItem);
    
                // Показываем окно
                secondWindow.Show();
            }
        }


    Код C# второго окна (SecondWindow):
    // Второе окно
        public partial class SecondWindow : Window
        {
            // Конструктор изменён соответсвенно для приём строки, или другого элемента,
            // необходимого вам
            public SecondWindow(string element)
            {
                InitializeComponent();
    
                // Устанавливаем содержимое лейбла элементов, полученным в качестве аргумента
                labelWindow2.Content = element;
            }
        }


    У меня всё получилось. Выбрал в комбобоксе нужный элемент, нажал на кнопку, открылось окно, а там на лейбле выбранный элемент.
    Ответ написан
    2 комментария
  • Какие книги по C++ актуальны на 21 год для обучения с нуля?

    @res2001
    Developer, ex-admin
    Для начала берите любую книгу для начинающих. Лафоре подойдет. Берите издание по свежее. Есть и другие книги подобного рода, конечно.
    Страуструп тяжел и не годится для старта.
    Саттер, Мейерс больше для продвинутых.
    C++ Templates для старта точно не нужен.
    Так же не плохо было бы начать что-то читать по алгоритмам.

    Сейчас проблема с изучением С++ в том, что с 2011 года начали регулярно появляться новые стандарты, в них появляются фишки, которых раньше не было, некоторые из них очень полезные. Толстые учебники не успевают переписываться под актуальные стандарты. Но это не большая беда.
    Базовым сейчас является стандарт С++11 (или С++14 - это дополнение к С++11), его применяют уже многие. Более поздние (17, 20) применяются реже, так что можно не гнаться за тем, чтобы в книге они были освещены. Базовые понятия в С++ в целом мало изменились с древних времен. Но кое-что добавилось.
    Кстати, проблема с поддержкой новых стандартов актуальна не только для книг, но и для компиляторов языка.
    После освоения базы и начала практической деятельности сможете дальше продвигаться в изучении языка, ориентируясь на свои реальные потребности.
    Главное в изучении - больше практики - не зацикливайтесь на книгах. В начале старайтесь делать задания из книг. Когда более-менее освоитесь, переходите к своим задачам/интересам.
    Ответ написан
    1 комментарий