Задать вопрос
  • Что брать из видеокарт?

    @rPman
    синтетика говорит что gtx750 быстрее gt1030 на 20%-25%

    с точки зрения логики, 1030 новее, и есть шансы найти драйвера на 10-ку, а вот r7 260 ... (официально поддержка есть, драйвер можно скачать)

    ну и реалии таковы что все указанные видеокарты говно.
    Ответ написан
    Комментировать
  • Почему именно 5в напряжение в адаптерах для смартфонов?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    А в чем, собстенно вопрос? Почему именно 5 выбрано стандартом, а не 4 или 6? Или, скажем, 12, 24, 36 или 100 вольт?
    Нужно понимать, что есть такая штука, как закон Ома. Сила тока прямо пропорциональна напряжению и обратно пропорциональна сопротивлению. Сопротивление - это свойство проводника, зависит (если не слишком углубляться) от того, что за метал, от его толщины и длины. А ещё у нас всегда ограничена мощность источника тока.
    Мощность - это количество энергии, которая расходуется, преобразуется или передаётся за единицу времени.
    Вот у нас есть кабель и нам нужно передать через него 5 ватт, чтобы достаточно быстро зарядить смартфон. Ка краз получается 5 вольт * 1 ампер = 5 ватт. То есть по нашему кабелю должен идти ток 1 ампер. Это достаточно большой ток, и, если у нашего кабеля будет слишком большой сопротивение (то есть он будет длинным, или тонким, или не из меди), то большАя часть передаваемой энергии будет тратиться на бесполезный нагрев кабеля.

    Если хочется поднять мощность вдвое, чтобы еще быстрее зарядить смартфон, придётся либо удвоить ток, а при этом удвоится учетверится энергия (ведь зависимсть от тока квадратичная), уходящая на нагрев и чтобы это го не происходило, нужно делать толще кабель, покрывать его серебром (у которого низкое сопротивление), делать провод короче. Всё это дорого и неудобно.
    Второй вариант - это удвоить напряжение, тогда при напряжении 10 вольт и том же токе в 1 ампер передаваться будет уже 10 ватт мощности при тех же потерях на нагрев проводов.
    Получается, что за счет увеличения напряжения можно снижать потери на передачу энергии по тем же тонким. гибким недорогим проводам, что и раньше, НО!

    Но. Чем выше напряжение, тем более высоки требования к изоляции между проводниками с разным потенциалом. А ещё химичесие источники обычно выдают не такое уж и большое напржение, приходится включать их последовательно, отчего возникают сложности с балансировкой при заряде\разряде, габаритами, конструкционной сложностью элементов... Кроме того, p-n-переходы в транзисторах и диодах не способны выдерживать больших напряжений, потому что может возникнуть пробой. Такая же проблема может возникнуть и в катушках индуктивности и в конденсаторах. Конденсаторы становятся более громоздкими, нужно больше изоляции, а транзисторы нельзя делать очень маленькими.

    Получается такая вот дилемма. Электроника между током и напряжением балансирует как между Сциллой и Харибдой, пытаясь сэкономить на том-на сём.

    Там, где нужны большие мощности, риходится задирать напряжение. Именно поэтому у нас в розетке 220в, а между фазами 380. Чтобы закипятить двухкилловатный чайник приходится пропускать ток почти 10 ампер, но нам важно, чтобы грелся чайник, а не провода от розетки до чайника и в стенах. Поэтому провода толстые, гораздо толще вашего шнурочка зарядки от мобильника или дорожек на плате внутри него.

    Там, где важна в основном логика и мощность требуется не сильно, лишь для подсветки экрана или яркого светодиода вспыщки, выбирается небольшое напряжение 5 в. В процессорах и вообще в интегральных микросхемах приходится использовать еще меньшее напряжение 3.3в, чтобы не пробивали очень тесно проложенные дорожки внутри. Снижать еще сильнее напряжение уже проблематично, поскольку есть ограничения снизу на открытие p-n переходов. Просто не хватает напряжения для переброса электронов в слоях полупроводнка.

    Так что не 5 вольтами едиными жива электроника. Где-то, например для питания светодиодов, не так важн о напряжение, как ток. Он должен быть в заданных рамках, поскольку превысив возможности рассеивать тепло мы буквально сожжем p-n-переход, поэтому приходится варьировать напряжение так, чтобы ток сохранялся в допустимы пределах.
    В автомобиле стандарт 12 вольт и во многих грузовиках 24. Про розетку я уже говорил и там отдельная тема почему и как устроены электро-сети разных стран. В вашем ноутбуке и смартфоне целый зоопарк напряжений. Раньше даже встречались устройства, где подсветка экрана требовала несколько киловольт.
    Мощность при этом не большая, а изоляция рассчитана на то, чтобы ничего не пробило, но это отдельная цепь внутри устройства и в каждом месте нужно то напряжение, на которое рассчитаны соответствующие участки цепи.
    Ответ написан
    2 комментария
  • Бесплатная электронная почта, не вымагающая (ни сразу, ни потом) номер телефона?

    CityCat4
    @CityCat4 Куратор тега Электронная почта
    //COPY01 EXEC PGM=IEBGENER
    Вряд ли такие еще остались, а если остались - они сомнительной надежности. Все решается просто - через сервис "телефон на пять минут" заказать номер телефона, принять смс ... и все :) Надо было как-то - я так регился им на гмыле и во ВКонтактике и где угодно. Есть сервисы, которые даже локаль на выбор дают - не хочешь/не нужен российский - на тебе казахский/украинский/американский ;)
    Ответ написан
    Комментировать
  • Чем отличаются эти две записи?

    JohnnyGat
    @JohnnyGat
    Стараюсь писать код, понятный человеку.
    Комментировать
  • Как из массива массивов сделать один массив?

    0xD34F
    @0xD34F Куратор тега JavaScript
    const result = arr.flat();
    
    // или
    
    const result = Array.prototype.concat.apply([], arr);
    
    // или
    
    const result = arr.reduce((acc, n) => (acc.push(...n), acc), []);
    
    // или
    
    const result = [];
    
    for (const n of arr) {
      for (const m of n) {
        result[result.length] = m;
      }
    }
    Ответ написан
    1 комментарий
  • Стоит ли грузить голову алгоритмами и структурами данных?

    gbg
    @gbg
    Любые ответы на любые вопросы
    1. Процент людей, которые с удовольствием читают учебники вместо развлекательной литературы очень мал.

    2. До некоторых людей новые знания из учебников не доходят, им нужен другой формат, например, занятия с ментором или самостоятельная практика.

    3. Нужно или не нужно что-то учить? Ответ тут такой - если вы сами в состоянии навелосипедить некоторые фундаментальные алгоритмы - это очень хорошо. НО! Нужно понимать, что создатели этих решений, как правило, создали их, уже имея ученые степени Ph. D в области математики, физики, информатики, биологии и так далее. То есть, не учась фундаментальным вещам, вы не встаете на плечи гигантов, чтобы видеть дальше (нагуглите, кто это сказал), а ползаете у них под ногами.
    Ответ написан
    5 комментариев
  • Как работает докер и нужен ли он для веб-приложений?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    1. Если контейнер содержит в себе веб-сервер, бд, то при написании второго приложения и его запуске в системе будет крутиться два веб-сервера?

    Да. Но ничто не мешает использовать впереди один веб-сервер, и обслуживать им два контейнера с веб-приложениями.
    2. Насколько вообще оправдано использование докера например при написании веб-приложения на python?

    Одно окружение что на сервере, что на рабочей станции разработчика.
    Отличная интеграция в CI/CD на практике.
    Нет необходимости засорять машину разработчика кучей установленных БД разных версий, доп. ПО и прочего.
    Легкость развертывания и прочее.
    Так что достаточно оправданно...
    3. Если хост-система Windows, то для работы с докером нужно запускать виртуальную машину с Linux и на ней разворачивать докер?

    Докер есть и под windows
    Ответ написан
    1 комментарий
  • Как использовать тег picture при создании адаптивных изображений?

    @IvanPsarev
    It-любитель
    Заводим тег picture внутри которого указываем дефолтную картинку:
    <picture>
        <img class="image"
          src="img/mobile.jpg"
          alt="Описание" width="260" height="260">
    <picture>

    В данном коде у нас везде просто загрузится "img/mobile.jpg".
    Как это можно улучшить? Можно использовать прогрессивные файлы изображений такие как webp (почитать про них стоит отдельно, вкратце - они меньше весят при одинаковом качестве картинки).
    Добавляем условие для показа новой картинки:
    <picture>
        <source srcset="img/mobile.webp" 
          type="image/webp">
        <img class="image"
          src="img/mobile.jpg"
          alt="Описание" width="260" height="260">
    <picture>

    Здесь, если браузер поддерживает .webp будет загружена картинка: img/mobile.webp.
    Допустим у нас есть брейкпоинт на десктоп при 768px где нам нужно показывать картинку более высокого качества (либо вообще другую). Код можно улучшить так:
    <picture>
        <source media="(min-width:768px)" 
          srcset="img/desktop.webp"
          type="image/webp">
        <source media="(min-width:768px)"
          srcset="img/picture/desktop.jpg">
        <source srcset="img/mobile.webp" 
          type="image/webp">
        <img class="image"
          src="img/mobile.jpg"
          alt="Описание" width="260" height="260">
    <picture>

    Тут мы добавили еще 2 условия: если окно шире 768px и браузер поддерживает webp - грузится desktop.webp, если не поддерживает то - desktop.jpg.
    Данную конструкцию можно еще расширить. Например мы хотим чтобы на retina-дисплеях картинки показывались в более высоком качестве. Для этого у нас должны быть копии всех наших картинок но с увеличенным в 2 раза разрешением. Например, наши картинки будут именоваться как mobile@1x.jpg (260х260рх). плюс эти же картинки, но в 2 раза большем разрешении: mobile@2x.jpg (520х520рх). Загружать их, или нет будет решать браузер, на основании данных о плотности пикселей на экрана полученных от системы (это тоже отдельная тема для обсуждения, есть статьис названием что-то вроде "Пиксель на самом деле не пиксель". Точного названия не помню, но смысл в том, что на "так называемых" Retina-дисплеях при фактическом разрешении, например, 2500х1600px браузер будет "считать", что окно шириной 1250px). Короче для "ретинизации" код нужно изменить так:
    <picture>
      <source media="(min-width:768px)" 
        srcset="img/desktop@1x.webp, img/webp/desktop@2x.webp 2x"
        type="image/webp">
      <source media="(min-width:768px)"
        srcset="img/picture/desktop@1x.jpg, img/picture/desktop@2x.jpg 2x">
      <source srcset="img/webp/mobile@1x.webp, img/webp/mobile@2x.webp 2x" 
        type="image/webp">
      <img class="image" 
        src="img/mobile@1x.jpg" 
        srcset="img/mobile@2x.jpg 2x"
        alt="Описание" width="260" height="260">
    </picture>

    Вся эта громадина читается сверху:
    - первый <source>: если ширина экрана больше 768рх, браузер поддерживает webp и плотность пикселей 2x грузится desktop@2x.webp, если плотность пикселей 1х - desktop@1x.webp
    - если webp не поддерживается, то второй <source> - все тоже самое для .jpg
    - если экран уже 768px - третий <source>
    - во всех остальных случаях и в случае если браузер не поддерживает загрузится обычный <img>.
    Нужно понимать, что для такого подхода требуется иметь для одной картинки 4 файла и это только для одной ширины экрана:
    mobile@1x.jpg, mobile@2x.jpg, mobile@1x.webp, mobile@2x.webp.
    И еще столько же для desktop.
    Вот как-то так, можно добавить еще брейкпоинт для tablet - все по примеру :)
    Ответ написан
  • Как это называется?

    FFxSquall
    @FFxSquall
    Могу писать код, могу не писать
    TreeView CheckBoxes
    Ответ написан
    1 комментарий
  • Какой самый универсальный инструмент для работы с анимацией и графикой на js?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Вы хотите, чтоб у вас всё было, и вам за это ничё не было.
    Но так не может быть.

    Любой, даже супер навороченный фреймворк, это, как минимум, увеличение размера страницы и потребления памяти. Если у вас простая задача, типа нарисовать 7 красных линий, то это можно сделать на нативном JS, без фреймворков.

    В конце концов, вы сами сказали, что задачи разные. Так что даже если у вас будет этот швейцарский нож, то каждый раз нужно будет изучать его API под новую задачу, как если бы это была отдельная библиотека под эту задачу. Это не имеет смысла.

    А вот когда есть повторные задания, очень похожие на предыдущие, вот тогда уже имеет смысл что-то, что упростит решение типовых задач, автоматизирует его. Но что мешает скопировать свой предыдущий код и чуть модифицировать его?
    Ответ написан
    1 комментарий
  • Python - как открыть любой файл через архиватор?

    @rPman
    Ищите сигнатуру rar, затем читая файл с э того места записывайте его в новый с нужным именем.

    Так как jpeg файл поток байт случайный, существует мизерная вероятность что в нем тоже попадется такая сигнатура, поэтому ищите в файле все нужные сигнатуры и сохраняйте несколько файлов в этом случае, затем проверяйте на целостность и оставляйте тот что не битый.
    Ответ написан
    5 комментариев