Задать вопрос
Ответы пользователя по тегу Программирование
  • Является ли программист творческой профессией?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Является ли программист творческой профессией?
    Программисты бывают разные и степень восприятия творчества. Точить гайки на заводе - тоже вполне себе творчество...

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

    PS Если интересно мое мнение. То я думаю что программист это человек ни сколько с мат. складом ума сколько фантазией.
    Таких тоже хватает. Думается мне, что именно такие люди, "с фантазией", когда-то придумали JavaScript и InternetExplorer.

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

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

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Какой язык программирования?
    Python, PHP, с учётом разреза "веб".

    Также встает следущий вопрос: программы на каких языках возможно встроит на интернет-страницу, чтобы люди могли пользоваться этой программой просто перейдя по сайту?
    Язык, который можно встроить на веб-страницу непосредственно, в целом пока один - это JavaScript, но, почти все сайты которые Вы видите генерируют страницы на сервере, и отдают Вам (в смысле браузеру/клиенту) в уже готовом виде, а JavaScript обычно служит в качестве дополнительного языка, работающего уже "поверх" сгенерированной страницы, хотя, в некоторых случаях он может с таким же успехом выполнять и на сервере (т.е. служить серверным языком).

    Если у Вас всё трудно с программированием и Вы верите, в то, что изучения языка N - это один из сложных аспектов пути разработчика и не хотите учить "лишние" языки - можете ограничиться JavaScript'ом, по крайней мере для начала. В ином случае - можете дополнительно (или для начала) обратить внимание на один из языков, что я озвучил выше.

    P.S. Если опыта в программировании пока маловато - думаю лучше начать с Python'а, по крайней мере, он не так сильно "портит" новичков, как PHP.

    P.S. Всё выше сказанное - является исключительно моим личным мнением и с Вашим (т.е. мнением любого, читающего сей текст [а не только автора вопроса]) оно может не совпадать. Это нормально. И сообщать мне об этом в комментариях нет никакой необходимости.
    Ответ написан
    6 комментариев
  • Оповещение что на веб страничке что то поменялось(поехало)?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Судя по описанию, Вы говорите о юнит-тестировании HTML. Судя по всему, в одном из ответов здесь, есть ответ и на Ваш вопрос.
    Ответ написан
    Комментировать
  • Чем на работе занимается junior?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Мне 17 лет и я активно пытаюсь встать на путь java разработчика.
    Отличное стремление (встать на путь разработчика, какого - не столь важно).

    Но меня интересует вопрос что я буду делать на работе в будущем (если у меня все получится).
    Заниматься разработкой.

    Какие задачи будут стоять передо мной.
    Первая задача, которую Вам поставят, я думаю, научиться правильно пользоваться пунктуацией и орфографией русского языка, в т.ч. использовать пробелы, запятые, вопросительные знаки и т.д. :)))

    Как примерно проходит рабочий день. Помогают ли в решении задачи.И прочее.
    В нашей компании процесс выглядит примерно так:
    0. Приходит на работу Junior, с каким-то базовым набором знаний, т.е. человек которому не нужно объяснять какие-то прописные истины
    1. Первые неделю-две новый сотрудник привыкает к обстановке, разбирается с кодом, назначением проекта (в котором работает), и так далее
    2. Потом ему начинают ставить какие-то реальные задачи, в задачник. Задачи с низким приоритетом, желательно максимально простые из доступных/возможных
    3. Он решает задачи, если возникают какие-то вопросы - подходит к руководителю отдела (в нашем случае ко мне), либо к непосредственному наставнику, либо и к тому и к другому...

    Собственно, вот и весь рабочий день. Помимо вопросов, обычно у нас есть некоторое время в рабочем графике, посвященное специально для обучения подопечных (джунов), во время которого наставник объясняет подопечному почему нужно делать "вот так, а не как-то иначе", и т.д., то есть время отведенное непосредственно на обучение/теорию для подопечного.

    Собственно и всё, никакой романтики. Особенности рабочего дня будут зависеть и отличаться в разных компаниях, так же как и коллектив, зарплата и прочие другие параметры, я привел Вам "наш" пример.
    Ответ написан
    2 комментария
  • C# 5.0 и 7.0 большая ли разница?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Стоит ли учиться по по версии c# 5.0, в то время когда уже вышла 7.0?
    Учиться - стоит. Повышать квалификацию - вряд ли...

    P.S. Те C#, с которыми пришлось поработать мне, сохраняют почти полную обратную совместимость. К тому же, в учебных курсах (начального уровня), очень редко затрагиваются вопросы которые были бы крайне специфичны для какой-то конкретной версии языка (я говорю про C# в данном случае). А потом, когда поймете все самые главные принципы языка - переехать на новый "синтаксический сахар", обычно труда не составляет.
    Ответ написан
    4 комментария
  • Как понять какие вещи в программе налдо универсализировать?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Это я привел всего лишь пример, вопрос не про него, а про ситуацию вообще
    Как понять какие части кода надо делать универсальные а какие жеско прописывать?
    Если это не социальная сеть, где трафик исчисляется петабайтами, а нагрузка на базу - тысячами запросов в секунду, то наиболее рациональное решение в подобных вопросах, на мой взгляд, давно было найдено и называется оно ООП, в т.ч. для обработки данных, во многих системах (например, фреймворках) присутствует такая сущность как объект (или "модель" если угодно), в которую Вы без особого труда можете добавить новое свойство, рассчитываемое динамически. Это отлично работает в большинстве случаев.

    Другой пример решения подобных "проблем" - на уровне БД (я подозреваю, что речь про хранение данных в текстовых файлах не идёт?), например, в той же MySQL (всем до боли знакомой) есть механизм "виртуальных колонок", который решает проблему и с валютами (при должном желании) и с ценой за кв.м. и так далее. Ещё более простой вариант, который существует, наверное, во всех РСУБД - использовать VIEWS, дополняя его новыми значенями по мере необходимости, ещё вариант - создать триггер на INSERT/UPDATE и добавить новую колонку, значение которой будет вычисляться автоматически.

    Ну и т.д., примеров масса, но, как верно подметил предыдущий оратор - всё зависит от конкретного случая и универсального инструмента ни для решения подобных задач, ни для проведения строительных работ (как пример) - пока не придумали. Какие-то задачи лучше решаются "молотком", какие-то "дрелью"...
    Ответ написан
    Комментировать
  • Как сделать методом php - отображение текста из файла txt?

    Wolfnsex
    @Wolfnsex Куратор тега PHP
    Если не хочешь быть первым - не вставай в очередь!
    Можно это сделать без MySQL ?
    Если у Вас маленький объём данных, <200-500Мб, в общей сложности и нет необходимости в некоторых возможностях "толстой" БД, такой как MySQL - можете взять SQlite3, его поддержка встроена в PHP с версии 5.3+ (кажется).

    Как это делается - берёте любую программу, например, SQlite maestro, создаёте БД (файл). Добавляете данные в БД (базу данных), пишите SQL-запрос, что-то вроде... SELECT * FROM table1 WHERE city = 'Москва'; и... пользуетесь.

    Если Вы более точно конкретизируете вопрос - получите более точный на него ответ :)
    Ответ написан
    Комментировать
  • Удобство для малого офиса, какие программы?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    чат для общения,
    любой на Ваш вкус, иногда встроен в CRM

    новости(кто че сделал),
    для этого так же есть CRM, или любую CMS формата "корпоративный портал"

    планирование(какие есть задачи и сколько времени и в каком статусе),
    RedMine и масса других CRM, например "Битрикс-24" (там же есть и чат, и новости и пр. лабуда)

    статьи(аля это настраивать нужно так, что бы не спрашивать каждый раз почему не работает),
    "Вики", есть почти в любой CRM, например, в GitLab.

    ну и понятно что тут git тоже должен фигурировать,
    GitLab

    хотелось бы что бы все это было связано между собой,
    RedMine + Git, GitLab, MantisBT и масса других подобных бесплатных сервисов прекрасно связываются между собой в той или иной мере. Абсолютно полноценного комплекса, как Вы хотите, бесплатно - пока не существует.

    P.S. Ещё можно вот тут почитать.
    Ответ написан
    Комментировать
  • Как удобнее хранить пароли?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    А что используете для хранения своих личных паролей вы?
    Голову

    возможно уже есть готовое и безопасное решение.
    Есть, например вот. Удобное и безопасное, Ваши пароли - под паролем.

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

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Т.е. он по-факту работает как аутсорс компания по договору на несколько месяцев, но он один
    Юридически - не знаю, не юридически... вообще, один он или их 100 - разницы нет. Если говорить про обычный "трудовой договор", т.е. договор найма - то хоть не зависимо от кол-ва или удаленности - это не аутсорс, а просто работа на удаленке. Люди уезжающие в командировку - аутсорсерами внезапно не становятся ведь? Аутсорс - это передача некоторой задачи другой компанию или ИП, той компании, которая часть "этой" компании не является. Формально же, человек работающий в компании N - никаких "аутсорсинговых" услуг не оказывает, будучи являясь частью той компании, в которой он и работает (просто, условно говоря, "в командировочном режиме").

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

    Wolfnsex
    @Wolfnsex Куратор тега PHP
    Если не хочешь быть первым - не вставай в очередь!
    как реализовать поиск рандомного числа из нескольких диапазонов: 1-17, 26-100
    Как вариант - можете создать массив, каждый элемент которого будет содержать 2 значения - минимальное и максимальное число. Дальше с помощью функции rand() выбираете число из диапазона от 0 до длинна_массива-1 - это будет индекс массива. Далее, с помощью той же функции, выбираете рандомное число уже из этого диапазона.
    Ответ написан
    2 комментария
  • Как связанны backend+RESTful API+Базы данных?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Как связанны backend+RESTful API+Базы данных?

    Самый просто пример - это браузер, в роли клиента. И [*любой_язык*] в роли REST-сервера. Сервер при этом, может взаимодействовать с базой данных, для генерации ответов на запросы клиента.

    Но приложения на андроид пишутся на Java.
    Не только на Java... Но, это не имеет значения как такового, на чем они пишутся на клиенте.

    Получается, что если за основу сайта я взял Django, то и на мобильном приложении будет основа Django
    На мобильном приложении, с вероятностью 99% будет клиент. На чем он будет написан - значения не имеет особого, но Django в андроиде - очень вряд ли.

    Какую роль играет при этом сервер?
    Роль сервера, судя по всему.

    И да, последний вопрос: какие темы/аспекты нужно выучить, чтоб разбираться в этом?
    Конкретно про REST - я привёл Вам ссылку выше. Так же рекомендую ознакомиться со спецификацией на HTTP-протокол, полезно и в качестве примера для Вашего вопроса и вообще в целом.
    Ответ написан
    Комментировать
  • Как лучше хранить данные о трафике в БД?

    Wolfnsex
    @Wolfnsex Куратор тега Веб-разработка
    Если не хочешь быть первым - не вставай в очередь!
    Подскажите, как лучше хранить все это дело в базе? Я думал хранить в одной величине, например, в байтах, но что-то слишком большие цифры получаются.
    Если эти числа не выходят за максимальный допустимый размер (диапазон), например 9223372036854775807 - знаковое, 18446744073709551615 - без знаковое BIGINT, то скорее всего, ничего лучше, для хранения чисел (чем специальный тип БД, предназначенный для хранения именно чисел) - Вы не найдете.

    P.S. Если нужна точность до байт - хранить нужно в байтах. Если до мегабайт - соотв. округлять значения и хранить в мегабайтах. Т.е., в зависимости от необходимой точности можно выбрать конечную величину. Обработка больших цифр (целочисленных) - для компьютера не есть проблема, числа обрабатываются в ряде случаев, лучше чем например, текст.
    Ответ написан
    1 комментарий
  • Достаточно ли знать сам JavaScript(не JQuеry и т.д.) поверхностно для веб-разработки?

    Wolfnsex
    @Wolfnsex Куратор тега Веб-разработка
    Если не хочешь быть первым - не вставай в очередь!
    Можно ли обойтись азами JVS, чтобы выполнять необходимые при разработке задач?

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

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    1. Для создания дельты изменений в чем бы то ни было (в тексте, или в бинарных данных и т.п.) есть утилиты/алгоритмы, уже готовые. Можете взять их и адаптировать под себя, например diff. Как это будет реализовано на уровне JS'а в браузере я пока не очень представляю, но гипотетически - это вполне возможно/реализуемо.

    Как решить эту проблему? Возможно ли частичное обновление поля в MySQL

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

    Судя по контексту эпитета выше - это проблема не базы, а медленного интернета конкретного пользователя. А так же, какие-то серьёзные ошибки архитектуры. Каким образом пользователи умудряются прислать половину запроса - я не очень представляю, такое даже в "лабораторных условиях" довольно не просто сэмитировать, не говоря уже о том, что бы подобное повторялось многократно. Но если уж у Вас запросы как-то кусками умудряются приходить - ставьте в конце запроса какой-то маркер, который не сможет воспроизвести пользователь, например, какой-то бинарный символ, который будет говорить о том, что это конец сообщения. Если его нет - выдавать пользователю сообщение, что всё очень и очень плохо...

    Как выявить частичные изменения, чтобы не гонять весь текст целиком, а только внесённые изменения? Поделитесь опытом.
    Ответ на этот вопрос содержится в 1-м абзаце, выше по тексту :)

    Кроме того, как только пользователей станет много, подозреваю, сервер ляжет.
    Довольно странно будет, если у Вас база ляжет от такой нагрузки... Это скорее больше похоже, опять таки, на серьёзные ошибки в архитектуре, а не проблемы БД/сервера как таковых.
    Ответ написан
    Комментировать
  • Как сделать функцию поднятия объявления на php?

    Wolfnsex
    @Wolfnsex Куратор тега PHP
    Если не хочешь быть первым - не вставай в очередь!
    Без использования крона. Это связано как то с css?

    Вряд ли... Если речь идёт о каскадных таблицах стилей.

    Это можно сделать например, запустив PHP-скрипт из CLI (т.е. из командной строки, что бы он не прерывался по истечению 30сек., как это обычно происходит). Этот скрипт запускает бесконечный цикл, в котором будет проверять, сколько уже прошло времени и поднимать соотв. объявления/посты наверх.

    Или, при каждом запросе, перед отображением этих самых объявлений, сверять время и если настал час N - поднимать соотв. объявление наверх.

    Это будет:
    а) на PHP
    б) без CRON'а
    Ответ написан
  • Какие технологии использовать для реализации сервиса предоставляющего API?

    Wolfnsex
    @Wolfnsex Куратор тега Веб-разработка
    Если не хочешь быть первым - не вставай в очередь!
    А что Вы ожидаете услышать? В АПИ много кто чувствует себя хорошо, и нода и ПХП и даже С++. Наговнокодить можно на чём угодно, заставить проект работать очень быстро - можно и на ПХП. К тому же, большая часть нагрузки, как мне видится - ляжет на БД, а её проектирование и настройка, особенно это относится к Postgres - это целая наука. Я пока не очень представляю, как NodeJS будет держать такое кол-во пользователей (скорее всего от того, что я не очень хорошо знаком с NodeJS), но случаев когда она с треском падала - в истории достаточно.

    Что думаете по этому поводу?
    Я думаю, что Вы предоставили слишком мало входных данных и конкретики. Так как, например, даже горячо любимый мной Postgres - в ряде случаев, далеко не лучший выбор. А посоветовать пихать "Базу N" везде, где только можно и нельзя, не понимая всей сути проекта, могут только те, кто с другой базой не работал, и считает, что единственная технология с которой он знаком - лучшая из всех возможных. Посему, в виду скудности входных параметров, ответ на Ваш вопрос будет, либо таким же размазанным как мой, либо чем-то из серии "Юзайте NodeJS+MySQL, мой блог с посещаемостью 30 чел./месяц, вот уже 4-ый год как стабильно работает в такой связке! И ещё на WindowsServer всё это установить не забудьте! Лучшее сочетание из возможных."
    Ответ написан
  • Как настроить git сервера + sourcetree?

    Wolfnsex
    @Wolfnsex Куратор тега Веб-разработка
    Если не хочешь быть первым - не вставай в очередь!
    1. Git сервер на windows server 2012 (на нем будут все репозитории)

    Я бы так не стал извращаться, но Вам виднее видимо, раз для git-сервера был выбран windows...

    2. Подключение клиентов(разработчиков) к git серверу

    Известные мне способы: через HTTP, GIT и SSH протоколы.
    Где,
    а) HTTP - авторизация настраивается на уровне HTTP-сервера и проксируется на Git. В виндовсе насколько я понимаю, это должен быть IIS по логике вещей (иначе зачем нам вообще Windows, для этих целей?), соответственно, авторизацию настраиваете на нём
    б) GIT - не разу не использовал, т.к. изначально "родной" протокол Git, даже авторизацию не поддерживал (возможно сейчас что-то изменилось, но это мало вероятно).
    в) SSH-протокол, в виду особых причин в windows встраивался довольно хреново, когда я занимался этим вопросом, но возможно что-то изменилось.

    Подробности про протоколы.

    3. Автоматическое Создание бэкапа (например раз в неделю) репозитариев на др. сервер (Ubuntu)

    Элементарно, создаёте скрипт, который будет запускаться из планировщика, например, раз в неделю, и он делает либо:
    а) Пакует все папки репозиториев в архив(ы) и отправляет куда положено, любым доступным образом (FTP, SSH, HTTP, как-то ещё), но если есть вероятностью изменений в репозитории во время архивации, я бы воспользовался следующим вариантом, или отключал бы репозитории на время архивации
    б) Делаете пуш, всё тем же скриптом в удалённые клоны репозиториев, настроенных по принципу описанному выше. Или раз в неделю "git pull" с удалённого репозитория. Всё это хорошо расписано здесь.

    4. Автоматическая заливка репозитариев на Bitbucket

    Особо ничем не отличается от предыдущего пункта

    Спасибо!

    Не за что :D
    Ответ написан
  • Написать готовую версию приложения за день-два?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Подозреваю, что они владеют машиной времени. Или овладели техниками подобными тем, что описаны в фильме "Начало". Или чем-то ещё подобным, что недоступно (пока) широкой публике. Каких-то других вменяемых версий, мне в голову не приходит.

    У меня на более или менее сложное задание не меньше недели уходит.

    Вы видимо тоже начинаете чем-то подобным овладевать, т.к. у меня на разработку более ли менее сложного приложения (аки "задания") уходит вот уже 3-й год... :)

    сел за день написал язык программирования

    Я даже боюсь себе представить либо что там получилось на выходе из этого языка, либо как выглядит человек способный на такое... оба варианта меня крайне страшат, т.к. даже JavaScript был написан за 1.5 недели, т.е. даже на его разработку ушло 10 дней, вот той версии которой он был изначально...
    Ответ написан
    Комментировать
  • Как можно скрыть или изменить свой код, что бы его нельзя было посмотреть через браузер?

    Wolfnsex
    @Wolfnsex Куратор тега Веб-разработка
    Если не хочешь быть первым - не вставай в очередь!
    Можно, таких сервисов как грязи, например вот или вот... и ещё с дюжину как онлайн сервисов, так и офлайн софта найти можно.

    Ну и ещё тут можно почитать...
    Ответ написан
    5 комментариев