Задать вопрос
  • Как пользователь может скрывать свои посты?

    sharikov_d
    @sharikov_d
    Мне стыдно за ваши вопросы и ответы
    это можно сделать простым булевым полев в табличке. к чему такое рвение тянуть гемы?

    post if post.visible?
    Ответ написан
    Комментировать
  • Сайт на Django. Как можно отслеживать изменения записей на прием в реальном времени и выводить напоминания?

    sim3x
    @sim3x
    Тут хватит jquery-ajax-CBV

    Риалтайма у тебя нет, просто делай раз в 10 сек аякс запрос и возвращай json

    Единственное, что стоит сделать историю изменений в заказе в виде json поля и при отображении показывать с какого на какое время был перенесен заказ
    Ответ написан
    Комментировать
  • Сайт на Django. Как можно отслеживать изменения записей на прием в реальном времени и выводить напоминания?

    Можно без сокетов, просто раз в несколько секунд через ajax делать запрос в нужный контроллер, это не нагрузит систему, т.к. администраторов не много, зато это просто и сэкономит кучу времени и ресурсов
    Ответ написан
    Комментировать
  • Ruby on rails без знания каких-либо языков?

    @CapeRatel
    Нет понятия перейти, есть понятие программировать на каком либо инструменте. Переходят дорогу.

    >Можно ли перейти на rails
    Приходите, разрешаем.

    >не стану ли я говнокодером
    Гавнокодер - человек, который пишет плохочитаемый и плохоподдерживаемый код. Если вы планируете писать такой код, то пожалуй станете. А если не планируете, то не станете.

    >или лучше всё таки углубиться в php
    Язык не имеет значения. Можете ПХП варите его. Вакансий море, зарплаты сравнимы. Если вам легко дается руби, а пхп идет тяжко, смысл попробовать сменить есть.
    Я бы не менял, а смотрел в сторону (laravel, symfony, phalcon)
    Ответ написан
    Комментировать
  • Ruby on rails без знания каких-либо языков?

    mukizu
    @mukizu
    >Можно ли перейти на rails

    Можно

    >не стану ли я говнокодером

    Одно от другого не зависит. Старайтесь использовать лучшие практики, узнавайте новое, улучшайте старое, старайтесь находить наилучший подход к решению проблемы. Работайте над базовыми знаниями. В большинстве случаев говнокод идет не из-за того, что человек синтаксис где-то плохо знает, а потому что попросту не видит проблем в том, что пишет.

    >или лучше всё таки углубиться в php

    Php к руби и реальсам не имеет никакого отношения. ООП есть и там и там, паттерны проектирования, алгоритмы и прочая база - очевидно тоже. Хотите копать в стэк RoR - углубляйтесь в Руби и Рельсы (тут это как 2 отдельные сущности используется), php роли не сыграет.
    Ответ написан
    2 комментария
  • Удалять ли данные из бд?

    romy4
    @romy4
    Exception handler
    Если данные не моноширинные (числа и строки одинаковой длинны), то удаляя их получаете сильно дефрагментированную базу. Получится, что данных мало, а база большущего размера. Чтобы это избежать, необходимо делать её оптимизацию, а это очень и очень затратно и даже недопустимо на нагруженных базах. Поэтому, решением стаёт поле del. А ещё хитрости в виде партиций и т.д.
    Ответ написан
  • Как проще всего выявить неиспользуемый код javascript?

    RubaXa
    @RubaXa
    Пропустить через istanbul и X% пользователей выдавать модифицированный код, после каждые YY сек сбрасывать на сервер `window.__coverage__` .
    Пример результата
    14adee9dc5a247ab87bbfd107717b9c2.png3cac2096f1464c2da2fa3524caa11244.png
    Ответ написан
    Комментировать
  • Как организовать работу на сайте только после авторизации?

    fox_12
    @fox_12 Куратор тега Django
    Расставляю биты, управляю заряженными частицами
    Например так если использовать common based views:
    from django.contrib.auth.decorators import login_required
    class LoginRequiredMixin(object):
    
        @classmethod
        def as_view(cls, **initkwargs):
            view = super(LoginRequiredMixin, cls).as_view(**initkwargs)
            return login_required(view, login_url=reverse_lazy('login'))


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

    А вообще кучу возможных вариантов вам уже в той теме насоветовали.
    Ответ написан
    4 комментария
  • Как учить что-то новое и быстро не забывать?

    Olej
    @Olej
    инженер, программист, преподаватель
    Суть такая, что каждый день что-то читаю и учу по книгам или видеурокам.

    Вера народная в видеоуроки вообще пустая - как в одно ухо надуло, так в другое и выдуло...

    Как учить и не забывать,

    А техника программирования - это не мнемотехники запоминания как Попка-дурак, а практика применения в написания кода.
    Ничего не нужно запоминать, на то есть справочники, а нужно понимание и писать, писать и писать свой код.

    А все интересные фрагменты кода (чужого или своего) хранить на диске, под рукой, ... чтобы всегда можно было "списать" копипастом нужные строки.
    Ответ написан
    10 комментариев
  • Как учить что-то новое и быстро не забывать?

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

    PS: уметь кодить и помнить что-то - две абсолютно разные вещи. Практика и теория тут не подходят для сравнения.
    Ответ написан
    Комментировать
  • Из C# в Python! Как это сделать максимально быстро?

    Rou1997
    @Rou1997
    Если на C# программируете, то уже документацией и поиском должны уметь пользоваться, если не умеете, давно пора научиться.
    Ответ написан
    Комментировать
  • Из C# в Python! Как это сделать максимально быстро?

    Официальная документация, что по Python, что по Django.
    Ответ написан
    Комментировать
  • Движение персонажа под углом?

    @Mercury13
    Программист на «си с крестами» и не только
    Расскажу, как поступал я. Писал на Java ME, так что особо сложных идей не было.

    У каждой плитки была алгоритмически заданная поверхность (pavement). В более новых версиях движка приделали и потолок — впрочем, неважно.
    Для простоты введём несколько ограничений. Все они, разумеется, обходятся усложнённой логикой.
    • Ни на чём, кроме плиток, персонаж стоять не может. Тогда можно обойтись флагом: isSupported: true/false.
    • Поднимаясь по склону, персонаж не ударится головой в потолок. Кстати, у нас было два разных геймдиза и два разных подхода — когда один увидел этот баг, пошёл жаловаться, второй взял ограничение на карандаш и не делал таких уровней.
    • Неровности достаточно велики, чтобы можно было проверить ноги слева и ноги справа — и понятно, на какой высоте ему стоять.
    • Соотношение «площадь ног / размер хитбокса» достаточно велико, чтобы, пока персонаж падает, его гарантированно вытолкнуло из стены.
    В зависимости от скорости персонажа и крутизны склонов подберём epsilon — диапазон поиска поверхности.
    Предположим, наш персонаж стоит на чём-то и двигаем его вправо.
    1. Сдвинем его туда, где он должен быть.
    2. Попробуем подстроить высоту, взяв правую сторону ног и отыскав новую поверхность в диапазоне (y — epsilon, y + epsilon). То же самое с левой стороной ног. То, что выше — и есть наш новый y. Если не получилось — УПИРАЕТСЯ (см. шаг 3).
    3. Если на шаге 2 персонаж не упирается в стену, проверим на упор весь хитбокс. Если упирается — вытолкнем его из стены, снова подстроим высоту по принципу 2.
    Ответ написан
    2 комментария
  • Как добавить HTML атрибуты в form.field из шаблона?

    @deliro
    Нативно никак. Без сторонних модулей два варианта:
    1) Класс формы. Считаю, что это ужасно.
    2) Собственный inclusion_tag

    Но удобнее использовать django-widget-tweaks.
    Ответ написан
    1 комментарий
  • Знаю основы HTML CSS, но верстать не получается. Как преодолеть баръер?

    Skolpov
    @Skolpov
    Веб-дизайнер
    «Ты в начале крив, косой,
    а потом уж Лев Толстой».


    Ты молод, зелен, девственно чист перед версткой. Пока у тебя нет практического опыта а есть только теория. Все ново, все страшно. Ожидаешь от первого раза с ней романтики и нежности, а на деле — она будет жестко рвать тебя без сожаления.

    «Боже, я никогда не научусь верстать как они :( ...»
    «Блин эти ребята так круто делают, видимо у меня нет дара...»
    «Наверно это не мое, лучше пойду я отсюда...»

    КОНКРЕТНО О ПРАКТИКЕ НОВИЧКА

    Все барьеры у тебя в голове Ты хочешь верстать как боженька, а как только ты делаешь ошибку ты тут же разочаровываешься в себе и считаешь, что ты ни на что не годен. Любой, кто что-то учит сталкивается с этим, просто нужно свыкнуться что от косяков никуда — это часть прогресса. Желательно разобраться с собой, в том смысле, что многие бросают свои начинания, увидев на пути даже маленькую преграду. Дальше будут разочарования собой, усталость и много чего еще в голове.
    Нужно просто пережить первые шаги, дальше будет легче.

    Не нужно сразу пытаться сверстать весь сайт, научись верстать отдельные кусочки. Уверен, ты каждый день сидишь в VK. Поставь себе цель — Сверстать страницу регистрации VK например за три дня. Сегодня например сверстай шапку (без перфекционизма). Начни с малого. Со временем одной левой сможешь верстать то, что сейчас тебе кажется тяжелым. Да будет не так, да многое из головы вылетит. Не беда, гугл всему голова. У любого профи есть самый главный Шаолиньский скилл — «Мастерство великого гугления». Не все его постигают в начале пути, но многие все равно придут к нему однажды.

    Перфекционизм и навык PixelPerfect— качество профессионалов, мы новички должны в начале делать ошибки Не надо вылизывать каждый участок макета, к этому ты придешь сам, но тогда, когда ты уже спокойно сможешь верстать. За то время пока ты пытаешься сделать крошечный блок сайта идеальным, ты бы мог уже быстро набросать весь макет и на практике использовать сразу много тегов и увидеть их к действии. Не надо заниматься в начале созданием идеального сайта, первые сайты все равно будут говно.

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

    Главное не останавливаться. И надо смириться, что верстальщик всегда должен развиваться. Не только теорией но и практикой. Это его дар и его проклятье на всю жизнь. А грамотно развиваться поможет только грамотный подход к этому.

    Всего лишь мое маленькое, скромное мнение.
    Ответ написан
    Комментировать
  • Что лучше изучить для фриланса по вечерам?

    @Siberian_Bear
    Выше писали о Geekbrains.
    Ни за что! Там часами морда в камеру рассказывает какие то вещи, на ходу исправляя код, долго думая и т.д.
    Эти грезят многие русские онлайн-курсы - по факту записи с вебинаров.
    Берите курсы с Линды. Там авторы готовят видео заранее - всё чётко, по подготовленному сценарию. Никакой затянутости. В общем, порядочное видео.
    Вообще курсы лучше книжек на начальном этапе - потому что там всё по порядку, по полочкам.
    Если английского не знаете, ищите в складчинах и на торрентах переводы курсов - на базовые технологии их много.
    Ответ написан
    Комментировать
  • Как повысить свои навыки программирования на С/С++?

    abyrkov
    @abyrkov
    JavaScripter
    Ну что же... итак.
    1. Узнайте больше о кодстайлах
    Кодстайл(codestyle) - это, в буквальном смысле, стиль кода. Если вы будете писать по кодстайлу, то проблем явно станет меньше. Код станет читабельнее, его станет легче читать и сопровождать. А тот код, что написан с явными нарушениями очевидных правил... это такой же вырвиглаз как пробелы перед знаками препинания и ???.
    2. Научитесь пользоваться дебаггером
    Действительно. Дебаггер это, в буквальном смысле, антибаг. Багом, если вы еще не в курсе, называют именно логические ошибки. Ну, я думаю, освоив этот инструмент вы станете гораздо успешным охотником за покемо... жуками-багами.
    3. Перейдите на IDE
    Многие IDE или продвинутые редакторы имеют кучу плюшек, которые облегчат вам жизнь до того, что создание кода превратиться в чистое наслаждение. Оно того стоит.
    4. Анализируйте ошибки
    Все делают ошибки. Но если мы будем узнавать и запоминать в чем тогда была ошибка выше шанс, что мы ее не сделаем в следующий, и, если мы ее все-таки сделаем, то куда быстрее ее найдем.
    5. Учите и используйте библиотеки
    Люди давно уже поняли, что можно использовать один и тот же код несколько раз, а особо универсальный код - собственно библиотеку - можно использовать во многих проектах. Правильно подобранная библиотека позволит вам намного ускорить разработку типичных вещей.
    6. Сначала думай, потом делай
    Ты, наверно, думаешь, что как только крутым кодерам приходит в голову гениальная идея, они сразу же садятся и пишут код? Нет, они сначала придумывают структуру этой вещи, что они для нее будут использовать, алгоритм... словом, кучу вещей и только убедившись, что все предусмотрели, садятся, и пишут код.
    7. Практика + Google
    И, напоследок, запомни две простых вещи:
    В теории, теория и практика неразделимы. На практике это не так.
    и
    Профессионалы тоже пользуются гуглом. Может, даже чаще, чем новички.

    Удачных проектов тебе!
    Ответ написан
    5 комментариев
  • У сайта avito.ru есть своё API для разработчиков?

    kumaxim
    @kumaxim
    Web-программист
    Именно API у них нет, однако, загрузка объявлений доступна через XML. Описание формата.

    Логика работы такая:
    1. На своей стороне ты формируешь XML со всей информацией об объявлении
    2. Этот XML должен быть доступен по http:/domain.com/avito.xml
    3. Эту ссылку ты отдаешь Avito для работы
    4. С какой-то переодичность Avito проверяет твой XML и добавляет/изменяет/удаляет объявления

    Отчет о загрузке/обновлении/удалении обявлений доступен в личном кабинете и, вроде бы, еще на мыло отсылается.

    Также могу рекомендовать сервис afy.ru, однако, он работает только с недвижкой. Почему я его упомянул? Через него можно настроить автоматическую выгрузку объявлений сразу на кучу досок: Авито, Яндекс.Недвижимость, Майл,Недвижимость, ИРР и т.д. Смотри тут полный список.
    Ответ написан
    Комментировать
  • Где можно найти силуэт карты в векторном формате?

    rokkayte
    @rokkayte
    Совестливый трудоголик
    Есть отличный вариант - pixelmap.amcharts.com/#

    Самый быстрый и простой способ сделать быстро и без геммороя)) Выбрали Пхукет, задали параметры, сделали SVG и вперед))
    Ответ написан
    4 комментария
  • На чем можно написать автоматическую кормилку для кота?

    eapeap
    @eapeap
    Сисадмин, Беларусь
    на чем можно написать эффективный софт, который бы позволил сэкономить на железе?

    Если комп всё время включен - Виндовый Планировщик заданий и, скажем, сканер или принтер как привод исполнительного механизма. Раз в 3 часа, скажем, что-то сканит или печатает, заодно насыпается корм.
    Ответ написан
    Комментировать