Задать вопрос
  • Какой язык стоит изучать для продвинутой Web backend разработки?

    @kirill-93
    Все аргументы, которые вы привели - ложные. Точнее они не ложные, но вас они не касаются. Например, то что Python медленнее Go - это правда. Но в 99.99% случаев вы никогда в скорость ЯП не упретесь. Потому что вы упретесь в скорость работы с БД, ширину канала и еще кучу всего, но только не скорость ЯП. То же самое и с остальными ЯП и их плюсами/минусами. Они теоритические, на практике вы с ними не столкнетесь, а если и столкнетесь когда-нибудь, то к тому времени уже сами будете знать плюсы и минусы.
    FB написан на PHP - это правда, но только часть. Все внутренние сервисы давно переписаны на более подходящие для этого технонологии. Опять же, нет смысла на примере ФБ изучать языки программирования. Если у них все написано на C++ и они на этом экономят миллионы долларов, то это не значит, что вам надо изучать С++ и что у вашего блога/интернет магазина будет хоть какой-то профит от использования С++, а не PHP.
    Я считаю, что выбор ЯП должен исходить из двух критериев: польза для разработчика в плане развития и востребованность на рынке.
    Для первого критерия идеален Python. Я вообще считаю его идеальным ЯП. У него строгая динамическая типизация, он интерпретируемый. Он очень популярен и на нем пишут все, от сайтов до ИИ.
    По поводу популярности: сейчас популярны Go и Nodejs.
    В общем я бы рекомендовал учить Python и JavaScript.
    Ответ написан
    2 комментария
  • Какой js canvas framework подойдёт для решения этой задачи?

    Fzero0
    @Fzero0
    Вечный студент
    Ответ написан
    Комментировать
  • Какой js canvas framework подойдёт для решения этой задачи?

    irishmann
    @irishmann
    Научись пользоваться дебаггером
    Комментировать
  • Миксин в Django?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Django
    Седой и строгий
    За три дня так и не разобрались? У вас два разных представления, которым приходит два разных slug, и которые работают с разными моделями, но из-за миксина метод get у них один. Либо вообще не используйте миксин, так как в вашем случае от него нет никакого толку, либо сделайте его обобщённым, чтобы он использовал модель того CBV, в который подмешан.
    Ответ написан
    3 комментария
  • Можете оценить уровень кода?

    rockon404
    @rockon404 Куратор тега React
    Frontend Developer
    Навскидку:
    1. В проектах по-хорошему использовать типизацию TypeScript, Flow. PropTypes в таком случае использовать не надо.

    2. Тут в коде бессмысленное условие:
    render() {
        const { report = {} } = this.props;
        return (
          <Fragment>
            <Head>
              <title>Doctor problem with {report.doctor.name}</title>
            </Head>
            {report && <ReportDetail showDetailButton={false} data={report} />}
          </Fragment>
        );
      }

    report у вас существует всегда. Надеюсь понимаете, что пустой объект кастуется в true.

    3. Про ESLint/TSLint уже писали.

    4. Ваши редьюсеры не имеют ключей состояния. Какой-то запрос может быть в процессе, а ваши компоненты об этом не знают.

    5. Логику работы с куками лучше вынести в actions.

    6. Нет смысла разделять импорты отступами, просто соблюдайте очередность и смотрите пункт 3.

    7. Компонент __app можно декомпозировать.

    8. Неясно зачем тут геттер
    get renderReports() { /* ... */ }

    9. Для сортировки можно использовать меморизацию.

    10.
    handleChange = (e, key) => {
        const value = e.target.value;
        this.setState({
          [key]: value,
        });
      };

    <Input
      id="outlined-name" //  зачем?
      placeholder="Problem Summary"
      value={reportTitle}
      onChange={e => handleChange(e, "reportTitle")}
    />

    Можно заменить на:
    handleChange = e => {
        const { name, value } = e.target;
        this.setState({
          [name]: value,
        });
      };

    <Input
      id="outlined-name" //  зачем?
      placeholder="Problem Summary"
      name="reportTitle"
      value={reportTitle}
      onChange={handleChange}
    />


    11. /components/ReportDetail/constants.js зачем?

    12. Где-то запросы в экшенах, где-то в компонентах.

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

    @asd111
    aliev.me/runestone тут на русском и для питона
    Ответ написан
    Комментировать
  • Как организовать видеонаблюдение на большой уличной территории?

    @nApoBo3
    У hikvison хорошее соотношение цены и качества, плюс нормальные поставки и поддержка. Так же они нормально работают с широким спектром других систем видеонаблюдения.
    Использовать регистратор, можно тех же hikvision, можно альтернативные, софтовые.
    Если качество не критично, можно использовать hdtvi камеры, они дают вполне приличное качество и нормально работают на таких расстояниях.
    Из недостатков такого подхода. До каждой камеры свой провод, т.е. коммутаторов не будет, отдельное кабельное хозяйство, отдельное питание, как правило в камерах отсутствуют умные функции( типа поиска по зоне движения, определение саботажа, огня, дыма и т.п. ).
    Если говорить об ИП камерах, тогда регистратором обойтись будет сложно.

    Для 15 камер на месяц, это будет минимум 10Тб. Учитывая, что для надежности это минимум два диска. А вам нужно будет 20Тб на 30 камер, и это минимум, 2Мбит поток. 2Мбит поток более менее для камер до FullHD( т.е. до 2МП, с натяжкой до 3МП ). По факту с камерами от 3МП и выше, поток нужен 4-6Мбит, иногда и больше.

    Если взять 4Мбит на 30 камер на 30 дней. Это 4*3600*24*30*30 около 40ТБ, итого 8 дисков по 10ТБ( raid 1 ).
    Для такой конфигурации вам нужно будет или 2 регистратора по 16 каналов, каждый с поддержкой 4 дисков, или 4 регистратора по 8 каналов, в каждом по 2 диска.

    WIFI это не про видео наблюдение, будет очень много разных не очевидных сложностей.
    Ответ написан
  • Pure CSS \ JS или Фреймворки?

    dom1n1k
    @dom1n1k
    Чистый css знать нужно обязательно. Это видно по огромному количеству дебильных вопросов на Тостере в духе "а как это сделать на бутстрапе?" - и приложена картинка, к которой бутстрап ни в борщ, ни в красную армию. Фреймворки в css - вспомогательный второстепенный инструмент, который иногда помогает, если хорошо подобран под задачу. Но чаще - балласт.

    С JS немного сложнее. Там фреймворки более важны и нужны. Но... знать ваниль всё равно нужно. Без ванили это все равно учить иностранный язык готовыми фразами абсолютно без понимания грамматики - в шаблонных ситуациях поможет, но шаг в сторону - и ты мычишь.
    Ответ написан
    Комментировать
  • Какие области в веб - разработке осваивать в перспективе?

    Sanasol
    @Sanasol Куратор тега Веб-разработка
    нельзя просто так взять и загуглить ошибку
    В перспективе достаточно выучить/понять любой язык нормально. Т.е. понимать вообще что есть программирование и такие вещи как переменная/цикл/функция/условные операторы. Это всё везде одно и тоже, только под разным соусом.

    Все остальные будут учиться за пару открытий документации чтобы посмотреть синтаксис.

    Определитесь что больше нравится и выберите бекенд язык какой-нибудь.
    JS при любом раскладе надо уметь. (а еще html/css кудаж без них)

    И тогда будет обычный фулстек на выходе.

    js/php/html
    js/python/html
    js/ruby/html
    js/что угодно/html

    Вы сможете решать все задачи связанные с вебом.

    И учить фреймворки будет легче, потому что "учить" там ничего не надо.
    Достаточно уметь гуглить и понять основные принципы работы каждого из них.
    А язык-то там все равно JS/php/python.

    Сначала нужно выучить основы JS, а только потом уже разбираться с фреймворками

    Так и есть, иначе будете задавать вопросы из разряда:
    "как на jquery сложить два числа"
    "как на laravel сделать цикл"
    и т.д.
    Даже не понимая что ваш_фреймворк_нейм здесь вообще не причем, и делается это на языке JS/php/python, а не на jquery/laravel/django/ruby on rails. (это же относится и к CMS Wordpress, MODX, Битрикс, OpenCart.)

    В общем у меня уйдёт на это 2 - 2.5 месяца

    Нет, учиться вы будете не останавливаясь постоянно.

    Jquery не знаю, и есть ли смысл его сейчас учить когда существует Vue.js, и подобные ему фреймворки.

    это просто набор функций, и там учить ничего не надо, надо ссылку на документацию запомнить максимум.

    и где больше перспектив?

    тут только ванга поможет.
    Ответ написан
    2 комментария
  • Как в Nginx сделать разграничение доступа к сайту?

    ovalenko
    @ovalenko
    O mne
    Запарольте доступ к админке.
    location ~* ^/admin {
            auth_basic                    "Admin page";
            auth_basic_user_file     /etc/nginx/nginx.pass;
        }


    Пароль создавать так:
    LOGIN="admin"
    PASSWORD="pass"
    OPENSSL=`echo "${PASSWORD}" | openssl passwd -1 -stdin -salt Nginx`
    echo "${LOGIN}:${OPENSSL}" >>  /etc/nginx/nginx.pass
    Ответ написан
    Комментировать
  • Где можно поделать сайты для людей бесплатно?

    Martovitskiy
    @Martovitskiy
    А че бесплатно, косяков много?

    p.s. сделайте себе, родственникам, соседям. Людям бесплатно нельзя, а то еще неустойку заставят платить, если что то не будет работать)
    Ответ написан
    3 комментария
  • Чем в 2019 году открывают интерактивные SWF?

    Zoominger
    @Zoominger
    System Integrator
    Если вбить вопрос из заголовка в Гугл, ответ придёт в течение минуты. Попробуйте! Это реально работает!

    И не надо рассказывать о злых-злых мусорных программах, плохо искали, значит. Я вот сразу нашёл.
    Ответ написан
    5 комментариев
  • Нужно ли знать http, dhcp, dns, dat?

    Zoominger
    @Zoominger Куратор тега IT-образование
    System Integrator
    Всем привет! Учусь на хирурга (больница) и хотел узнать мне надо досконально знать виды строительных растворов и перечень элементов импульсного блока питания ИБП-14А?

    По теме: только первое, да и то можно поспорить. Остальное нет.
    Ответ написан
    1 комментарий
  • Как лучше хранить GPS-треки в БД?

    @Fixid
    PostgreSQL + PostGis. Хранить в виде обычных координат желаемой точности. Возможно выборка любой сложности.
    Сейчас у меня база координат занимает более 70гб, выборка координат внутри желаемого полигона занимает примерно 6мс на обычном hdd.
    При желании можно треки запихать в виде multiline из которого потом легко вытащить отдельные точки

    P.S. связку PostgreSQL + PostGis использует OSM, где база планеты в распакованном виде легко переваливает за 500гб
    Ответ написан
    5 комментариев
  • В чем смысл быть гуру тостера?

    rockon404
    @rockon404
    Frontend Developer
    1. Помогать другим приятно.
    2. Зарядка для ума.
    3. Обучение других людей - важный шаг в развитии, как профессионала, так и личности в целом.
    4. Помогая другим часто узнаешь новое, видишь старые задачи под новым углом, сталкиваешься с новыми, рождаются новые идеи.
    5. Какое-никакое общение на профессиональные темы.

    для чего просиживаете на тостере по 5-6 часов в день

    Зачем? Можно просто подписаться на интересующие технологии и оповещения о новых вопросах будут приходить на почту. Хотя, я бы добавил Push-уведомления.

    но вы то ничего и не спрашиваете.

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

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    1. Работа над личным брендом: Высокая репутация в профессиональных сообществах повышает привлекательность для нанимателей.
    2. Улучшение существующих знаний: Хочешь что-то понять, объясни другому.
    3. Приобретение новых знаний: Специализация замыкает в узком спектре задач и проблем, а Q&A-сервисы - это источник задач и проблем из самых разных областей и иногда под самыми неожиданными углами.
    4. Альтруизм: Большинству из нас кто-то помогал в начале пути, пришло время возвращать долг и делать свой скромный вклад в рост кадров.

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

    Для чего просиживаете на тостере по 5-6 часов в день?

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

    Jump
    @Jump
    Системный администратор со стажем.
    Где найти подработку для написания несложных скриптов?
    Такие подработки на дороге не валяются. Может и найдете, может и нет.

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

    h0w4rd
    @h0w4rd
    Python dev.
    Дополняя ответ Zoominger:
    Можно написать немного работ для портфолио, простые сайтики, визитки там. Или что 1С-ники там делают (не знаю, честно). И сделать профиль на каком-нибудь фриланс сайте. Затем подыскивать простенькие задачки, как нравится. Заказчик сможет посмотреть, что вы сделали и абстрактно, но оценить ваш уровень. Ну дальше понятно.
    Ответ написан
    Комментировать
  • Где найти подработку для написания несложных скриптов?

    Zoominger
    @Zoominger Куратор тега Python
    System Integrator
    Откройте для себя биржи фриланса. И скилл подтянете, и пару тысяч рублей в месяц прибавите.
    Ответ написан
    2 комментария