Задать вопрос
  • Какой объем знаний и навыков нужно для того чтобы стать middle Rust разработчиком?

    vabka
    @vabka Куратор тега Rust
    Сейчас редко нанимают чистых растаманов, тк язык молодой.
    Обычно нанимают тех, кто переходит с других, более традиционных языков.
    Так что тебе сначала надо стать мидлом/сеньором в C++/Java/C#/C а потом дотянуть знания раста, чтобы уметь на нём решать задачи, аналогичные тем, которые ты решаешь с основным языком.

    Ну и соответствующий коммерческий опыт ~5 лет.
    Учитывай ещё и специфику Rust-проектов: это что-то новое, что требует безопасности и эффективности, где нельзя/нежелательно/невозможно использовать "Традиционные" языки.
    Так что и уровень ответственности и требуемых знаний будет выше, чем на аналогичную, например Java-позицию.
    Ответ написан
    1 комментарий
  • Что интересного полезного можно писать на GO для прокачки как разработчика?

    uvelichitel
    @uvelichitel Куратор тега Go
    habrahabr.ru/users/uvelichitel
    Ответ написан
    Комментировать
  • Как Вы загружаете свои сайты в Linux-системах?

    @AlexVWill
    Как Вы передаёте файлы на сервер?

    Просто подключаем удаленную папку /var/www/html как локальную через sshfs и просто в обячном проводнике (любой: Nemo, Nautilus, МС...) копируем папку с данными как локальную... не надо никаких клиентов, никаких заморочек с настройками и все вот это
    https://losst.ru/podklyuchenie-i-nastrojka-sshfs-v...
    Ответ написан
    Комментировать
  • Оцените верстку HTML / CSS, стоит ли переходить на изучение JS?

    @vlog
    Ожидал увидеть что-то не очень красивое как это очень часто бывает. Однако, нет, у вас здорово получается, можно начинать js))
    Ответ написан
    1 комментарий
  • Почему метод дженерик типа в го существенно медленнее нативного?

    hugga
    @hugga Автор вопроса
    Из обсуждения https://github.com/golang/go/issues/50182 видно что проблема с производительностью generics не новая.
    При запуске бенчмарков с флагами получается ожидаемое мной ± равное время выполнения ф-ций:
    go test -bench=. -count=2 -gcflags=all=-d=unified

    BenchmarkNativeFunc-4            2029149               600.5 ns/op
    BenchmarkNativeFunc-4            2018277               591.7 ns/op
    BenchmarkNativeMethod-4          1962086               592.0 ns/op
    BenchmarkNativeMethod-4          2024234               603.9 ns/op
    BenchmarkGenericFunc-4           1985313               573.4 ns/op
    BenchmarkGenericFunc-4           2053454               585.1 ns/op
    BenchmarkGenericMethod-4         2067790               591.3 ns/op
    BenchmarkGenericMethod-4         2054346               612.2 ns/op

    что форсирует применение при компиляции stenciling (трафарет по отдельным типам) вместо словарного подхода реализации дженериков (текущая реализация).
    Остаётся ждать оптимизаций в обновлениях языка
    Ответ написан
    Комментировать
  • Как правильно вставлять большие изображения на страницу?

    Ankhena
    @Ankhena Куратор тега CSS
    Нежно люблю верстку
    чтобы картинка подстраивалась под размеры данного блока

    Если это фон: background-size
    Если img, то object-fit

    Как правильно вставлять большие изображения на страницу?

    Уменьшить до нужного размера. Понятно, что при адаптиве картинки все равно не будут равны размерам блока, но постараться использовать разумные размеры.
    И соответственно, для ретины и разных размеров вьюпорта, либо тег picture для контентных либо media для фоновых.
    Ответ написан
    Комментировать
  • Как передавать в переменной CSS значение свойства inherit?

    Ankhena
    @Ankhena Куратор тега CSS
    Нежно люблю верстку
    <div class="parent" style="--p_inherit:30px; padding-right: 30px">
      <div class="parent__child pl_inherit pr_inherit">123</div>
    </div>

    .parent {
      padding-left: var(--p_inherit);
    }
    .pl_inherit {
      padding-left: var(--p_inherit);
    }

    Ну только кастомное свойство нужно нормально назвать.

    Либо дочернему так прямо и писать padding-left: inherit;. Но это, конечно, зависит от того, как вы планируете дальше обращаться с этой переменной.
    Ответ написан
    9 комментариев
  • Как запустить python-скрипт с таймаутом из Go?

    WinPooh32
    @WinPooh32
    Stack Overflow answer searching expert
    В документации os/exec даже есть пример под ваш случай: https://pkg.go.dev/os/exec#example-CommandContext
    Ответ написан
    Комментировать
  • Как правильнее хранить разные типы в одном поле структуры?

    uvelichitel
    @uvelichitel Куратор тега Go
    habrahabr.ru/users/uvelichitel
    Мне кажется вы с ног на голову... Может быть так?
    type Admin struct {
      Permissions map[string]interface{}
      User
    }
    type Subscriber struct {
      Online        bool
      Status        string
      SubscriptedTo []int
      User
    }
    type User struct {
      ID    int
      Login string
    }
    Ответ написан
    Комментировать
  • Как лучше поступать в такие моменты по bem?

    SeaInside
    @SeaInside
    16 лет пилю все эти штуки
    Эта разметка абсолютно правильная в двух случаях:
    1) Ваши `close` и `card` действительно нигде не переиспользуются;
    2) Объём стилей блока `some-class` остаётся адекватным для восприятия.

    Соответственно, вам нужен новый блок в двух случаях: либо он переиспользуется, либо для разделения кода для простоты восприятия.

    Возьмём разметку посложнее (не надо в ней искать какого-то смысла, просто от фонаря что-то набрал для иллюстрации):
    <div class="block">
      <!-- Header -->
      <div class="block__header">
        <h2 class="block__title">Title</h2>
        <div class="block__actions">
          <button type="button" class="block__action block__action--edit">
            <span class="block__action-icon"></span>
          </button>
        </div>
      </div>
      <!-- Content -->
      <div class="block__content">
        <p>...</p>
      </div>
      <!-- Footer -->
      <div class="block__footer">
        <div class="block__about">
          <div class="block__author"></div>
          <div class="block__date"></div>
        </div>
        <div class="block__awards">
          <div class="block__award">
            <div class="block__award-inner"></div>
            <div class="block__award-tooltip">
              <div class="block__award-tooltip-content"></div>
              <button type="button" class="block__award-tooltip-close"></button>
            </div>
          </div>
        </div>
      </div>
    </div>


    Положим, что весь контент этого блока уникальный и никак не переиспользуется.
    Объём стилей `block` при такой структуре неизбежно станет некомфортным для восприятия, строк на 200-300.

    В таком случае хорошо создать внутренний блок (или несколько) просто для того, чтобы размазать сложность.
    `block-header`, `block-footer` или даже `block-footer-award`.

    Самое главное здесь организовать файловую структуру / конфигурационный файл / чем вы там ещё собираете таким образом, чтобы было очевидно, что `block-footer` - это не самостоятельный блок, а внутренний блок `block`, нужный только для упрощения восприятия, и он не может / не должен использоваться в отрыве от него (в этом случае у него не должно быть в названии общего префикса с `block`, чтобы не создавать путаницу)

    * И не забывать о том, что даже для таких внутренних блоков действуют те же самые правила, что и для других - вся внешняя геометрия задаётся через элементы.
    Ответ написан
    8 комментариев
  • Есть ли на русском полный учебник по GO?

    @Spargwy
    20 годиков. Голанг баккенд девелопер
    "Язык программирования Go" от создателей
    Но он 2014 вроде, так что некоторых тем может не быть. Наверстаешь в доке.

    UPD: А вообще го не такой объёмный язык. Намного больше времени потратишь, чтобы понять КАК на нём писать, а не на его функционал.
    Ответ написан
    Комментировать
  • Почему не устанавливается пакет chi с помощью go get?

    WinPooh32
    @WinPooh32
    Stack Overflow answer searching expert
    Вики по GOPATH.
    GOPATH подход устарел и с 1.16 версии по умолчанию используются модули.

    Если вам так нужен проект в GOPATH, то можно отключить модули:
    GO111MODULE=off go get github.com/go-chi/chi/v2

    В режиме модулей зависимости сохраняются в кэше.
    Их можно перенести в проект командой go mod vendor, и зависимости перенесутся в папку vendor рядом с файлом go.mod.

    При сборке проекта зависимости автоматически скачиваются в кэш.
    Ответ написан
    1 комментарий
  • На что обратить внимание на сервере после взлома?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    В подобных случаях лучше переустановить ОС к чертям, имхо.
    Ответ написан
    Комментировать
  • Как организовать сеть (теория)?

    @Akina
    Сетевой и системный админ, SQL-программист.
    • 0. Всегда (на все три вопроса). 800 устройств в одном домене коллизий, это [censored] и полный ступор.
    • 1. Да. Но нет. Все в одной подсети - бред и никакого смысла.
    • 2. Немаршрутизируемые в Интернет адреса (bogon networks). Я бы делал подсети в 172.16. Но это дело вкуса.
    • 3. Ни разницы, ни усложнения нет и в помине. Стандартности тут тоже никакой.
    • 4. Каждую подсеть в свой VLAN. Ибо нефиг.
    • 5. Серверы в отдельных подсетях. Причём не одной. Что делать серверу видеонаблюдения в подсети бухгалтерии?
    • 6. Стройте схему на основании потоков трафика, а не по некоему мистическому наитию.
    • 7. Не у телефонии, а у некоторых коммутаторов есть специальная работа с VoiceVLAN. да, только экономия портов. Если не работал - то и не связывайся. Потом поэкспериментируешь.
    • 8. По требованиям безопасности сеть видеонаблюдения вообще должна быть по возможности физически отделена от пользовательской. Отдельные коммутаторы и кабельные линии. да и трафика они генерят - могут забивать каналы, оно надо? То же и с линиями охранно-пожарной сигнализации - но тут строго, никаких "по возможности".
    • 9. Сервер печати. И да - он и принтеры в отдельном VLAN.

    Ставим L3 коммутатор, который будет рулить потоком, его же добавляем в качестве шлюза.

    Ставь сразу нормальный маршрутизатор.
    Потому что коммутатор, хоть и L3, тебе ничего не даст во вменяемой форме - ни статистики, ни управления, ни наблюдения.
    Ответ написан
    13 комментариев
  • Посоветуйте Lato-похожий шрифт с кириллицей

    sharapovk
    @sharapovk
    На сайте разработчика шрифта есть версия 2.0 с поддержкой кириллицы: www.latofonts.com/lato-free-fonts/#download.
    Пишут, что скоро должен появиться в Google Fonts.
    Ответ написан
    18 комментариев
  • Golang jetbrains не читает БД в sql?

    @deliro
    1. Goland, а не Golang. Golang — это язык, а то, что от JetBrains — IDE с именем Goland
    2. Изучать синтаксис SQL. Никакого отношения к Golan(d|g) "ошибка" не имеет
    3.
    Дальше будут сложнее запросы?
    То, что ты написал — самый элементарный запрос. Проще только SELECT 1; Очевидно, будут сложнее
    Ответ написан
    Комментировать
  • Как сделать динамичный title?

    aliencash
    @aliencash
    Партизан
    На js вам доступно document.title. Меняя его вы получите нужный эффект.
    Ответ написан
    Комментировать
  • Какой стек технологий лучше всего подойдет для работы с объемными базами данных?

    ThunderCat
    @ThunderCat Куратор тега Веб-разработка
    {PHP, MySql, HTML, JS, CSS} developer
    исходя из вышеизложенного, какой бы стек технологий вы бы выбрали как разработчик чтобы решить вышеописанную задачу?

    Для начала немного контекста - 2 важных примечания:
    1) Описанная задача решается на любом упомянутом стеке, + еще десяток возможных вариантов (Java/Spring, питон, нода, дотнет, голанг и т.д.).
    2) Быстродействие системы зависит от ее самой медленной части, и в 95% случаев самая медленная часть - БД, просто в силу специфики работы: много данных со сложными связями, выборки с сортировкой и фильтрацией из большого массива и вот это все, в то время как язык бэкенда в основном выполняет достаточно простые манипуляции с уже готовыми наборами данных (за редчайшими исключениями, которых в вашем кейсе нет, или они не описаны в вопросе).

    В вашем случае:
    - база можно сказать совсем небольшая, до 1 миллиона записей условный мускуль ворочает весьма шустро, если железо соответствует.
    - задача сбора метрик достаточно тривиальная, особого ума в сохранении действий пользователя не надо, бОльшая часть работы - вывод в красивые графики и написание быстрых запросов с хитрыми выборками/агрегациями, немного пошаманить с формулами, возможно делать какие-то сводные выборки с денормализованными результатами для отчетов и прочие мелочи. Работа не сложная, но нудная, и ее много.

    Насчет стоимости и условий:
    полный самопис 150к+ (я это не тяну) или же сайт на Laravel +MySQL а дальше варьируется.
    полный самопис - либо маркетинг, либо идиотизм, писать на голом языке не будет ни одна нормальная студия, в принципе в данном случае либо используется фреймворк и заказчику преподносится как "сделано вручную программистами девственниками под светом серебряной луны", либо разработчики идиоты, мнящие себя круче всех (нет). В первом случае это то же что и "сайт на Laravel +MySQL" (норма и стандарт для среднего уровня студий), во втором - развод на мани на пустом месте и попытка продать г**но в обертке "иксклюзивнасти".

    По цене - на сегодняшний день, если я не ошибаюсь, 150к деревянных это +- 1000уе. Цена приемлемая за нормальную работу, если найдете дешевле "на Laravel" - думаю будет вообще ок. Опять же, цены штука такая, кто-то за копейки сделает хорошо, кто-то за дорого каку сляпает. Влияет так же регион, понятно что в Мск цена будет серьезно больше чем в условном Челябинске...

    Важный момент - нормальное ТЗ в разы упрощает как поиск исполнителя, так и оценку работы. Я бы на вашем месте погрузился именно в тему создания качественного ТЗ, нежели в дебри современных технологий.

    UPD:
    проект планируется на 100 к+ посетителей в месяц...
    предупреждают что если аудитория достигнет условных 100 тысяч в месяц Лара начнет потихонечку задыхаться от нагрузки,
    ок, пусть будет 200к для наглядности.
    В среднем, если это маркетплейс, то постоянных посетителей будет не много, думаю около 10%, так что ими можно пренебречь. Условно - 200к / 30 дней = 6600 в сутки, при активных 10-12 часах посещения это ~600 в час. Пусть на 1 посетителя будет 5 запросов страниц, это 600*5=3000 в час = 50 в минуту или менее 1 запроса в секунду.
    Даже если умножить это на 30 (допустим такая пиковая нагрузка), 30rps вообще "ниачем". Не знаю кто там вам считал то это проблема, любое современное железо среднего уровня вытягивает без напряга.
    Ответ написан
    2 комментария
  • Какие русские платежные системы принимают платежи с Америки и ЕС?

    @Akela_wolf
    Extreme Programmer
    Никакие. Так как ограничение на платежи установлено самими платежными системами - VISA и MC. Никакой сервис не может принимать платежи, если их не позволяет сама платежная система
    Ответ написан
  • Кого-нибудь штрафовали за картинки из гугла и шрифты без лицензии?

    lxfr
    @lxfr
    Чтобы это сделать владелец должен быть резидентом РФ или компания должна иметь представительство в РФ (например как Microsoft). Если разговор идет про РФ.
    Ответ написан
    Комментировать