• Есть ли хорошие уроки по Django Rest Framework?

    sim3x
    @sim3x
    Джанго не работает с noSQL
    noSQL уже не в тренде
    Для изучения дрф достаточно мана
    Ответ написан
    Комментировать
  • Почему сайт vuejs.org не SPA?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    1. SPA - это (на данный момент!) пользовательский функционал после авторизации: ЛК, админка, статистика и т.д.
    2. Статику - для поисковых систем со всеми тонкостями и их требованиями к SEO.
    Ответ написан
    1 комментарий
  • Почему сайт vuejs.org не SPA?

    wizzzet
    @wizzzet
    Да, мы делали много магазинов на SPA. Основная проблема - системы аналитики и ретаргетинга глючат. Google Analytics и Метрика теряют источники переходов, что критично для партнёров, занимающихся предоставлением в интернет-магазин лидов, потому что они, как правило, берут деньги за заказы клиентов магазина, и им сложно доказать источник заказа (по utm-меткам). Также, большая нагрузка на сайт с SSR (северный рендеринг) подразумевает организацию кэширования компонент, что тоже не всегда просто.

    Если у вас обычный контентный сайт, и нет сложных воронок продаж, то можно использовать SPA, даже без сложных интерфейсов, так страницы как правило открываются быстрее (кроме самой первой, если не SSR).
    Ответ написан
    2 комментария
  • Почему сайт vuejs.org не SPA?

    inoise
    @inoise
    Solution Architect, AWS Certified, Serverless
    Как бы кто там ни пытался говорить что поисковики с ним дружат - это не так, совсем не так
    Ответ написан
    5 комментариев
  • Когда нужно использовать computed, а когда methods во Vue.js? И в чем их разница?

    Decadal
    @Decadal
    Если результат вашей функции не опирается на внутренние данные, используйте methods.
    Например, у вас есть внутри vue некая range, которая служит верхней границей для Math.random. Если реализовать при помощи метода, то каждый раз он будет возвращать новое значение Math.random.
    Реализация через computed будет ожидать изменений вашего range, а иначе вернет то же число, которое сгенерилось первый раз
    js:
    var app = new Vue({
            el: '#content',
            data: {
                range: 1
            },
            computed: {
                rand: function () {
                    return Math.random() * this.range ; //ожидалось что app.rand будет давать случайное число
                }
            },
            methods: {
                show: function (event) {
                    alert('Случайное число: ' + this.rand); // но нет, число одно и то же
                },
           }
    });

    html:
    <div id="content">
    <button v-on:click="show">показать число</button>
    </div>


    В итоге оно сгенерирует число один раз и будет выводить его постоянно при клике на кнопку. Если вы введете в консоли app.range = 2; то генерируемое число разово изменится.

    Пример для лайков, упомянутый в комментарии:
    new Vue({
       el: '#content',
       data: {
          likes: 0,
       },
    });

    <div id="content"><button v-on:click="likes += 1">+1</button></div>
    Ответ написан
    9 комментариев
  • Настройка django 1.9 и django-debug-toolbar?

    half-life
    @half-life Автор вопроса
    Нашёл ответ на Stack Overflow:

    The current stable version 0.11.0 requires the following things to be true for the toolbar to be shown:
    Settings file:
    1. DEBUG = True
    2. INTERNAL_IPS to include your browser IP address, as opposed to the server address. If browsing locally this should be INTERNAL_IPS = ('127.0.0.1',). If browsing remotely just specify your public address.
    3. The debug_toolbar app to be installed i.e INSTALLED_APPS = (..., 'debug_toolbar',)
    4. The debug toolbar middleware class to be added i.e. MIDDLEWARE_CLASSES = ('debug_toolbar.middleware.DebugToolbarMiddleware', ...). It should be placed as early as possible in the list.
    Template files:
    1. Must be of type text/html !!!
    2. Must have a closing < /html> tag !!!
    Static files:
    1. If you are serving static content make sure you collect the css, js and html by doing:
      ./manage.py collectstatic



    Моя ошибка заключалась в том, что я хотел на скорую руку проверить дебаг тулбар и в темплейте была только одна строчка <h1>Hello</h1>
    Ответ написан
    Комментировать
  • В какой последовательности читать книги по JavaScript?

    @Aizen22
    Если дружите с английским можете посмотреть "How to learn JavaScript properly". В зависимости от текущего уровня знаний автор предлагает несколько путей изучения.
    Ответ написан
    Комментировать
  • Как вы планируете свой рабочий день, чтобы не выгорать?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Интенсивной работы в день 5-6 часов максимум. Больше - только на ограниченное время, с обязательной компенсацией отдыхом. В офисе 9-18 работают в целом так же, кулер, поболтать, что-то обсудить 10 раз в день, почитать статьи. По моим личным ощущениям на удаленке работа интенсивнее, даже с учетом меньшего количества часов. Поэтому работаю по часам и на ставке больше чем в офисе на 8 часовом рабочем дне.
    Пробовал помодоро - не зашло.
    Бывает что накапливается и какие-то дни работа вообще не идет - даю себе отдохнуть, могу поработать часа два-три.
    Что-то новое изучаю иногда в формате перерывов - поработал - почитал. Так как график и учет времени гибкий, это не считается рабочим временем, и совесть не мучает. Могу посередине дня отдохнуть пару часов если совсем не идет, или сходить прогуляться или еще что.
    Свои проекты сначала пилил "по вечерам и выходным", особенно когда работал 9-18 потом понял что так не пойдет, на долгий срок это провальный подход, поэтому сейчас больше работаю как часть рабочего времени. Уменьшаю основную работу (при этом естественно уменьшается доход).

    Самое главное - правильно оценить свои силы и исходя из этого решать сколько куда их потратить. Может у вас сил хватит и на работу и на проекты и на хобби и еще перед сном почитать - без проблем, делайте все это. А если их не хватает даже на 8 часовой рабочий день - стоит это признать и не пытаться себя нагрузить сверх меры, получите новый срыв. Или отказаться от чего-то или искать другие способы кроме как "работать больше". Тут главное быть честным с собой и не "добавлять себе очки".

    В целом выгорание не зависит от объема работы - объем работы влияет на усталость, на выгорание влияет нервное напряжение и оно может быть и при 2 часах работы в день а может и не быть при 10.
    Если у вас реально начинается истощение - то определитесь это усталость или выгорание, если усталость - то организовать рабочее время и контролировать нагрузку, может даже в ущерб доходу, свое состояние очень важно.
    Если выгорание - то надо искать причины, если их не устранить - то ничего не поможет.

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

    @alexdonskih
    Использую на удаленной работе многое из того что уже было сказано коллегами.

    От себя добавлю следующее:

    Важен режим, а точнее ранний подъем. Раньше проснетесь, раньше начнете работать, раньше закончите. Я начинаю работать не позже 8 утра, и обычно в начале четвертого уже свободен. Также намного легче себя мотивировать на работу в первой половине дня.

    Работаю по тайм-трекеру в сочетании с помидорной системой. Интервалы по 2 часа с короткими перерывами в 5 мин. и длинными в полчаса.

    Всего в день работаю не более 6 часов именно по тайм-трекеру (на долгие перерывы трекер ставится на паузу). Денег выходит чуть меньше, но зато на душе намного спокойнее. Пробовал работать по 7-8 часов, но в таком режиме ты живешь буквально между постелью и кодом, на другое не остается времени.

    У меня на работе никто не требует быть у компа 6-8 часов в день. Есть только норма по часам в неделю и дедлайны по некоторым таскам.

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

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

    На свои дела сил хватает т.к. не выкладываюсь на 120% на работе.
    Ответ написан
    2 комментария
  • Как вы планируете свой рабочий день, чтобы не выгорать?

    Слушать тело и ощущения внутри, при перегрузке выключение компа, телефона и отдых: гулять, спать, лежать, заниматься восполнением энергии.
    Найти источник, который будет давать сил: идеально подойдет йога, также можно бассейн или бег.
    Использовать витамины и правильно жить: без вина и всего прочего, что отнимает энергию.
    Ответ написан
    Комментировать
  • Проектирования СУБД для хранения больших объемов?

    @zavodp
    для большого массива данных, речь про миллиарды записей(на данный момент 200млн).

    Это никакие не "большие данные".
    Для современного железа и современного СУБД - это ерунда.

    Стандартные решения на таких объемах начинают деградировать по скорости вставки/чтения(очень важно).

    Для чтения - индексы.
    Для вставки - bulk loading

    Приемлемое время отклика до 20 сек, конечно чем быстрее - тем лучше.

    Это троллинг?
    Или вы нам пишете из 1960 годов?

    Данные хранятся в одном ЦОДе. Сейчас 10-50 запросов/сек. В ближайщем будующем около 100запр/сек.

    Это не нагрузка вообще. Смешно.

    В данный момент используется MongoDB. Стурктура данных выглядит след образом(буду писать в терминах монги) - документе порядка 80 полей, с типом string, datetime, int, float, null, boolean. У записи есть уникальный ключ, с типом string(длиной в 30 символов). Поиск осуществляется по 30 полям и их возможным комбинациям. Необходимо читать в режиме реалтайм и делать всевозможные агрегационные операции с данными. На таких данных очень долго выполняется операция count.

    Индексы.
    А для агрегаций - подготовленные данные использовать. Count - всегда медленно, поскольку это полный перебор. Считать заранее, сохранять во вспомогательных данных.
    Смысла нет использовать MongoDB, если только вы не собираетесь это по огромному кластеру размазывать. Там и будет преимущество Монги.
    На 1-2-3 серверах классические реляционные СУБД типа PostgreSQL имеют преимущество перед Mongo.

    Поиск осуществляется по 30 полям и их возможным комбинациям

    Индексы по полям и комбинациям.
    См. план запроса чтобы понять какие именно индексы нужны.
    Ответ написан
    9 комментариев
  • Проектирования СУБД для хранения больших объемов?

    Digiport
    @Digiport
    PHP рулит
    Говорят, именно в таких случаях реляционные БД показывают своё преимущество.
    Ответ написан
    3 комментария
  • Какие подводные камни при разработке крупного маркетплейса на vue+ssr?

    @coller13
    Количество подводных камней порямо пропорционально количеству неправильных решений, принятых при начальном проектированием базовой архитектуры
    Upd
    Начните с выбора технологий. Vue это малая часть того стэка, который будет в проекте.
    Ответ написан
    Комментировать
  • Какие подводные камни при разработке крупного маркетплейса на vue+ssr?

    @managrib
    "Научите меня программировать?"

    Вопрос слишком общий.

    Сделать можно. Ибо vue и рожден ради крупнейшего в мире маркетплейса.
    Вопрос только в том - а способны ли вы это сделать и какие лично у вас будут косяки.
    Ответ написан
    Комментировать
  • Что мотивирует IT специалистов кроме ЗП?

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

    это самая большая ошибка бизнеса. что значит не ниже? почему не в 3 раза выше?
    Ответ написан
    22 комментария
  • Почему некоторые люди утврерждают что плохо использовать jQuery?

    @xfg
    jQuery - это про императивное программирование. jQuery - это про то "как" манипулировать dom элементами. Итог - смесь dom и бизнес-логики. Это невозможно разделить.

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

    Соответственно вся эта история не про jquery vs vanilla, а про императивное vs декларативное программирование для работы с dom. Большинство этого не понимает и спорят о jquery vs vanilla, хотя всё это одно и то же, до тех пор пока у вас не появляется какая-то штука, которая меняет парадигму работы с dom с императивного на декларативный. Внутри этой штуки можно использовать хоть vanilla, хоть jquery. Без этой штуки - у вас каша, хоть с vanilla, хоть с jquery.

    Собственно об этом написано в википедии:

    AngularJS is built on the belief that declarative programming should be used to create user interfaces and connect software components, while imperative programming is better suited to defining an application's business logic.


    Остальные фреймворки про то же самое. Это и стало причиной стремительного роста популярности javascript фреймворков.
    Ответ написан
    2 комментария
  • Как реализовать кнопку "Показать еще "?

    webinar
    @webinar
    Учим yii: https://youtu.be/-WRMlGHLgRg
    Универсальное решение для любых сайтов, с любыми отзывами, любой разметкой:
    <button type="magic" count="2" hide-if-last="true" libs="no-thanks">Показать еще</button>
    Ответ написан
    2 комментария
  • Можно ли в Python во float отбросить k знаков после запятой?

    >>> float("{0:.1f}".format(17.212123445))
    17.2
    Ответ написан
    Комментировать
  • Напомните онлайн сервис для создания макета сайта?

    VaaL2004
    @VaaL2004 Автор вопроса
    Прошу прощения что побеспокоил, нашел сам: Mockingbird

    Ещё из подобных:
    Pencil Project
    ProtoShare
    Hot Gloo
    MockFlow
    Balsamiq Mockups
    Creately
    Ответ написан
    2 комментария