Задать вопрос
  • Предлагают $8000 за браузерное расширение с аудиторией 120к+, адекватно?

    Noizefan
    @Noizefan
    8 - мало в любом случае, 15-20 по моим грубым, ориентиров по прайсу на такое быть не может, аудитория и специфика бывает разной.
    если есть сайт или возможность управлять этими 125к - им можно предложить продукт за 500, и если хотя бы 16 из них купят - человек отбил вложения. Чуть чуть прикинь и посчитай как можно этот ресурс трансформировать в прибыль, и примерно узнаешь сколько это может стоить.
    Другая сторона - тебе самому этот актив не нужен, извлекать прибыль не хочешь / не умеешь, но считаешь что оно должно стоить дороже предложенного?
    Другой вопрос - вместе с расширением тебе судя по всему придется отдавать аккаунт. Далее загружается обновление или используется какая нибудь уязвимость, и расширение становится разносчиком вредоносного кода, крадет деньги, следит за пользователями. Оно ж еще наверняка дырявый manifest v2?) А ты, получается, не просто соучастник, а аккаунт-то вовсе полностью твой, и вот ты уже закрыл себе въезд в многочисленное количество стран и нажил проблем на задницу за 8000.

    Чо бы я тебе посоветовал - не продавать, а нанять человека и за процент вместе с ним попробовать трансформировать этот актив в прибыль. И сам больше заработаешь, и риск подконтролен тебе.
    Ответ написан
    7 комментариев
  • Переменные var и let. В чем разница? Почему WebStorm жалуется на var?

    Любой ответ будет копипастой из MDN.
    Если просто:
    Если переменная должна быть изменяемой, то пиши let. Иначе - const.
    var не используй.

    Если сложно:
    https://habr.com/ru/companies/ruvds/articles/420359/
    Ответ написан
  • Какую библиотеку использовать для связи клиентов с сервером?

    @OwDafuq
    SignalR.
    Но с передачей 20гб вы, конечно, загнули, обычно это делают через отдельный файловый сервер-api.
    Ответ написан
    4 комментария
  • Почему при отсчете времени на iPhone выводит 'NaN' вместо цифр?

    Aetae
    @Aetae Куратор тега JavaScript
    Тлен
    Ну потому что 2023-10-21 7:00:00 PM GMT+0300 - это херпойми какой формат. То что его чудом жрёт хром - это случайность.
    Используй ISO: 2023-10-21T19:00:00+0300
    Ответ написан
    Комментировать
  • Какой софт можно использовать в качестве корпоративной хранилки файлов?

    @ipoluda
    Тоже не понимаю почему не NextCloud, уже лет 5 ставлю его всем своим клиентам, все в восторге, всё отлично работает. Подводных камней нет, как раз большинство сидит на 22 убунте. Но также не понимаю почему не устраивает snap пакет, ставится прямо во время установки убунты, со всеми зависимостями и необходимыми тонкими настройками, ssl с пол-пинка поднимается, на виртуалке масштабируется до тысяч, есть куча подключаемых модулей, файлы хранятся в их нормальном виде (восстанавливать если что получится без гемора), редактировать доки можно прямо в браузере, есть клиент на телефон, интегрируется с чем угодно, короче тупо гугл диск он-премисес только круче как на меня. Советую потому что перепробовал в своё время почти все решения и некст - лучшее что есть из опенсорса. И искренне не понимаю к чему городить связку именно из тех продуктов которые вы перечислили (nginx, mariadb). Некстклауд админится из вебки, в саму ОС вы даже заглядывать не будете после установки)) То есть, я к тому что если Вы привыкли к MariaDB + Ubuntu 22 + nginx то вам не придётся переучиваться, так как админить эти компоненты отдельно не придётся со snap. Поставил и забыл
    Ответ написан
    Комментировать
  • Как асинхронно использовать gui и несколько бесконечных циклов?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Асинхронный код запустить в отдельном потоке, а все взаимодействия с интерфейсом из этого кода делать сигналами. Есть ещё библиотеки, позволяющие использовать цикл событий asyncio в качестве цикла событий окна, что звучит здорово, но сам я их в бою не пробовал.

    UPDATE:
    Надо же, с 2019-го многое поменялось в интересную сторону. Для PyQt и PySide есть qasync, который активно развивается, а для Tk вообще не нужны сторонние библиотеки:
    import tkinter as tk
    from tkinter import ttk
    import asyncio
    
    
    class App:
        async def exec(self):
            self.window = Window(asyncio.get_event_loop())
            await self.window.show();
    
    
    class Window(tk.Tk):
        def __init__(self, loop):
            self.loop = loop
            self.root = tk.Tk()
            self.animation = "░▒▒▒▒▒"
            self.label = tk.Label(text="")
            self.label.grid(row=0, columnspan=2, padx=(8, 8), pady=(16, 0))
            self.progressbar = ttk.Progressbar(length=280)
            self.progressbar.grid(row=1, columnspan=2, padx=(8, 8), pady=(16, 0))
            button_block = tk.Button(text="Calculate Sync", width=10, command=self.calculate_sync)
            button_block.grid(row=2, column=0, sticky=tk.W, padx=8, pady=8)
            button_non_block = tk.Button(text="Calculate Async", width=10, command=lambda: self.loop.create_task(self.calculate_async()))
            button_non_block.grid(row=2, column=1, sticky=tk.W, padx=8, pady=8)
    
        async def show(self):
            while True:
                self.label["text"] = self.animation
                self.animation = self.animation[1:] + self.animation[0]
                self.root.update()
                await asyncio.sleep(.1)
    
        def calculate_sync(self):
            max = 3000000
            for i in range(1, max):
                self.progressbar["value"] = i / max * 100
    
        async def calculate_async(self):
            max = 3000000
            for i in range(1, max):
                self.progressbar["value"] = i / max * 100
                if i % 1000 == 0:
                    await asyncio.sleep(0)
    
    
    asyncio.run(App().exec())
    Ответ написан
    Комментировать
  • Можно ли как то отследить элемент JS?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    4 комментария
  • Как создать программу с готовыми шаблонами для формирования отчётов?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    1. Выбираем язык программирования
    2. Изучаем его
    3. Создаем базу с данными и учимся заполнять и извлекать данные из базы
    4. Пишем программу, которая умеет извлекать данные и выводить отчет
    5. Создаем шаблоны для титульной страницы и остальных страниц, интегрируем в программу

    Ну и все в таком духе.
    Ответ написан
    2 комментария
  • Что такое WEB api?

    bingo347
    @bingo347
    Crazy on performance...
    API - Application Programming Interface
    То есть это не обязательно что-то сетевое, интерфейс некой библиотеки - это тоже ее API

    Web API - это api браузера
    https://developer.mozilla.org/en-US/docs/Web/API

    Web Forms Api - часть api браузера для работы с формами
    https://developer.mozilla.org/en-US/docs/Web/API/H...
    https://developer.mozilla.org/en-US/docs/Web/API/F...
    Ответ написан
    Комментировать
  • Как выключить компьютер при пропадании подключения?

    @Drno
    Можно. Пингуй ip сервера и в случает отсутствия пинга отдавай команду на выключение
    Ответ написан
    Комментировать
  • Как уберечь аккаунт от бана несовершеннолетнему на Апворк?

    @Stalinko
    PHP'шник и фрилансер до мозга костей
    Ты сам никак не можешь работать по правилам.

    Единственный вариант для тебя - оформить аккаунт на родителей или на старшего друга, и работать через него. Хотя это тоже нарушение, формально говоря.

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

    Как-то так.
    Ответ написан
    8 комментариев
  • Насколько законно для крупной компании пробивать человека по почте?

    @Drno
    слать "нахер"
    если угрожают - заявление в мвд и прокуратуру отедльным письмом. так же официальной(бумажным) письмом на имя их ген дира, с требованием выдать "звиздюлей" их СБ
    Ответ написан
    4 комментария
  • Как хранить константы в python?

    @blozheupasi
    По поводу Enum и постоянного обращения на value. Можно делать так:

    class CustomEnum(str, Enum):
        """Помощник, чтобы не писать .value кажыдй раз при вызове enum класса
    
        Вызов: YourCustomEnum.megaparam # сразу вернет значение, .value в конце не нужно
        """
        def __str__(self) -> str:
            return str.__str__(self)


    По поводу хранения и быстрого переопределения параметров в продакшне можно вместо БД (если, конечно, речь о чем-нибудь типа psql или mysql) использовать etcd — он легкий и умеет в HTTP.
    Ответ написан
    2 комментария
  • Как хранить константы в python?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    Ваш подход вполне пригоден к использованию и его можно применять.
    Тут надо внести ясность, что есть разница между константами и настройками. Настройки предполагается менять, их иногда "перекрывают" через параметры командной строки или переменные среды окружения.
    Если вам нужны настройки, то этот вариант не годится. Используйте предложенный выше вариант с Pydantic.
    Если это именно константы, их не потребуется или не скоро потребуется перекрывать, загружать из файлов, пробрасывать через переменные среды окружения, через параметры командной строки и т.д.
    Если значения этих констант приемлемо хранить в репозитории, то нет ничего плохого в том, что вы группируете константы в классы. Это нормально для питона.

    Но учтите, что вам может захотеться хранить в таких вот местах какие-то чувствительные, т.н. секретные данные. Например, ключи шифрования, пароли для подключения к БД или другим сервисам, ключи API, всякие токены и т.д. Такие данные опасно, неудобно и неправильно хранить в репозитории вместе с кодом. Для хранения таких параметров тоже нужно использовать библиотеки для хранения, сериализации и десериализации настроек.

    Возможно у вас возникнет соблазн сейчас сделать вот так по-простому, а чувствительные данные и секреты тоже импортировать в виде питоновских модулей, но эти модули добавить в игнор-лист репозитория, а импортировать с соответствующим перехватом ошибок импорта... Так можно сделать, если вам критически не хочется брать в проект лишние зависимости, но это тот ещё геморрой. Лучше использовать специальные механизмы хранения настроек сразу. Тем более это потребует меньше кода (который нужно еще и тестировать) и сложности (которую принято выносить и тестировать отдельно, чем такие либы как Pydantic и занимается).
    Ответ написан
    1 комментарий
  • Как работать с иконками?

    @TooTal
    общего решения не дам, но как дизайнер, могу сказать, что помещаю иконку в контейнер, например, 24px, сама она по себе может быть любых размеров и соотношений сторон в рамках контейнера. Создаю из иконок библиотеку и отдаю разрабам.
    Ответ написан
    Комментировать
  • Делят ли файлы в nodeJS?

    Посмотри на nestjs - там вполне opinioated архитектура.
    Правда если понравится nest - не понятно, зачем вообще нода (ибо можно тогда на какой-нибудь из "более взрослых" языков перейти. Типа того же C# + asp net core)
    Ответ написан
  • Какие ограничения есть на ip адреса для SSH?

    Vindicar
    @Vindicar
    RTFM!
    Часть IPv4 адресов (точнее, целые подсети) зарезервирована для локальных сетей и подобных целей - т.н. приватные адреса (private subnets). Они не доступны "снаружи", из Интернета, а только если ты находишься в той же сети.
    Какие именно - гугл и википедия знают.

    А "скорее всего" - даже если IP адрес публичный, не значит, что этот адрес соответствует реальному узлу. А если соответствует, не факт, что на узле поднят SSH сервер.
    Ответ написан
    Комментировать