Задать вопрос
  • Как организовать доступ к локальной сети через openVPN?

    @Bratishques Автор вопроса
    https://openvpn.net/index.php/open-source/document...
    Настроил сетевой мост по данной статье. И, чудо, компьютеры в сети сервера начали пинговаться! Но доступа к ним я получить не мог. Меню виндоуса "Сеть" их просто не видело
    Открыл дефолтный порт openVPN'а и тот порт, который был указан в конфиге сервера и всё заработало. В локальной сети, однако, виден только компьютер клиента, что, в принципе, и нужно было, однако, хотелось бы в будущем объединять локалки.
    Отдельное большое спасибо господину O Di.
    Ответ написан
  • Как правильно разметить Centos 7 Server для виртуальных машин и контейнеров?

    @younghacker
    Правильно/неправильно это относительная оценка.

    Я делаю так.
    до 500 мег под /boot
    далее создаю LVM на котором ставлю
    /
    /home
    /log
    swap

    Но важным является то, что я не выделяю всё свободное место, а только необходимое плюс небольшой запас. С таким подходом пока имеется свободное место на LVM имеется возможность сделать lvresize и resize2fs прямо на ходу не перегружая систему.
    Диски для виртуалон же выделяю прямо в LVM.

    Для виртуализации использую KVM.
    Ответ написан
    Комментировать
  • Где еще можно поискать разработчика в проект (в долю)?

    xakpc
    @xakpc
    full-stack .net developer, CEO Leecero.com
    Хакатоны (вполне может быть), RussianDevCup (маловероятно), какие-то другие конкурсы типа него.
    Ответ написан
    Комментировать
  • Нормализация БД. Зло или добро?

    pi314
    @pi314
    Президент Солнечной системы и окрестностей
    Нормализация ради нормализации - зло в подавляющем большинстве случаев! Нормализация, как часть продуманного проектирования или рефакторинга модели данных - однозначно добро. Структура БД должна быть, по возможности, оптимальной для запросов, выполняемых на ней приложением, а вовсе не соответствовать какой-то там нормальной форме :) Это "оптимально" может в каждом конкретном случае зависеть от кучи факторов, начиная от самих запросов и особенностей конкретной использованной СУБД, и вплоть до объемов доступной памяти и скорости обращения к диску.
    Ответ написан
    Комментировать
  • Нормализация БД. Зло или добро?

    newross
    @newross
    Product owner
    Сильно зависит от масштаба проекта. Не стоит бросаться из крайности в крайность.
    Для мелких проектов нормализация делает работу проще.
    Но когда речь идет об огромных объемах данных и высокой частотой запросов, нормализация становится врагом. Даже простые JOIN увеличивают время выполнения запросов на порядок. Поэтому денормализация БД, внесение избыточности - обычная практика для HiLoad.
    Ответ написан
    Комментировать
  • Объясните как разобраться с application controller?

    @thepry
    Ruby on rails, 1С разработчик
    Прежде чем выводить данные, книги, или пользователя - контроллер их получает из базы. Обычно в урле содержится id объекта. Типа books/65/edit. Вот эти 65 попадут в params[:id], а в контролере будет написано @book = Book.find(params[:id]).

    Поэтому, в ApplicationController вам нужно определить значения переменных, которые вы хотите исппользовать во вьюхе. При этом из урла вы получить айдишники не можете и вам нужно придумать какой-то другой способ, как решить какую книгу и пользователя вам выводить. Или, может, всех выводить.
    Ответ написан
    3 комментария
  • Объясните как разобраться с application controller?

    POS_troi
    @POS_troi
    СадоМазо Админ, флудер, троль.
    Для вьюх application_helper.rb
    Для общих функций application_controller.rb
    Для данных модели.
    Ответ написан
    3 комментария
  • Фрилансер, хочу открыть фирму. Ваш опыт?

    evnuh
    @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    1) Не стоит снимать офис, пока нет острейшей необходимости. Острейшая необходимость - вас 4+ разработчиков и вы должны бешено что-то вместе пилить. До этого момента офис вам не нужен. Чтобы сесть в офис и уж тем более нанимать сотрудников вам нужно быть ИП или юр. лицом. Чтобы их открыть чаще всего это занимает от двух недель и не меньше 20к рублей. Сам офис будете искать, ездить, реонтировать, докупать технику туда, решать проблемы с ним постоянно возникающие - итого уже тысяч 100 для того чтобы смочь начать работать в офисе.
    2) офис почти гарантированно заставит вас нанимать сотрудников официально. Если коротко, найм сотрудника влечёт 40% налогов от его з/п.

    p.s. Попробуйте trello, он настолько простой и приятный что хочется в нем постоянно сидеть и закрывать таски)
    Ответ написан
    5 комментариев
  • Как лучше хранить настройки пользователей в БД?

    @DastiX
    Я в одном очень большом проекте подсмотрел классную фичу с "виртуальными столбцами", теперь очень часто пользуюсь в аналогичных, как у Вас случаях.

    Таблица концептов(concept):
    ID | NAME
    200 | Параметры отправки почты
    300 | Параметры отправки заданий
    ....

    Таблица параметров(param):
    ID | CONCEPT | NAME
    1 | 200 | Отправлять в пн
    2 | 200 | Отправлять во вт
    3 | 200 | Отправлять в ср
    ...
    10 | 300 | Отправлять задание 1
    11 | 300 | Отправлять задание 2
    12 | 300 | Отправлять задание 3
    ...

    Таблица Пользователей(users)
    ID | NAME
    1 | Саша
    2 | Петя
    3 | Вася
    ...
    Таблица реальных значений(xval)
    ID | CONCEPT | USR_ID | PARAM_ID | VALUE | ACTUAL
    1 | 200 | 1 | 1 | 1 | 1 | - Отправляем Саше по понедельникам почту
    2 | 200 | 1 | 2 | 1 | 1 | - Отправляем Саше по втоникам почту
    3 | 200 | 1 | 3 | 1 | 1 | - Отправляем Саше по средам почту
    4 | 200 | 2 | 3 | 1 | 1 | - Отправляем Пете по средам почту
    5 | 200 | 3 | 2 | 1 | 1 | - Отправляем Васе по вторникам почту
    ...
    20 | 300 | 1 | 10 | 1 | 1 | - Отправлять Саше задание 1
    21 | 300 | 1 | 11 | 1 | 1 | - Отправлять Саше задание 2
    22 | 300 | 1 | 12 | 1 | 1 | - Отправлять Саше задание 3
    23 | 300 | 2 | 11 | 1 | 1 | - Отправлять Пете задание 2
    23 | 300 | 3 | 10 | 1 | 1 | - Отправлять Васе задание 1
    Запрос
    select 
      u.name as usr,
      p.name as pname,
      x.value as val
    from users u 
    left join xval x on x.user_id = u.id and x.concept = 200
    left join param p on p.id = x.param_id
    where u.id = 1

    вернет вам все параметры отправки почты (concept=200) для Саши.
    USR | PNAME | VAL
    Саша | Отправлять в пн | 1
    Саша | Отправлять во вт | 1
    Саша | Отправлять в ср | 1
    Нужно узнать, какие конкретно отправлять задания?
    Просто меняете концепт на 300 и результатом будут все задания на отправку для Саши.

    Добавить какой-то параметр? Просто добавляете строку в таблицу и все!
    И никаких правок структуры в продакшене и другого геморроя.
    Ответ написан
    5 комментариев
  • Как лучше хранить настройки пользователей в БД?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега Веб-разработка
    масштабирование этих настроек (I want to believe) не планируется и вроде как можно сделать жестко.

    Очень надеюсь, что опытные архитекторы, или те, кто имел дело с подобным, подскажут как быть.

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

    Алгоритм прост:
    1. Делаете максимально удобное в плане доработки решение
    2. Пользуетесь
    3. Собираете фидбек
    4. Формулируете список изменений, используя в качестве обоснования конкретные проблемы текущей реализации
    5. Переходите в начало цикла

    Обратите внимание, что алгоритм подразумевает, что вы сами решаете, что именно в вашем случае означает "удобное в плане доработки".
    Здесь есть два полюса:
    • Делаем все максимально оптимизировано, полностью отказываемся от гибкости. При изменении требований делаем все изменения руками программистов, с конвертацией данных.
    • Делаем все максимально гибко, полностью отказываемся от оптимизации производительности. При изменении требований все делается через конфиги, труд программиста не требуется.

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

    shubnikov_av
    @shubnikov_av
    JavaScript Developer
    Не стоит смотреть на вопрос виртуализации через призму гипервизора, попробуйте Docker
    Ответ написан
    Комментировать
  • Фрилансер, хочу открыть фирму. Ваш опыт?

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

    Я к тому, что не ищите как и что лучше, прижмёт в процессе, решения находятся быстро. Лучше защищайтесь от плохого.
    Ответ написан
    Комментировать
  • Фрилансер, хочу открыть фирму. Ваш опыт?

    talgatbaltasov
    @talgatbaltasov
    Freelancer
    Советую для напоминании и постановки задач другим сотрудникам todoist и trello.
    Ответ написан
    Комментировать
  • Фрилансер, хочу открыть фирму. Ваш опыт?

    CrewCut
    @CrewCut
    Коплю силы на переезд в тропики
    Доброй ночи.

    1. Касаемо CRM - попробуйте разные решения, на вкус как говорится. Рекомендую обратить внимание на Мегаплан, есть еще teamer.ru/about он проще, но в принципе норм. Для старта хватит бесплатной версии CRM, а там уж видно будет

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

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

    3. Насчет бухгалтерии - попробуйте Эльбу или МоёДело, для начала бизнеса - отличные сервисы. Касаемо распределения обязанностей - идите от выгоды. Например, есть премиум-клиент, который Вам очень дорог - следите за этим проектом тщательно. Проекты проще и слабее можно передать сотруднику. Учитесь обращать внимание только на важные вещи, иначе загнетесь.

    А вообще, кризис - время действия. Удачи Вам!
    Ответ написан
    2 комментария
  • Bootstrap какой из сервисов для быстрого прототипирования лучший?

    lukoie
    @lukoie
    Мне нравится Webflow. Делаю в нем.
    Ответ написан
    Комментировать
  • Как в Rails присваивать массиву объектов другой объект?

    evgenykungurov
    @evgenykungurov
    Программист Ruby/Rails/Системный администратор
    Какие атрибуты имеются в наличии у @autos(у модели) и какие вы хотите присвоить? Допустим:
    @autos.map { |auto| auto.my_attr = my_example if auto.weight < 1000 }
    Ответ написан
    2 комментария
  • Почему не все серверы пишутся на Node js?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    1. Принципиальных качественных преимуществ у node.js перед остальными языками нет, как впрочем и недостатков. Просто yet another язык со своими особенностями. Соответственно если в вопросе заменить node.js на php/ruby/python итд - ничего не изменится.
    Вопрос по сути абстрактный "почему все не перешли на язык %%%%%"

    2. Ответ на абстрактный вопрос:
    а) Потому что существует огромное количество legacy кода который нужно поддерживать. Работы по поддержке и развитию существующего кода на порядок больше чем написания с нуля нового
    б) Потому что у разработчиков есть свой стек любимых технологий, изменять который без явных экономических причин основная масса не готова
    в) Потому что умные технические менеджеры выбирают стек технологий проекта исходя из имеющихся под рукой разработчиков и легкости поиска и заменимости оных.

    UPD
    hbrmdc
    У NodeJS есть уникальные и очень весомые преимущества, которых нет ни у одного другого языка. Например то, что это JS, и, следовательно, нет необходимости разучивать лишние языки - можно весь webapp писать на js.
    Личные предпочтения обоснованные привычками - это не имеющий значения аргумент в данном вопросе.

    1) Есть отличия, да. Только не те о которых Вы пишите. То что это "JS" вообще ни на что не влияет.
    JS хорошо знают фронтендщики - а кто пустит фронтэндщика к внутренней архитектуре? Там подход совершенно другой нужен, другие навыки, другое понимание как это все работает. Просто пересадить человека с фронта на бек - нельзя.

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

    2) Личные предпочтения обоснованные привычками это основной аргумент.
    Я вот умею в php, умею в ноду, умею в еще десяток умных слов.
    Мне нужна новая команда на новый проект.
    Я открываю hh и что я вижу: node.js 279 резюме из которых половина фронтэндщики.
    PHP - 9613 резюме. Даже если 90% разработчиков PHP на hh - уроды которых к коду нельзя подпускать на пушечный выстрел - останется все равно в 3 раза больше чем есть node.js.
    Собственно на этом выбор и закончен.

    На малопопулярных языках пишут в случаях:
    a) это мелкий сервис с неявными перспективами который можно переписать за неделю
    б) это проект "для души" разработчика.

    Получается замкнутый круг на самом деле.
    Менеджер смотрит резюме, резюме на node.js нет =>
    Менеджер не начнет проект на node.js =>
    Не возникнет вакансия на node.js =>
    Разработчик анализируя вакансии не увидит вакансий на node.js =>
    Разработчик будет учить что то другое =>
    Менеджер смотрит резюме, резюме на node.js нет...

    Переломить ситуацию могут только очень крупные игроки обладающие возможностями формирования рынка (например Apple и Swift), и то не со 100% гарантией (samsung&c и Tizen)
    Ответ написан
    13 комментариев
  • Как организовать резервный сервер?

    martin74ua
    @martin74ua Куратор тега Системное администрирование
    Linux administrator
    1 вариант. Поднимаете сайты у другого хостера, базы данных синхронизируете через репликацию, в днс указываете адреса обоих серверов. Получите два параллельных сервера, в случае отказа одного - второй продолжит работу... Репликация в режиме master-master, следует контролировать состояние на обоих серверах.
    2 вариант. На втором хостере поднимаете сайты, базы также в реплику. В днс указываете адрес только первого сервера, мониторите его доступность, при отказе - меняете днс. Днс ttl надо держать небольшим - от этого зависит время обновления записей. Ну и требуется мониторинг доступности.

    Я бы выбрал первый вариант - он проще в обслуживании.
    Ответ написан
    4 комментария
  • Silverlight умер?

    gbg
    @gbg
    Любые ответы на любые вопросы
    Он и не жил никогда, сервелат этот.
    Ответ написан
    3 комментария