Ответы пользователя по тегу Программирование
  • Почему обнуляется переменная заданная внутри цикла (bash скрипт)?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Вы вызываете внешнюю команду cat с конвейером "|", и все что идет в блоке после конвейера - будет работать в отдельной оболочке. Отсюда "echo 1 freePipe" будет выводить внутреннюю переменную процесса cat, а не вашего цикла.

    Да, а чтобы закончить цикл, пользуйтесь exit или break.
    Команда break может иметь аргумент, чтобы закончить цикл определенной вложенности.
    например

    while true
    do
       while true
       do
          while true
          do
             break 2
             echo 3
          done
          echo 2
       done
       echo 1
    done


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

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    "Занимался привлечением клиентов и развития отношений с ними, частично маркетингом."

    "Подскажите, какое минимальное количество людей нужно и какие у них должны быть навыки, чтобы начать вышеописанную деятельность ?"

    Извините, но какие-то взаимоисключающие параграфы.

    Чтобы начать - вы должны уметь найти и привлечь клиента, чтобы подписать договор и получить деньги.
    Все остальное нужно, чтобы удержать клиента, чтобы получить больше денег, чтобы получить больше клиентов впоследствии.
    Ответ написан
    Комментировать
  • Как представляется отрицательное число в дополнительном коде?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    > 1111 1111 = 256. (Именно так представлено число 256 в двоичной системе, на сколько я знаю)
    > 1111 1111 = -127 (В обратом коде( two's compliment) -127 выглядит именно так, судя по википедии)

    Неверно.
    1111-1111 = 255

    256 это:
    0000-0001 0000-0000
    Ответ написан
    Комментировать
  • В чем смысл ежедневных сборок?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Варианты могут быть такие:
    а) На каждый коммит сразу идет сборка продукта и прогоняются интеграционные тесты.

    Плюсы такие - на рабочем месте вам нужен только GIT и IDE, все компиляторы, окружение для запуска приложения - на нодах билдсервера. В результате вы можете кодить откуда угодно, и сразу проверять целостность сборки с каждым коммитом.

    б) сборка может быть ночной. Например потому что билд идет 5 часов на толстом сервере, и на рабочей машине он будет идти 10-15 часов, а то и не идти вообще. Тогда конечно, желательно не ломать билд недоделанными коммитами. Но git же позволяет коммитить без пушей, либо пользоваться бренчами, и настраивать сборку не на просто коммит, а на мерж в девелоперский или мастер бренч.

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

    Ну и кроме того, у разработчиков своя работа, у тестировщиков своя. Полезно тестировать фичи по мере их появления, а не ждать неделю, а потом сидеть в мыле.
    Ответ написан
    3 комментария
  • Как через SSH открыть CLI не перезапуская программу?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Не нужно писать архитектуру.
    То что вы хотите делать, уже выполняют менеджеры экранов - screen и tmux - пользуйтесь ими. Если очень интересно, посмотрите как они написаны.

    Но добавлять такой функционал в свою программу - не линукс way, если уже есть готовые инструменты.
    Ответ написан
    Комментировать
  • Как уйти с распутья технологий?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Простите, а какое значение вы придаете следующим словам и фразам:
    а) Высокий порог входа
    б) Трудолюбие и лень
    в) Сложный и легкий
    г) Большой объем знаний
    д) Специалист в области x

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

    ИТ сфера разрослась так, что ее изучить целиком уже невозможно в принципе. Только отдельные части. И даже в отдельной части стать экспертом можно за несколько, а то уже и много лет.
    Ответ написан
    Комментировать
  • Как программировать в команде?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Тебе выдадут куратора, он будет тебе давать конкретные задания.
    Тебе должны выдать ссылки на документацию или показать, как у них организована работа.

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

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

    Не обязательно в первые недели выполнить все-все-все, важнее разобраться как правильно работать. У тебя на это целых три месяца, и понять, справляешься ли ты, можно будет только через месяц-два.
    Ответ написан
    3 комментария
  • Чем заняться физику в IT?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    "Чем заняться физику в IT?"
    "1 курс физического факультета"

    Вы не физик. Вы еще студент, и как физик не представляете ничего интересного. Вы определитесь с тем, что вы вообще хотите? Может быть, как физик, вы сможете поднять ядерную энергетику? Или разработать новый вариант солнечной панели, более эффективный? Или вы хотите учиться одному, работать в другом, а деньги получать словно вы третий?
    Ответ написан
    2 комментария
  • Как открыть/создать файл из под другого пользователя?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Создавать и открывать файлы из-под другого пользователя - некорректно.

    Почему бы не добавить всех нужных пользователей в группу, и пользоваться групповыми правами?

    Второй вариант - дать пользователю право на sudo, тогда он может от имени рута выполнять su (чтобы выполнить комнаду от другого пользователя), либо от имени рута выполнить команду chown (сменить владельца)

    Третий вариант - настроить ssh ключи на локальной машине для пользователя, чтобы он мог выполнять команды через remsh
    remsh user2@localhost
    Ответ написан
    Комментировать
  • Существуют ли операционные системы сделанные в России?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Операционная система без приложений, практически никому не нужна. Операционная система, которая будет полностью поддерживать приложения, написанные для другой операционной системы - огромнейшая, практически неподъемная работа.

    Что подразумевается под российским аналогом Ubuntu?
    Видимо у вас недостаток информации в том, что такое дистрибутив Linux, ибо ядро линукс общее для всех Линуксов, а дистрибутив разный.
    Кроме того, Linux - открытый код, никаких запретов на него быть не должно. Другой вопрос, что ПО под Linux не так много.
    Если кому-то не нравится кем финансируется Линукс - форкаете исходники и допиливаете свою - никто не запрещает. Просто если государство это хочет контролировать - пусть финансирует разработку, нанимает программистов, обеспечивает мощностями для поддержки репозитариев, для документации, для комьюнити.

    Возможно вас заинтересует отечественный проект ReactOS, как один из самых свободных проектов, с замахом на запуск windows приложений - на Хабре про него отписываются в блоге. Уже на уровень 98 винды и даже дальше вышли успешно, и поддерживают виртуализацию.

    Что же касается аналогов MacOS и Windows, обратите внимание на размер и прибыль Microsoft и Apple. Как вы думаете, в РФ реально может открыться и существовать такой проект, или его быстро подомнут под себя определенные структуры?

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Идите на вышку.
    На программиста учатся самостоятельно. Вам нужно учиться учиться. Учиться организовываться. Учиться работать с преподавателями, с информацией, которая вам неприятна и возможно не нужна - но на любой работе это будет встречаться, а полезно уметь с этим справляться.

    Из полезного, что можно получиьт на вышке - общая грамотность, математика, алгоритмы, английский, общее образование, которое позволит вам понимать как работает живой мир (а не идеальный компьютер).
    В общем не воспринимайте образование исключительно как умение программировать - расширяйте кругозор.
    А программированию учитесь самостоятельно. Большая вероятность в вузе найти соумышленников для разработки своего проекта. Может быть на кафедре, может отдельно.
    Ответ написан
    1 комментарий
  • Профессии в которых используют SQL?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Вам - в ентерпрайз.

    1. Бизнес аналитик.
    Если английский на разговорном уровне, то это именно ваше.
    Фронт работ - общаться с заказчиком на бизнес уровне, передавать разработчикам что именно хочет видеть заказчик. Есть множество энтерпрайз проектов, включая собственно разработку софта для тех же банков, где нужны бизнес аналитики, которые будут понимать что именно должно происходить с данными, и пояснять это разработчикам, помогая составлять техзадание.

    2. Разработчик баз данных.
    Слежение за состоянием баз данных, обновление, накатка. Для тестирования различных нововведений нужно и приложение обновлять и данные для него готовить. Чтобы данные соответствовали нужной версии приложения, чтобы данные соответствовали стандартным тестовым данным - работы полно. Особенно в крупном проекте, где для тестирования выделено несколько десятков тестовых энвайрнментов. В идеале пытаться это все автоматизировать, но в энтерпрайзе бывает что невозможно.
    Ответ написан
    Комментировать
  • Что такое автотесты кода и какие они бывают?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    "Разработчики пишут скрипты например на php, где эмулируют какую то последовательность запросов на сервер?"

    Обычно этим занимаются тестировщики. Они тоже умеют писать скрипты. Есть хорошие среды для тестирования, в которых можно разработать множество автоматических действий.
    Разработчики и тестировщики вместе пишут приложение так, чтобы его было удобнее тестировать.
    Ответ написан
  • Продажа IT-продукта. Как все организовать?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    "С самим продуктом я определился, с рынком сбыта тоже"

    "Меня больше волнует другой вопрос: как продавать через интернет?"

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Вы может быть удивитесь, но очень многих на работе держит именно необходимость в деньгах.
    Причем у очень многих, работа гораздо более унылая и тяжелая.
    Если вы классный разработчик, попробуйте просто сменить проект на более удобный.
    Ответ написан
    3 комментария
  • Цикличный таймер?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    А задача какая стоит и зачем?

    Так воспользуйтесь кроном.
    первого числа сбрасываете цену
    3,5,8,11 и так далее запускаете скрипт повышения цены и сохраняете где-то timestamp от этой даты +3 дня.
    На сайте выводите счетчик от timestamp минус текущая дата - получаете таймер обратного отсчета.
    Ответ написан
    7 комментариев
  • Лучший способ обучения?

    saboteur_kiev
    @saboteur_kiev Куратор тега Книги
    software engineer
    "более легкий и эффективный способ обучения"

    Взаимоисключающие параграфы.
    Эффективные методы - более тяжелые.
    Неэффективные - более легкие.

    Читайте книги и статьи, пишите код. Секретного ингредиента нет.
    Ответ написан
    Комментировать
  • С помощью какого инструмента создать информационное приложение?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Сделайте в экселе шаблон с формулами.
    Защитите ячейки, которые пользователь не должен править.

    Без программирования, только математика.
    Ответ написан
    Комментировать
  • Как выучить английский начинающему программисту?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Начинающий программист может выучить английский так же как и любой другой человек.

    Пойти на курсы
    Заниматься по учебнику
    Общаться в разговорных клубах/чатах/петь песни/смотреть фильмы.

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Нагружайте рутинной либо хорошо задокументированной работой, с минимумом творческой потребности.
    Не допускайте к тому, где нужно проявить смекалку.
    Ответ написан
    Комментировать