Задать вопрос
  • Как поддерживать и расширять сайт на боевом сервере?

    sim3x
    @sim3x
    Не использовать ВП

    Или

    Внедрить дисциплину и не писать код через админку вообще
    Префиксы для браузеров не актуальны, если не нужна поддержка ие8
    Сжатие картинок можно проводить регулярно по крону
    Нарисовать диаграму Ганта и понять, что за чем делать

    PS: git, npm, webpack/gulp, composer и тд и тп не обсуждаются тк они по-умолчанию должны быть
    Так же как и тесты
    Ответ написан
  • Возникла ошибка при cURL запросе, как решить?

    p00h
    @p00h
    Фехтовальщик-стропальщик
    HTTP/1.1 500 Internal Server Error

    «Внутренняя ошибка сервера»
    Ответ написан
    1 комментарий
  • Django - как узнать что клиент закрыл браузер?

    @Bjornie
    Изучаю Python
    Наверное это лучше сделать с JS, а потом через AJAX передать "сигнал".
    Ответ написан
    4 комментария
  • Как организовать удобную разработку Django пакета (батарейки)?

    ri_gilfanov
    @ri_gilfanov Автор вопроса
    Web- and desktop-developer
    Сергей Горностаев предложил использовать tox, а в документации этого инструмента я наткнулся на более простое и удобное решение.

    В документации setuptools есть раздел Development mode.

    Если вместо команды install использовать команду develop
    python3 setup.py develop
    пакет не будет собран и полноценно установлен в глобальное или виртуальное окружение.

    Вместо этого, в глобальном или виртуальном окружении будет создана ссылка на исходники пакета (ссылка представляет собой файл с расширением .egg-link).

    После этого, пакет становится доступен для импорта.

    Если импортировать такой пакет в Django-проект, сделать manage.py runserver и начать редактировать исходники пакета -- встроенный в Django сервер для разработки как обычно перезапускается при каждом сохранении исходников пакета. Хотя импортированный пакет может лежать где угодно в файловой системе.

    Таким образом, работая над батарейкой для Django -- можно тут же видеть изменения в запущенном Django-проекте, без необходимости переустанавливать батарейку после каждой правки её исходников.

    Спасибо, проблема решена просто, дёшево и элегантно.

    P.S. Предложенная Сергеем библиотека tox больше подходит для автоматизации тестирования Python проекта во множестве разных рабочих окружений. Например, если Вы гарантируете пользователям поддержку разных версий требуемых библиотек, разных версий интерпретатора, разных интерпретаторов и т.д. -- tox может серьёзно облегчить Вам жизнь.

    P.P.S. Если кто-то не знает как пользоваться setuptools и создавать установочные файлы для своих Python пакетов -- есть статьи и даже видео на русском языке. Например:
    Ответ написан
    Комментировать
  • Использовать фрагменты или активити?

    zagayevskiy
    @zagayevskiy Куратор тега Android
    Android developer at Yandex
    Конечно фрагменты. Посмотри Google I/O, там об этом говорили. С фрагментами жить проще.
    Ответ написан
    Комментировать
  • Писать свои эксепшены - это хорошо или плохо?

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

    @dmtrrr
    Backend developer
    In [9]: s = 'foo bar test no text a'
    
    In [10]: sorted(s.split(), key=len)
    Out[10]: ['a', 'no', 'foo', 'bar', 'test', 'text']
    Ответ написан
    Комментировать
  • Как въехать в программирование (ООП, паттерны)?

    alexfilus
    @alexfilus
    Senior backend developer
    Я проникся ООП когда писал одну программулину в процедурном стиле и внезапно понял что не могу разобрать свой собственный код, написанный вчера. Потратил на рефакторинг 12 часов и после этого код стал больше похож на английский язык, чем на непонятный набор букв, точек, цифр и скобочек. Так что в идеале нужна практическая задача на чистом языке, без фреймворков.
    Раз речь о PHP, попробуйте написать свою ORM. Простейший построитель запросов для CRUD, но универсальный. Как минимум наследование точно поймёте.
    По паттернам я сейчас толкового курса сходу не нашёл, но не переоценивайте их значимость. Лучше почитайте (посмотрите видео) о том, что такое SOLID.
    Когда придёт понимание что такое наследование и зачем оно нужно, тогда можно и про паттерны почитать, но как по мне, реально интересен только Одиночка. Все остальные это просто правильные способы применить наследование, и выглядят довольно очевидными.
    Ответ написан
    5 комментариев
  • Регламент доменных имён, где найти?

    solotony
    @solotony
    покоряю пик Балмера
    icann.org
    ripe.net
    cctld.ru
    Ответ написан
    Комментировать
  • Болезнь творца или как создать свой виртуальный мир?

    sim3x
    @sim3x
    будет жить своей жизнью, независимо от меня
    ага и кофе сам варить будет. Так не бывает. Потребуется балансировка и множество прогонов симуляции, чтоб понять как сделать стабильное окружение, которое будет интресно изменять пользователю

    3D графику позволить себе не могу
    поищите начинающих художников

    в виде обычных графиков и цифр
    их еще сложнее придумать

    Город будет иметь небольшие окрестности, в которых необходимо реализовать рост растительности и активность некой фауны.
    и как она буде симулироваться? Есть уже соотношения, сколько нужно вырастить деревьев и живности за один тик?

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

    Начать вам стоит с создания своей версии игры Life
    Там поймете в чем суть и проблематика вашей затеи
    Сразу определитесь, как будут взаимоействовать между собой игроки и будут ли
    Несколько серверов не понадобится - для обсчета симуляции много ресурсов не требуется (если не написать фигни вместо кода)

    Фреймворк в данной задаче не сильно поможет, если только не сумеете спроектировать все так, чтоб валидации и сохранение через него проходили
    Ответ написан
  • Могу ли я отказаться от проекта?

    @McBernar
    Уверен, что формально в вашем трудовом договоре нет строчки, что вы будете работать только с React и Vue.

    Как надо сделать правильно

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

    Говорить, что вы такой принц в белом и ручки о старый Angular марать не хотите — это, простите, показать всем вокруг, что вы ошиблись профессией.
    Ответ написан
    2 комментария
  • Как сделать бесконечное получение данных из массива?

    longclaps
    @longclaps
    from itertools import cycle
    
    for c in cycle(['A', 'B', 'C']):
        print(c)

    или
    from itertools import count
    
    lst = ['A', 'B', 'C']
    for i in count():
        print(i, lst[i % len(lst)])
    Ответ написан
    4 комментария
  • Градация уровня знаний в языках программирования. Каковы различия и требования?

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

    longclaps
    @longclaps
    Поговорка есть такая: "молодец среди овец, а среди молодца и сам овца".
    Градации Junior, Middle и Senior существуют не сами по себе, а на конкурентном рынке труда.
    Просто позиций Junior и соискателей на них кратно больше, и из статистики по этой толпе яснее формируются ожидания рынка насчет квалификации Junior.
    ps тут в фавориты выбился простой ответ - это понятно ) плюсуют нетрудорустроеные соискатели, осваивающие синтаксис, и джуны, надеющиеся прочесть учебник по алгоритмам и пойти в гору. Всем удачи )
    Ответ написан
    4 комментария
  • Как работает магистраль памяти в процессоре 8086?

    @pfg21
    ex-турист
    википедия уже не канает ??

    Физический 20-битный адрес, позволяющий адресовать до 1 Мбайт памяти, получается путём сложения исполнительного адреса и значения сегментного регистра, умноженного на 16
    https://ru.wikipedia.org/wiki/8086
    Ответ написан
    2 комментария
  • Как организовать запуск скриптов на сервере?

    sim3x
    @sim3x
    Получения таска из телеги - nginx-uwsgi-(django / flask / handmade wsgi )
    В зависимости от того, как долго работает парсер
    - стартовать его в том же треде, что принял запрос от пользователя
    - делать очередь (celery) и работать через нее
    Ответ написан
    Комментировать
  • Насколько востребован рынок react и в целом js разработки на фрилансе, в частности на upwork?

    opium
    @opium
    Просто люблю качественно работать
    Что вам мешает зайти и самому посмотреть?
    А что тысячу проектов в день по вордпресу вы сможете сделать сами один?
    Надо смотреть есть ли какой то минимальный объем работ, чтобы занять все ваше время, остальные проекты у вас просто не будет времени выполнять
    Ответ написан
    3 комментария
  • Авторские права на GitHub?

    Tyranron
    @Tyranron
    Не пойму какое реальное практическое применение имеет сервис github и как обстоят дела с авторскими правами?


    Это хостинг Git репозиториев, который, помимо непосредственно удаленного Git репозитория, предоставляет ещё целый ворох удобных инструментов коллаборации и интеграции (code smell, code coverage, CI, Docker Hub'ы, Zapier'ы, боты, и вот всё это вкусное). Всё это позволяет удобно вести разработку проектов.
    К слову сказать, Github используют и для закрытых проектов тоже. Но это уже идет за денюжку.
    Авторские права регулируются лицензией, которую каждый уважающий себя репозиторий имеет.

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


    Есть как закрытые (код доступен только членам команды), так и открытые (код доступен всем) проекты. В чем смысл открытых проектов и open source как такового - это отдельная огромная тема.
    Открытый исходный код, как минимум, дает следующие преимущества проекту:
    - Доверие и прозрачность. Любой желающий может изучить исходники и удостовериться, что там нет ничего вредного. Может сам взять и скомпилировать код, если не доверяет чужим бинарникам.
    - Рост за счет сообщества. 1 команда - хорошо, но тысячи контрибъюторов - лучше.

    Не все проекты являются "аудиоплеером на продажу". Не все проекты монетизируются. Более того, зарабатывать деньги - тоже далеко не цель каждого проекта. Open source - это просто другая модель разработки ПО. И с помощь неё разрабатываются достаточно серьезные вещи: Linux, Kubernetes, MySQL, PostgreSQL, тысячи их... Без open source не было бы такого бурного развития программных продуктов. Он является фундаментом и базой для всего остального. Назовите мне хотя бы один закрытый большой и известный проект, который не использует ни одного open source продукта вообще. Ведь open source на самом деле вездесущ =)

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


    Это всё зависит под какой лицензией подается тот или иной дизайн/код/шаблон/верстка/фотка. Все условия лицензии обычно указываются в самом репозитории в соответствующем файле LICENSE.
    Некоторые проекты разрешают использовать где угодно и как угодно. Другие запрещают использовать в коммерческих целях. В принципе, никто Вам не мешает запретить использовать код посторонними лицам вообще, если Вы в этом видите какой-либо смысл.

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

    3) Если взять код с функционалом типа CMS - это тоже нарушение авторских прав? Может я что-то не понимаю, но принцип CMS же примерно одинаковый, генерить статичные страницы, каталог и прочее взаимодействие? Взять тот же Bitrix, это что-то супер-уникальное чего нет в открытом доступе? Неужели за столько лет развития интернета в сети не появилось бесплатного качественного аналога платной CMS?


    Это будет нарушением прав, если Вы этот код будете использовать не согласно лицензии.

    Вопрос про принцип не понятен. Лицензирование принципов - это уже патенты. Если проект нарушает патент, то он его нарушает будь хоть открытым, хоть закрытым. И наоборот тоже, если в проекте реализовано что-то запатентованое его авторами - то копирование будет нарушением патента (если в условиях лицензии не указано другое). Но вообще open source и патенты как-то плохо смотрятся в одной корзине. Как говорится - ни рыба, ни мясо.

    За аналоги Bitrix не скажу, но вообще бесплатных CMS - пруд пруди. Гугл "в зубы" и вперед выбирать.
    Ответ написан
    5 комментариев