• Чем Классы отличаются от обычных функций?

    RabraBabr
    @RabraBabr
    ООП это не управление сложностью как многие тут напишут. Это сущность другого уровня абстракции. Вы смешали в одну кучу сущности из разных уровней.
    Вот смотрите - в физическом мире есть микромир с электронами, протонами, фотонами и не знаю там чем еще. Он работает по своим законам квантовой механики. Есть макромир уровня вещей самолетов, яблок, деревьев. Он работает по законам Ньютоновской механики. Есть мир космогонии уровня звезд галактик черных дыр. Он работает по Теориям Эйнштейна. Видите как просто. Мы прошлись по трем уровням абстракции материального мира самого низкого до самого высокого.
    Так же и в мире информации есть самые низкие уровни машинных кодов, регистров и отдельных битов. А есть более высокие уровни функций, еще более высокие уровни классов и даже еще более высокие уровни абстракций. Так вот ваша задача рассортировать все те сущности, что вы привели правильно по разным уровням. А у вас все в одной куче: операторы, переменные, классы. И не надо высшему миру знать о низшем ничего. Тогда все будет правильно.
    Беда программирования в том, что очень мощные инструменты доступны всем. Вот представь мед лабораторию с микроскопами, скальпелями пробирками и другим оборудованием. Туда не каждого пустят. В программировании же каждый может нажать кнопку скачать и начать творить всякую фигню. Пришить пятую ногу собаке, вырастить ей ухо на спине и рога на лбу. Была такая книга - "Многоярусный мир". Там один товарищ специализировался на таких уродцах. Вот потом эти уродцы начинают мстить их создателю.
    Так вот нормальный программист попав в этот мир уродцев, зачастую впадает в ступор. Зачем так делать? Ну то есть делать можно все, что угодно. Но не нужно. Его задача уменьшать энтропию вселенной, а не увеличивать.
    Ответ написан
    3 комментария
  • Запись и удаление файла или перезапись при большой нагрузке на сервер?

    inoise
    @inoise
    Solution Architect, AWS Certified, Serverless
    Если нагрузка то может не с файлом работать?
    Ответ написан
    7 комментариев
  • Как передать русский язык в клавиатуру чатбота?

    @SilimAl
    Telegram, VK, Instagram боты
    Приветствую, AlexMine !
    Столкнулся с той же проблемой на PHP.
    Решение оказалось простым, использовал параметр JSON_UNESCAPED_UNICODE при енкоде.
    Попробуйте что-то подобное сделать на питоне.
    $keyjson = json_encode($keyarr, JSON_UNESCAPED_UNICODE);


    5b2aaa88c2152389115478.png
    Ответ написан
    1 комментарий
  • Как передать русский язык в клавиатуру чатбота?

    YardalGedal
    @YardalGedal
    yeah boy
    json.dumps(KEYBOARD_STEP_1, ensure_ascii=False).encode("utf-8")
    Ответ написан
    1 комментарий
  • Как лучше продвигать страницу в Instagram?

    Moon_Lobster
    @Moon_Lobster
    Инвестор
    1. Используйте массфолл и масслайк (на одну подписку - 1\2 лайка). Не больше 800-900 действий за сутки (например - 400 подписок, 400 лайков в сутки). Это почти бесплатный и работающий метод, затраты только на сервис через который будете накручивать.
    2. Сошиал кит, Тулиграм это основные. Сейчас актуальнее наверное Тулик, у Сошла сложнее сервис и медленно фильтрует аудиторию. У Тулика есть возможность проблного периода, пишите им в суппорт. Сошл дает демку опробовать тоже. Так что сравните. Но вообще их много, можете поизучать на форумах.
    3. Платный таргет может быть полезен, стоит дешево и по ГЕО норм результаты может выдать, но тут все от вашего бюджета так сказать.
    4. Платная реклама у блогеров с вашей целевой, но будьте осторожны, хорошо проанализируйте страничку блогера, активности на ней.
    5. Розыгрыши (делайте их с рекламой у крупных блогеров, для максимального охвата).

    Черные способы (за них могут лишить страницы):
    1. Накрутка ботов (заходим на фриланс биржу и постим такой запрос).
    2. Накрутка лайков - помогает вывести в топ ваш пост (в предложку).


    Есть сервисы отложенного постинга, но если у вас одна страничка, то вам это не нужно. Можно использовать приложения напоминалки, в них можно составить пост, выставить время и они вам напомнят о том, что нужно запостить готовый пост. К примеру приложение Later - Schedule for Instagram и ему подобные (они как правило бесплатны).

    Ну и главное, впереди всего этого контент, он должен быть актуальным для вашей ЦА и качественным - в инсте любят глазами)
    Ответ написан
    2 комментария
  • Какой существует бесплатный и self-hosted/desktop конструктор интерфейса на базе Bootstrap?

    Maksclub
    @Maksclub
    maksfedorov.ru
    Бесплатная и очень крутая (для Винды и Линукса — что для меян очень важно):
    Pingendo

    Описание с видео работы программки для 3 версии, 4 чуть отличается по дизайну
    https://maksfedorov.ru/blog/all/prototipy-saytov-v...
    для 4 версии также есть веб-интерфейс

    Кликабельно
    5a734cca8cd49875804262.png
    Ответ написан
    1 комментарий
  • Как подгрузить нужный компонент в vuejs с помощью?

    0xD34F
    @0xD34F Куратор тега Vue.js
    Имена компонентов сложить в массив; также добавить свойство, содержащее имя выбранного компонента:

    data: () => ({
      activeComponent: null,
      components: [
        { name: 'component-1', label: '#1' },
        { name: 'component-2', label: 'а я второй' },
        { name: 'component-3', label: 'третьим буду' },
      ],
    }),

    На основе массива создать выпадающий список, привязать имя выбранного компонента к списку через v-model:

    <select v-model="activeComponent">
      <option v-for="n in components" :value="n.name">{{ n.label }}</option>
    </select>

    Если имя компонента выбрано - создать соответствующий экземпляр:

    <component v-if="activeComponent" :is="activeComponent"></component>
    Ответ написан
    Комментировать
  • Как получить телефон, что подгружается ajax'ом?

    @EverOne
    R&D Management since 2011
    В коде страницы есть
    <div class="productPageFixedContact__phoneText js-showContactPopup" data-phone="KzcgKDkxMCkgNDA5LTY3LTU3">

    Так вот - data-phone="KzcgKDkxMCkgNDA5LTY3LTU3"
    И есть телефон и никакого ajax'a!
    Теперь берем
    KzcgKDkxMCkgNDA5LTY3LTU3
    раскодируем base64->utf8
    Ответ написан
    1 комментарий
  • Как сделать, чтобы меньшие числа давали больше очков?

    sergiks
    @sergiks Куратор тега PHP
    ♬♬
    Буквально ваши правила реализуются подобным JavaScript кодом – с условиями:
    function getPostScore(time) {
      var diff = Math.floor((new Date()).getTime()/1000) - time;
      if( diff <= 3600) return 50000;
      else if( diff <= 7200) return 25000;
      else if( diff <= 10800) return 10000;
      else return 0;
    }
    
    getPostScore(1493487180); // 10000


    Но ступенчатость значений, наверное, не вполне оправдана и лучше будет какой-то гладкой функцией. Например, вида y = k / x
    af5c49df83bb430f9f7ba91b2c6bc147.png
    С коэффициентом k = 50000 * 3600 она удачно захватывает и вторую точку. Но плоха тем, что ближе к нулю зашкаливает в +бесконечность.

    Наверное, для вашей задачи уместнее S-образная кривая – сигмоида, задаваемая формулой вида y = 1 / (1 + e-x) Примерно подобрал коэффициенты:
    ecd0f96a15224fe2ac9fb125e7305b8f.png
    function getPostSigma(time){
      var diff = Math.floor((new Date()).getTime()/1000) - time;
      return Math.round( 10000 + 40000 / (1 + Math.exp((diff-6800)/700)));
    }
    
    getPostSigma(1493531780); // 49998
    getPostSigma(1493522780); // 11545
    Ответ написан
    Комментировать
  • Как настроить webpack2 + vue.js2?

    amelihovv
    @amelihovv
    Фулстек веб разработчик
    Я в своем проекте настраивал с помощью vue-cli, затем пару дней назад обновил в ручную конфиги до webpack 2.
    Ответ написан
    Комментировать
  • Хорошая практика для Python?

    @Cnfc19932
    Full-stack web developer
    Какие книги?Вы о чем вообще, 2016 год за окном.Просто берете и пишите код.Берите любую задачу и пробуйте ее реализовать, никакие книги не помогут
    Ответ написан
    9 комментариев
  • В чем различие == и IS в Python?

    sim3x
    @sim3x
    The current implementation keeps an array of integer objects for all integers between -5 and 256, when you create an int in that range you actually just get back a reference to the existing object. So it should be possible to change the value of 1. I suspect the behaviour of Python in this case is undefined. :-)


    https://docs.python.org/2/c-api/int.html#c.PyInt_F...

    в 3 тоже самое
    Ответ написан
    Комментировать
  • В чем различие == и IS в Python?

    mututunus
    @mututunus
    Backend developer (Python, Golang)
    is проверяет, что переменные указывают на один и тот же объект в памяти. Но особенность в том, что, для экономии памяти, булевы типы, числа и строки могут кешироваться.
    Ответ написан
    Комментировать
  • В чем различие == и IS в Python?

    @nirvimel
    Экземпляр класса - это и есть объект, а переменная это просто имя, которому сопоставлено некоторое значение. А так как в Python любое значение - это объект (экземпляр) какого-то класса, то операторы is и == всегда применяются к значениям переменных, то есть к объектам (экземплярам) класса.

    А чтобы понять различия между операторами is и == запустите этот код и посмотрите на вывод:
    class AlwaysEqual(object):
        def __eq__(self, other):
            return True
    
    instance = AlwaysEqual()
    print (instance == 42)  # True
    print (instance is 42)  # False
    print (instance is AlwaysEqual())  # False
    print (instance is instance)  # True

    Это пример класса, любой экземпляр которого всегда равен (==) всему, чему угодно.
    В то же время, экземпляр этого класса не является (is) другим экземпляром этого же класса и ничем другим кроме самого себя.
    Ответ написан
    Комментировать
  • Как создать хостинг игровых серверов?

    k0st1an
    @k0st1an
    linux | python | django | ansible
    Я как раз такое делаю... уже год где-то пилю. Вообще я системный админ и вебовские штуки не очень понимал. И когда начал делать думал не займет много времени. Однако... Задача вроде не сложная, но за этот год я для себя открыл многое. Пока использую вот что: ansible, python (кучу разных библиотек), django, redis (rq). Это только что касается работы самой системы. А еще нужно мониторить ресурсы, логи, разное другое. Дьявол кроется в деталях и эти детали занимаю просто невероятно сколько времени... redis, postrgesql, spiped, absible, rq, icinga. За этот год я систему переписал раза три, а отдельные компоненты переписывал или отказывался от них уже не знаю сколько раз... В общем что-то можно посмотреть у меня https://github.com/battleserver часть вещей закрыта, нет смысла все выкладывать. Часть всего остального реализовано как отдельные проекты, не привязанные к данному проекту.

    А еще вопросы налогообложения, как прикрутить платежную системы к сайту... В общем удачи )))
    Ответ написан
    Комментировать
  • Как понять решение с множественным выбором (shift + click) элементов в списке?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега JavaScript
    function selectFromLast(target) {
      // Определяем элемент, с которого начинается выделение
      // Если до этого кликали на какой-то элемент, берём его
      // Иначе берём первый элемент списка
      var startElem = lastClickedLi || ul.children[0];
    
      // Определяем, находится стартовый элемент до или после выбранного
      // Для этого применяем битовую операцию И
      // https://learn.javascript.ru/compare-document-position
      var isLastClickedBefore = startElem.compareDocumentPosition(target) & 4;
    
      if (isLastClickedBefore) {
        // Если стартовый элемент расположен перед выбранным, идём от стартового вниз до выбранного
        for (var elem = startElem; elem != target; elem = elem.nextElementSibling) {
          elem.classList.add('selected');
        }
      } else {
        // Если стартовый элемент расположен после выбранного, идём от стартового вверх до выбранного
        for (var elem = startElem; elem != target; elem = elem.previousElementSibling) {
          elem.classList.add('selected');
        }
      }
    
      // Наконец, устанавливаем класс выбранному элементу
      elem.classList.add('selected');
    }
    Ответ написан
    Комментировать
  • Старт проекта в регионе или по всей России?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Тут только 3-й путь:
    1. на всю страну и сразу с сегментацией по населённым пунктам и с возможностью их дальнейшего добавления пользователями (название, положение на карте и узнаваемый графический образ: герб города, чем славится место: культурное место/сооружение/постройка (башня, кремль, монастырь и т.п.)/мануфактура/и т.д. в "шапку").
    2. Возможность указания разных типов зон, где была утеря вещи:
    • площадь (многоугольник),
    • вдоль заданного пути на местности с коридором шириной N метров,
    • в метро на перегоне от станции A до станции B.

    3. Возможность гео-позиционирования для удобного выбора ближайшего населённого пункта к месту утери и самой точки утери.
    Ответ написан
    Комментировать
  • Какую форму регистрации выбрать для моего сайта?

    Alexey_Suprun
    @Alexey_Suprun
    Web Developer Blog - ссылка в описании
    Более конверсионно и регистрация и авторизация, так что делайте и то и то
    Ответ написан
    Комментировать