• Как изучить C++?

    @DimaIs
    Сложно посоветовать что-то конкретное, люди разные, но поведаю вам свой путь, ибо тоже начинал с с++.
    Изучил основы на сайте stepik (Ссылка на курс), курс от Яндекса и ВШЭ, его ведет приятный мужик, говорит кратко и по делу. Темы в основном простые (базовый синтаксис), а вот над некоторыми задачами пришлось попотеть не один день, иногда полностью отчаиваясь, но через неделю возвращаясь. В итоге это позволило мне собрать какое-никакое представление о том, что есть математическое мышление в купе ЯП. После этого прочел книгу Стивена Прата (Ссылка на книгу), длинное, порой сложное, но очень хорошо расписанное от А до Я чтиво. После него взялся за Страуструпа (Ссылка на книгу). Если вы дошли до этого пункта, то отсюда можно плясать в практически любом направлении - десктоп, геймдев, просто графика, computer vision, ИИ, все что угодно. Благо, материалов по темам достаточно.
    Ответ написан
  • Как "вскрыть" backbas.dll от 1С 8.*?

    @LollyFox
    достаточно сменить библиотеку backbas.dll на заранее пропатченную и всё!

    Патченная backbas.dll уже давно палится платформой и программа вылетает с ошибкой "Обнаружено нарушение целостности системы"

    obnaruzheno-narushenie-celostnosti-sistemy-01.png
    Ответ написан
    Комментировать
  • Java junior, серверное ПО, какие задачи решать, чтоб понять устройство системы?

    saboteur_kiev
    @saboteur_kiev Куратор тега Карьера в IT
    software engineer
    Хороший код приходит с опытом, проблематично целенаправленно учиться писать хороший код, это все равно как целенаправленно учить опыт.
    В этом плане нужно просто понимать почему что делается.

    А так - направление это совместная работа. Понимать весь цикл разработки. Как предсказуемо оценивать сроки задачи, как их правильно дробить, как взаимодействовать с другими разработчиками или командами.
    Все инструменты, с которыми сталкиваешься - старайся добиться, чтобы работало, потом интересуйся как это работает. Таже кафка - что она вообще умеет. Тот же ELK стек - можно научиться парсить логи чтобы искать нужные вещи, а можно в самом приложении поправить логгер, чтобы он в ЕЛК отправлял более удобные для парсинга данные. И так с каждым сервисом/технологией - ты как разработчик и со стороны приложения можешь менять и со стороны сервиса можешь смотреть что от него взять можно.
    Ответ написан
    Комментировать
  • Java junior, серверное ПО, какие задачи решать, чтоб понять устройство системы?

    @Asapin
    В свободное время ковыряюсь с Rust и Wasm
    Если уже есть небольшой опыт работы со спрингом, то советую посмотреть "Spring-потрошитель" (2 части) от Евгения Борисова на ютубе. Он хорошо объяснил как спринг устроен изнутри. Магии много, на разобраться можно.

    После этого можно начинать читать документацию по интересующим модулям спринга. Она обычно очень подробная и понятная. Вот например документация по Spring Jpa.

    После этого попробуйте с нуля написать какое-нибудь простое приложение на спринге не используя туториалы, quick-старты и spring initializr, только maven/gradle (смотря что у вас в команде используется) и документация. Скажем, 3 пользовательских роли (админ, пользователь, аноним), 3 эндпоинта: 1 доступен для всех, 1 доступен админу и пользователю, 1 доступен только админу. Для начала пользователей можно захардкодить. Потом прикрутить постгрес для их хранения, потом прикрутить эластик для логов и т.п.
    После этого добавить несколько тестов, причём как тестов, которые напрямую дёргают методы сервисов и репозиториев, так и тесты, которые эмулируют пользователя: отправляют http-запросы на вход в систему, а потом дёргают эндпоинты и проверяют, что ограничения эндпоинтов по ролям работают правильно.

    Всё это желательно без туториалов, просто ищете название нужного спринг-модуля, открываете его референс-документацию и по ней работаете.

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

    Понимание рекурсии и базовых алгоритмов полезно, но в корпоративном сегменте это будет встречаться не часто: бизнес процессы в большинстве случаев будут расписаны либо бизнес-аналитиком, либо самим заказчиком, а большинство структур данных и алгоритмов работы с ними уже доступны в стандартной библиотеке, Apache Commons Lang 3 и Google Guava.
    Ответ написан
    Комментировать
  • Высшее/средне-специальное образования для системного администратора?

    fdroid
    @fdroid
    press any key
    1) Для системного администратора ВУЗ даёт исключительно диплом, который нужен только для того, чтобы была возможность официально устроить в государственное учреждение либо в крупное коммерческое с требованиями уровня "у нас даже уборщицы должны быть с высшим!" Если диплом уже есть - не тратьте время на 2-е высшее. Сам факт отсутствия ВО часто очень мешает устроиться на интересную вакансию.
    2) К системному администрированию должна быть предрасположенность, интерес к этой сфере. Случайные люди в этой области не задерживаются, либо если даже скрипя сердцем работают, то им не позавидуешь - нет ничего хорошего в том, чтобы заниматься нелюбимой деятельностью. Вообще, я согласен с высказыванием Конфуция - "Найди себе дело по душе и тебе не придётся трудиться ни одного дня в жизни."
    3) Если плевать на пункт 2, то лучше гоу в программирование - это куда более востребованная и высокооплачиваемая сфера. Лично я не хочу.
    4) Не могу посоветовать каких-то конкретных курсов, потому что сама по себе сфера системного администрирования очень разнообразная и области деятельности далеко не всегда хоть как-то пересекаются друг с другом. Вспомнил разговор с одноклассником, типичным виндо-админом-эникейщиком (ничего против Win не имею, если что), который уехал в Москву из моей глубинки дабы покорить столицу своим обаянием и скиллами. Спрашиваю: "Ну как там? Что посоветуешь прокачать исходя из реалий рынка труда в Мск?" Он помолчал, вздохнул, и ответил: "Задроть линукс". Вообще, это в любом случае актуальный совет :D
    5) Практика и ещё раз практика. Можно быть теоретиком семи пядей во лбу, но это не поможет в реальности, если нет опыта работы с реальной инфраструктурой. Если не определились в принципе - устройтесь эникейщиком куда-нибудь просто для старта и понимания того в каком направлении хотелось бы развиваться. Например, если есть интерес к сетевому администрированию, можно поработать у провайдера какого-нибудь.

    Ну и древний баян всегда актуален:

    Если бы водителей принимали на работу так же, как системных администраторов и программистов, то выглядело бы это примерно следующим образом:

    Вакансия: водитель.
    Требования: профессиональные навыки в управлении легковыми и грузовыми автомобилями, троллейбусами, трамваями, поездами метрополитена и фуникулера, экскаваторами и бульдозерами, спецмашинами на гусеничном ходу, боевыми машинами пехоты и современными легкими/средними танками, находящимися на вооружении стран СНГ и НАТО.
    Навыки раллийного и экстремального вождения обязательны.
    Опыт управления болидами «Формулы 1» — приветствуется. Знания и опыт ремонта поршневых и роторных двигателей, автоматических и ручных трансмиссий, систем зажигания, антиблокировочных систем, навигационных систем и автомобильных аудиосистем ведущих производителей — обязательны. Опыт проведения кузовных и окрасочных работ — приветствуется.
    Претенденты должны иметь сертификаты Mercedes, BMW, а также справки об участии в крупных международных ралли не более чем двухлетней давности.
    Зарплата: XXXXX — YYYYY рублей, определяется по результатам собеседования.


    PS И ещё: учиться нужно всегда, постоянно, чтобы просто не отстать от технологий. Айтишник (неважно - сисадмин, программист, сетевик и т.д.) не может себе позволить роскошь работать с 8 до 5, а в свободное время напрочь выкинуть работу из головы, иначе быстро станешь неактуальным. Такие неактуальные дядечки нередко встречаются: освоили что-то лет ..цать назад и по инерции пытаются применять везде свои давно устаревшие знания, вместо того чтобы развиваться.

    PPS Подпишусь на вопрос чтобы он вышел в "Самое интересное". Любопытно почитать мнения других участников ресурса.
    Ответ написан
    7 комментариев
  • Как кастомизировать интерфейс Битрикс24?

    ReaverJS
    @ReaverJS
    Привет!

    можно ли сделать встраивание только с помощью JS, чтобы обойтись статичным локальным приложением?

    Правильно ли я понял что локальное - имеется в виду хостинга у вас нет?
    В документации Битрикс написано следующее:
    Важно: Следствием вышеуказанных пунктов является то, что механизм встраивания доступен только для серверных приложений!

    Так что... можно!

    1) Закидываем в архив zip наше приложение (или только index.html)
    2) Регистрируем приложение в битрикс (разработчикам > готовые сценарии > локальное приложение)
    Настраиваем права (обязательно, placements)
    3) Теперь ваше приложение можно открыть в битриксе. Заходим в Разработчикам > интеграции, ищем наше приложение и через контекстное меню жмем "Перейти к приложению"
    Нам надо посмотреть куда его закинул Битрикс. Можно через дев тулзы найти iFrame с нашим приложением и скопировать адрес.
    4) Осталось зарегистрировать место встраивания.
    Тут несколько вариантов.

    Вариант 1. Открываем входящие вебхуки, кидаем запрос на bind (можно просто открыть в браузере).
    https://dev.1c-bitrix.ru/rest_help/application_emb...
    {{url вебхука, который вам выдали}}/placement.bind?PLACEMENT=TASK_VIEW_TAB&HANDLER={{адрес из шага 3}}&TITLE={{My awesome APP}}


    Вариант 2. В нашем же приложении с помощью JS-библиотеки Б24 - регаем обработчик методом BX24.callMethod. Там же можно сразу указать HANDLER как текущий url iFrame-а.

    Вариант 3. Берем мои файлы index.html и placements.js, добавляем к ним страницу, которую надо отображать (к примеру my-awesome-page.html). Архивируем это все и на шаге 1 - заливаем этот архив.
    Тогда в приложении будет открываться уже моя страница. На ней 3 кнопки - зарегать плейсмент, удалить плейсмент, вывести в консоль список текущих плейсментов.
    Жмем "добавить" - указываем PLACEMENT (код места встраивания), HANDLER (адрес страницы которую надо встроить - т.е. адрес iFrame-а + /my-awesome-page.html), TITLE.
    Код (html - index.html, js - placements.js) В CODEPEN - не работает! Только при запуске из-под Битрикс24:

    Тут же можно посмотреть как регаются плейсменты (но лучше нет, т.к. плохой код)

    5) Готово. Идем проверять.
    Ответ написан
    5 комментариев
  • Какую часть Java занимает в мобильной разработке, если код написан на Kotlin?

    zagayevskiy
    @zagayevskiy Куратор тега Kotlin
    Android developer at Yandex
    Начинать с джавы необязательно, можно и сразу с котлина.
    Котлин под Андроид компилируется в джава-байткод. Также он использует джавовую стандартную библиотеку(коллекции, например). Поэтому с джавой ты так или иначе столкнешься, но, в принципе, это можно и по ходу раскурить, не обязательно страдать с самого начала. Когда уровень твоей компетенции вырастет, ты поймёшь, где пробелы и чего ты не понимаешь. Тогда изучишь джаву и устройство jvm.

    Свифта в айос на первых парах хватит с головой. Там есть Objective-C, но ты с ним не столкнешься, разве что полезешь во что-то низкоуровневое.
    Ответ написан
    4 комментария
  • Как сохранить отпечаток пальца в БД?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Вы не написали главного операционной системы. А так ищите biometrics api os name. Сенсоры обычно выплевывают блоб который апи уже обрабатывает, выдавая ответ есть ли он в базе.
    Ответ написан
    1 комментарий
  • Какими навыками должен обладать помощник системного администратора (эникейщик)?

    SeanCooper
    @SeanCooper
    IT и все с этим связанное.
    День добрый. Касаемо знаний - нет какого-либо стандарта знаний для любой компании, есть определенный набор требований, который разнится от компании к компании. Для телекома вам важно понимать сети на 1 и 2 уровнях, для датацентра, вам, скорее всего, нужно будет знать только аппаратную часть серверов, уметь вставлять их в стойку и включать, знать что такое рейд и как заменить в нем диск, для обычной неайти компании - уметь настроить и установить дохренльерд программ, чаще всего пиратских, там подкрутить 1ску, тут развернуть файлопоймойку, починить принтер и т.д. Это вкратце по ситуации на рынке, дальше конкретные рекомендации:
    • Нельзя на первых этапах поиска работы просто сделать 1 резюме и слать его рассылкой в 10 компаний. Мне вот сейчас хватает профиля на линкедине, ибо есть бэкграунд, опыт и рекрутеры пишут сами. Когда я искал первую работу, у меня было 6 разных резюме под разные профили и каждый перед отправкой я немного редактировал. Это сильно помогает увеличить вероятность вызова на интервью. Если компания ищет специалиста техподдержки, а в вашем резюме написано "Помощник системного администратора/Эникей" - шансов, что вас выберет HR меньше, чем если бы там было написано "Специалист тех.поддержки". Также и по навыкам: Если в вакансии просят умение: Настроить ОС Win10, работать с оргтехникой, уметь построить ЛВС, уметь пнуть 1ску и т.п., а в резюме, в навыках у вас указаны уязвимости веб-приложений и там, список сетевых служб, то вероятность, что вас позовут на именно эту вакансию опять же резко сокращается, ибо компании нужен человек, который знает, как принтер запустить если вдруг перестанет печатать, а не тот, который знает различие между telnet-ом и SSH.

    • Второй момент, опять же по навыкам. Рекрутер ищет не специалиста, который будет как минимум иметь этот набор знаний и выше за n-ную сумму. Ему нужно найти человека, который отработает в компании хотя бы год. Если вы гордитесь своими познаниями в сетях, но компания не располагает серьезной ЛВС, то вас скорее всего не возьмут, банально потому что ваши интересы не совпадают с задачи в компании и вряд ли вам это понравится. Пример: Если я пишу в резюме DevOps инженер и в основные знания ставлю Kubernetes, Ansible, Docker и Gitlab, то, пусть у меня и есть бэкграунд виндоус и линукс администрирования, и я полностью подхожу компании, которая ищет сисадмина, они, скорее всего, мне не позвонят, ибо я своими навыками четко показываю, чем именно я планирую заниматься в новой компании и другое мне будет неинтересно.


    • Третье. Опять же про навыки. Пожалуйста, проще. Не пишите "изучил Танненбаума", это звучит как "познал всё". Не пишите "поиск и устранение уязвимостей веб аппликейшнов", это подразумевает за собой действительно глубинное понимание темы ИБ, а не просто знать, шо над в айпитейблс закрыть лишние порты и шо такое sql инъекция. "Немного знаю сети, учил по книгам Танненбаума. Немного представляю, что такое ИБ, даже ходил на CTF-ки, ибо нравится это тема." Будьте проще, скорее всего потому после интервью вас и не берут, ибо по таким описаниям - вы спец на 100к, а по факту, знания только поверхностные. Конечно, судить я ваши знания браться не буду, но готов лишь предположить, исходя из вашей ситуации.


    В любом случае успехов в поисках!
    PS. Касаемо того, какую выбрать компанию, решайте сами. Я выбрал путь из телекома в небольшую компанию сисадмин-эникеем, где у меня не было присмотра сверху, дабы получить максимальную свободу. Но можно и в крупную пойти, чтоб сразу трогать, так сказать, "взрослые" железки и сервисы. Но эникея туда, как правило, не подпустят.
    Ответ написан
    2 комментария
  • Как организовать общение между базой данных 1с и django?

    WhiteSsnoww
    @WhiteSsnoww
    Программист
    В общем случае задачу обмена 1С с сайтом можно решить так.
    На стороне 1С:
    1. Создаем ПланОбмена и включаем в состав плана обмена объекты, изменения которых требуется выгружать на сайт
    2. Создаем РегламентноеЗадание, которое раз в сутки или чаще запускает процесс обмена данными с сайтом
    3. Пишем код на 1С, который забирает из ПланаОбмена новые зарегистрированные изменения, сереализует их в заданный формат - XML или JSON, и отправляет на сервер сайта через HTTPS-запрос.
    4. После успешной выгрузки данных на сайт получаем от сайта номер квитанции, которая ранее была отправлена на сайт. По номеру квитанции снимает с регистрации изменения на плане обмена, т.к. они подтверждены сайтом как принятые.

    На стороне сайта:
    1. Реализуем REST API для взаимодействия с 1С - чтобы 1С могла через HTTPS-запросы отправлять и получать данные.
    2. Реализуем таблицу для хранения квитанций для ПланаОбмена 1С
    3. Реализуем парсинг полученных данных из XML или JSON
    4. Реализуем запись в базу полученных данных

    PS На стороне 1С можно обойтись и без ПлановОбмена и выгружать данные выборкой запросом
    Соответственно можно обойтись и без квитанций, т.к. это сущность для ПланаОбмена
    Можно выгружать по одному объекту и снимать его с регистрации в ПланеОбмена сразу после 200 от сайта.

    Вариантов много. Зависит от задачи и требований.
    Ответ написан
    Комментировать
  • Что почитать по MS SQL Server и t-sql?

    @VitaliiVV
    мимопроходил
    руки еще не дошли почитать, но много знакомых рекомендуют Ицик Бен-Ган "Microsoft SQL Server 2012. Основы T-SQL", ну и про сайт майков все верно сказано, там все примеры разбираются максимально, но сходу глаза разбегаются)
    Ответ написан
    Комментировать
  • Как двум разработчикам одновременно разрабатывать один сайт на wordpress?

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

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

    1. SQL
    • up
      • up_2020_10_28_01.sql
      • up_2020_10_28_02.sql

    • down
      • down_2020_10_28_01.sql
      • down_2020_10_28_02.sql

    • seed
      • seed_2020_10_28_01.sql
      • seed_2020_10_28_02.sql




    Ниже пример MSSQL но это применимо к любой базе
    CREATE TABLE [Telemetry] (
        [Id] bigint NOT NULL IDENTITY,
        [Login] nvarchar(200) NULL,
        [DisplayName] nvarchar(200) NULL,
        [Url] nvarchar(400) NULL,
        [Start] datetime2 NOT NULL,
        [End] datetime2 NULL,
        [Duration] int NULL,
        [PageName] nvarchar(400) NULL,
        [CourseId] uniqueidentifier NOT NULL,
        [PageNumber] nvarchar(200) NULL,
        CONSTRAINT [PK_Telemetry] PRIMARY KEY ([Id])
    );
    GO
    
    
    CREATE INDEX [IX_Telemetry_CourseId] ON [Telemetry] ([CourseId]);
    GO
    
    
    CREATE INDEX [IX_Telemetry_Login] ON [Telemetry] ([Login]);
    GO
    
    
    CREATE INDEX [IX_Telemetry_PageNumber] ON [Telemetry] ([PageNumber]);
    GO
    
    
    CREATE INDEX [IX_Telemetry_Status] ON [Telemetry] ([Start]);
    GO
    
    ------ Изменение размера -----------
    DROP INDEX [IX_Telemetry_PageNumber] ON [Telemetry];
    DECLARE @var0 sysname;
    SELECT @var0 = [d].[name]
    FROM [sys].[default_constraints] [d]
    INNER JOIN [sys].[columns] [c] ON [d].[parent_column_id] = [c].[column_id] AND [d].[parent_object_id] = [c].[object_id]
    WHERE ([d].[parent_object_id] = OBJECT_ID(N'[Telemetry]') AND [c].[name] = N'PageNumber');
    IF @var0 IS NOT NULL EXEC(N'ALTER TABLE [Telemetry] DROP CONSTRAINT [' + @var0 + '];');
    ALTER TABLE [Telemetry] ALTER COLUMN [PageNumber] nvarchar(20) NULL;
    CREATE INDEX [IX_Telemetry_PageNumber] ON [Telemetry] ([PageNumber]);
    
    GO
    
    DROP INDEX [IX_Telemetry_Login] ON [Telemetry];
    DECLARE @var1 sysname;
    SELECT @var1 = [d].[name]
    FROM [sys].[default_constraints] [d]
    INNER JOIN [sys].[columns] [c] ON [d].[parent_column_id] = [c].[column_id] AND [d].[parent_object_id] = [c].[object_id]
    WHERE ([d].[parent_object_id] = OBJECT_ID(N'[Telemetry]') AND [c].[name] = N'Login');
    IF @var1 IS NOT NULL EXEC(N'ALTER TABLE [Telemetry] DROP CONSTRAINT [' + @var1 + '];');
    ALTER TABLE [Telemetry] ALTER COLUMN [Login] nvarchar(20) NOT NULL;
    CREATE INDEX [IX_Telemetry_Login] ON [Telemetry] ([Login]);
    
    GO
    
    DECLARE @var2 sysname;
    SELECT @var2 = [d].[name]
    FROM [sys].[default_constraints] [d]
    INNER JOIN [sys].[columns] [c] ON [d].[parent_column_id] = [c].[column_id] AND [d].[parent_object_id] = [c].[object_id]
    WHERE ([d].[parent_object_id] = OBJECT_ID(N'[Telemetry]') AND [c].[name] = N'DisplayName');
    IF @var2 IS NOT NULL EXEC(N'ALTER TABLE [Telemetry] DROP CONSTRAINT [' + @var2 + '];');
    ALTER TABLE [Telemetry] ALTER COLUMN [DisplayName] nvarchar(100) NULL;
    
    GO
    
    INSERT INTO [__EFMigrationsHistory] ([MigrationId], [ProductVersion])
    VALUES (N'20200922061931_ChangeSizes', N'3.1.8');
    
    GO
    
    
    -- изменение курса с гуида на строку
    
    EXEC sp_rename N'[Telemetry].[IX_Telemetry_Status]', N'IX_Telemetry_Start', N'INDEX';
    
    GO
    
    DROP INDEX [IX_Telemetry_CourseId] ON [Telemetry];
    DECLARE @var0 sysname;
    SELECT @var0 = [d].[name]
    FROM [sys].[default_constraints] [d]
    INNER JOIN [sys].[columns] [c] ON [d].[parent_column_id] = [c].[column_id] AND [d].[parent_object_id] = [c].[object_id]
    WHERE ([d].[parent_object_id] = OBJECT_ID(N'[Telemetry]') AND [c].[name] = N'CourseId');
    IF @var0 IS NOT NULL EXEC(N'ALTER TABLE [Telemetry] DROP CONSTRAINT [' + @var0 + '];');
    ALTER TABLE [Telemetry] ALTER COLUMN [CourseId] nvarchar(38) NOT NULL;
    CREATE INDEX [IX_Telemetry_CourseId] ON [Telemetry] ([CourseId]);
    
    GO
    
    
    GO
    Ответ написан
    3 комментария
  • Как устроиться на начальную должность в веб?

    PlugIN
    @PlugIN
    A Little Programmer
    Доброго дня! Попробуйте переложить бумажную логику какого-либо словаря на программную логику. Там будет всяческая фильтрация, выборки и UI. Главное придумать что-то и начать делать. Самое хорошее, IMHO, для pet project это самому сформировать требования к продукту, расписать функциональность, настроить свою инфраструктуру, спроектировать БД, сделать фронт (подумать над более-менее удобным UI) и бэк. Покрыть тестами. И приложить эти материалы как доказательство того, что вы можете самостоятельно обдумывать процесс работы и работать. Это, считаю, будет полезным.

    Еще идеи, возможно, примитивные для кого-то )

    • Каталог книг, которые есть в вашей домашней библиотеке
    • Автопостинг из вашего блога (на WP или самописного, что лучше) в вашей ленте в ВКонтакте ...
    Ответ написан
    Комментировать
  • Можно ли перенести лицензию 1С:Предприятия 8 на выделенный сервер?

    @LollyFox
    Программная лицензия 1С - это файл. Как и любой файл его можно скопировать на другой сервер, но смысла в этом нет никакого, т.к. в лицензии шифруются параметры сервера (мат.плата, ЦП, HDD/SSD, размер ОЗУ, Мак-адреса, БИОС и пр.). Поэтому, когда говорят про "перенести" лицензию 1С, то на самом деле речь идёт о получении совершенно новой лицензии с помощью резервного пинкода. В комплекте с поставкой при покупке идёт сразу три пинкода (один основной + два резервных). Если все три пина были использованы, то в центре лицензирования можно запросить следующий. Подробнее как это сделать есть тут.
    Количество таких обращений не лимитируется. Причем резервный пин-код можно запрашивать заранее, сразу как только был использован последний пин-код, а не когда лицензия уже слетит и потребуется следующий - на то он и называется "резервный".
    Ещё при "восстановлении" лицензии потребуется указать данные владельца лицензии точно также, как при первичной активации (с точностью до знака). Если эти данные не сохраняли в файл (по умолчанию имя файла licdata.txt), то эти данные лучше также заранее запросить в центре лицензирования до начала процедуры.
    Если все пинкоды и данные под рукой, то получение новой лицензии занимает максимум пару минут.
    Ответ написан
    Комментировать
  • Как сделать несколько background в Xcode?

    ivanvorobei
    @ivanvorobei
    iOS разработчик, канал https://t.me/sparrowcode
    Вам нужно разбить задачу на подзадачи. Давайте сформулируем:

    1. Как установить цвет фона перед показом контроллера
    2. Как устанавливать фон для контроллера
    3. Как менять фон у контроллера
    4. Как сменить фон по событию


    Теперь стало понятно что ваш вопрос состоит из нескольких, а значит хорошо бы их разбить. Но как написали, так написали. Давайте погружаться.

    Как установить цвет фона перед показом контроллера?
    Дефолтные значения настраиваются в методе viewDidLoad. Вы правило подозревали в вопросе.

    Как устанавливать фон для контроллера?
    Вы можете установить фон к корневого вью. Но я бы предложил вариант с UIImageView, растянутой к краям родителя и установкой image. Это может в каком-то смысле инкапсулировать логику фона и заменить класс на более интересный/сложный в будущем.

    Как менять фон у контроллера?
    Чтобы менять фон, нужно иметь доступ к контейнеру картинки. К примеру вы сделали проперти backgroundImageView, тогда изменить image не составит труда:
    class ViewController: UIViewController {
       var backgroundImageView = UIImageView()
    
       func viewDidLoad() {
          super.viewDidLoad()
          backgroundImageView.image = UIImage()
       }
    
       func changeBackground() {
          // Пример смены фона по вызову функции. Объект UIImage должен быть ваш, для примера пустой.
          backgroundImageView.image = UIImage()
       }
    }


    Как сменить фон по событию?
    Нужно определить само событие. Если кнопка - тогда по таргету. Запись в БД - обсервер. Возможно подойдут системные нотификации, но вы с ними поосторожнее. В любом случае по любому из ивентов вы вызовете функцию, и в этой функции достаточно будет вызывать код из предыдущего вопроса.

    P.S. Ваш вопрос очень тривиален, и, если честно, именно поэтому на нем нет ответов. Вам стоит изучить основы, и после перейти к практическим задачам.
    Ответ написан
    Комментировать
  • С чего начать, чтобы войти в IT (не имея опыта и профильного образования)?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Начните ответа на вопрос: зачем?

    IT сейчас очень распиарено, но там нет быстрых и простых денег, собственно как всюду. Я не знаю как в вашем городе, в Киеве junior manual QA зарабатывает примерно 600$, оренда однокомнатной квартиры у черта на куличках от 200$. До 2к$ вам потребуются годы, в принципе это скорее всего и будет вашим потолком в роли мануальщика. Бывают случаи, когда человек как специалист быстро дорастает до senior, но это исключения. В вакансиях вы наверняка увидете темы в стиле: от двух лет опыта, как правило это ложь, ищут по больше.

    Бизнес аналитик в IT не особо отличается от бизнес аналитика вне IT. А вот от QA отличается очень сильно. Это примерно как сравнивать маляра и продавца-консультанта. Так что курсы QA вам вот ни как не помогут в направлении бизнес аналитики.

    Бизнес аналитик - это фактически внутренний аудитор, IT тут ни при чем. Бух учет и юриспруденция же вам могут в этом направлении помочь.

    Рекомендую внутри вашего же банка попытаться перепрофилироваться, вероятно в этом будет больше смысла.
    Ответ написан
    1 комментарий
  • Как посмотреть процент обновивших приложение пользователей в Google Play и AppStore?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    В консоле гугла.

    5f3ead2857937677834773.png

    Статистика. Настроить отчет.
    Устройства. Количество обновлений. Все устройства.
    5f3eaebe8da1d588725505.png
    Еще можно глянуть активные устройства в разрезе версий приложения.
    Ответ написан
    Комментировать
  • Какие есть бесплатные уроки по разработке простенького приложения под Андроид на Kotlin?

    NoSure
    @NoSure
    Hindu master coder
    Берешь здесь проект и разбираешься. Имхо туториалы какая-то лажа.
    Ответ написан
    Комментировать
  • Что выбрать Python Kivy или Kotlin?

    @dmshar
    А чего вы нас тут спрашиваете? Мы ведь не видели вашего приложения. Мы не знаем вашей квалификации. И мы не знаем, на сколько можно доверять совету вашего знакомого. По хорошему, если он дал вам совет, то скорее всего его обосновал - почему это решение не рационально (вообще? или для вашего конкретного случая?). Вот эти его обоснования уже могут быть предметом обсуждения - на сколько они профессиональны, компетентны и на сколько они соответствуют тенденциям в современном "приложениестронии".
    А пока абстрактное приложение, абстрактный разработчик, абстрактные условия, абстрактные умозаключения - обсуждать-то нечего.
    Ответ написан
    2 комментария
  • Как выполнять бекап MSSQL в сетевую папку, защищенную паролем?

    hint000
    @hint000
    у админа три руки
    Как SQL сообщить логин и пароль от доступа к папке?
    Насколько я понимаю, вы пытаетесь делать через план обслуживания. А вы вместо этого делайте cmd-скриптом через планировщик заданий. В cmd-скрипте легко можете прописать подключение сетевого диска с указанием пароля,
    net use p: \\192.168.1.100\backup p@$$w0rd /USER:vpupkin
    а затем уже команду резервного копирования базы.
    set DATABASENAME=ИмяБазыДанных
    set DATESTAMP=%DATE:~-4%-%DATE:~3,2%-%DATE:~0,2%-%time:~0,2%-%time:~3,2%
    if "%time:~0,1%" == " " set DATESTAMP=%DATE:~-4%-%DATE:~3,2%-%DATE:~0,2%-0%time:~1,1%-%time:~3,2%
    set BACKUPFILENAME=p:\%DATABASENAME%-%DATESTAMP%.bak
    set OSQL="C:\Program Files\Microsoft SQL Server\120\Tools\Binn\OSQL.EXE"
    %OSQL% -E -Q "BACKUP DATABASE [%DATABASENAME%] TO DISK='%BACKUPFILENAME%' WITH FORMAT"
    Ответ написан
    Комментировать