Pull to refresh
66
0
Сания Галимова @owlnagi

Пользователь

Send message

Три малоизвестных факта об AVIF

Reading time5 min
Views25K
AVIF — графический формат, основанный на видеокодеке AV1, представляет собой один из самых современных форматов хранения изображений. Судя по ранним публикациям и исследованиям, AVIF показывает достойные результаты в сравнении с JPEG и WebP. Но, даже учитывая то, что этот формат хорошо поддерживается браузерами, AVIF, в плане кодирования и декодирования изображений, всё ещё представляет собой ультрасовременную технологию, которой свойственны определённые проблемы.



Несомненно то, что использование AVIF позволяет эффективно сжимать изображения, что помогает сокращать объёмы данных, передаваемые от серверов к клиентским системам. AVIF-изображения, при этом, хорошо выглядят. Но, прежде чем принимать решение о полном переходе на AVIF, стоит знать о некоторых особенностях этого формата, которым и посвящён этот материал.
Читать дальше →
Total votes 20: ↑19 and ↓1+31
Comments21

Инструменты и методы работы, повышающие продуктивность программистов

Reading time8 min
Views11K
В этом материале рассматриваются 5 эффективных инструментов, которые позволяют ускорить разработку программного обеспечения, не ухудшая качество готового продукта. Эти инструменты применимы в самых разных масштабах — от уровня отдельных программистов, до уровня компаний из сферы информационных технологий.

Каждому программисту хочется работать продуктивнее и при этом не «выгореть». Как, работая столько же, сколько обычно, успеть сделать больше? Как тому, кто трудится в команде, помочь сослуживцам работать эффективнее, но при этом не становиться кем-то вроде надсмотрщика? Найти ответы на эти вопросы можно, пользуясь правильными инструментами.



В частности, в этом материале мы поговорим о 5 группах таких инструментов. Это — дизайн-системы, линтеры, средства для автоматического форматирования кода, CI/CD-системы и IaaS/PaaS-провайдеры. Всё это позволяет программистам автоматизировать рутинные процессы, а значит, освободить время, необходимое для решения самых важных задач, связанных с разработкой собственных продуктов.
Читать дальше →
Total votes 20: ↑16 and ↓4+18
Comments3

Эмуляция компьютера: интерпретатор CHIP-8

Reading time9 min
Views6.5K


Меня, по ряду причин, всегда завораживала эмуляция. Программа, которая выполняет другую программу… Мне эта идея кажется невероятно привлекательной. И у меня такое ощущение, что тот, кто напишет подобную программу, не пожалеет ни об одной минуте потраченного на это времени. Кроме того, написание эмулятора — это очень похоже на создание настоящего компьютера программными средствами. Мне было очень интересно разбираться в устройстве компьютерной архитектуры, писать простой HDL-код, но эмуляция — это гораздо более простой способ ощутить себя тем, кто своими руками создаёт компьютер. А ещё, в детстве, когда я впервые увидел игру Super Mario World, я поставил себе цель, которая до сих пор не потеряла для меня ценности. Она заключается в том, чтобы полностью понять то, как именно работает эта игра. Именно поэтому я уже некоторое время подумываю о написании эмулятора SNES/SNC. Недавно я решил, что пришло время сделать первый шаг к этой цели.

Предлагаю поговорить о разработке эмулятора и обсудить простой, но полноценный пример эмуляции CHIP-8.
Читать дальше →
Total votes 39: ↑39 and ↓0+39
Comments1

Бытовая форензика: можно ли найти утечку с помощью бубна, удобрений и палок?

Reading time7 min
Views8.3K


Порой айтишникам приходится решать не совсем обычные задачи. На днях знакомый админ поведал мне о том, что на фоне обычной офисной рутины руководство поручило ему на время превратиться в Шерлока Холмса, в связи с чем он срочно ищет себе в помощники доктора Ватсона. На волне коронавирусной пандемии и локдауна компания провела ряд вынужденных сокращений, и кому-то из уволенных сотрудников это явно не понравилось. Неизвестные слили в паблик данные, которые никак не должны были туда попасть. Руководство поставило задачу выяснить, кто из «бывших» совершил такую пакость и подлость. Каким образом? Придумай сам, тыжпрограммист. Профессиональным исследователем киберинцидентов, понятное дело, никто из участников процесса не являлся даже близко.
Читать дальше →
Total votes 29: ↑27 and ↓2+43
Comments27

Установка Visual Studio Code в облаке

Reading time7 min
Views19K

Облачные сервисы давно и плотно вошли в нашу жизнь, сейчас уже немыслимо представить себе без них современное существование в цифровом пространстве, они существенно упрощают жизнь и снижают порог входа в IT для небольших компаний, освобождая их от необходимости закупать и настраивать свою собственную инфраструктуру. К облакам подключены смартфоны и компьютеры, в них переносится все больше данных и сервисов.

Интегрированные среды разработки тоже не избежали переноса в облака. Около десяти лет назад это было диковинкой, Cloud IDE только начинали развиваться, но потом на них обратили внимание самые крупные игроки IT-индустрии. 
Читать дальше →
Total votes 22: ↑21 and ↓1+31
Comments25

JavaScript исполнилось 25 лет

Reading time9 min
Views4.8K
4 декабря 2020 года JavaScript исполнилось 25 лет. Автор материала, перевод которого мы сегодня публикуем, Даниэль Адамс, говорит, что этот язык повлиял на её карьеру, а так же — на профессиональную деятельность многих программистов. JavaScript повлиял и на то, как обычные люди со всего мира пользуются веб-сайтами. Даниэль предлагает отпраздновать 25-летие JavaScript, вспомнив о 25 заметных событиях, которые сделали экосистему, сложившуюся вокруг этого языка, такой, какой она стала в наши дни.


Читать дальше →
Total votes 33: ↑33 and ↓0+33
Comments2

Анонс: как российская компания создает кибер-протезы рук для детей

Reading time2 min
Views3.5K



Завтра, в 20:00 в наших соцсетях выступит Данил Емелин, инженер-протезист в компании Моторика. Они занимаются созданием протезов верхних конечностей, 80% их пациентов — дети.

Ребята делают два вида протезов:

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

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

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

Протезы полностью оплачивает государство


Протезы довольно дорогие — обычный протез кисти (механика без компьютеризации) стоит 150-200 тысяч рублей. Компьютеризированный протез — 2-2,5 миллиона рублей. Но самое замечательное то, что пациенты получают его бесплатно по ОМС — ребята из Моторика добились того, чтобы протезы выдавались за счет государственной компенсации.
Total votes 24: ↑22 and ↓2+31
Comments6

Сито для интернета: интересные вещи с Shodan

Reading time5 min
Views29K


Интернет ошибочно отождествляют исключительно с вебом, но всемирная паутина доступная через браузер — это всего лишь вершина айсберга глобальной сети. Ее подводная часть куда разнообразнее, и хоть она скрыта от глаз рядовых пользователей, ничто не мешает изучать ее специализированными средствами. Одним из таких сервисов, сделанных “под ключ” и устроенных по типу швейцарского ножа, можно назвать Shodan.

Если гугл индексирует новостные сайты и энциклопедии, специально выставленные на всеобщее обозрение, то Shodan — это поисковая система, которая целенаправленно индексирует все подключенные к интернету вычислительные устройства (веб-камеры, маршрутизаторы, серверы и новомодные IoT-девайсы) и позволяет находить их с помощью различных поисковых запросов и фильтров.


Читать дальше →
Total votes 33: ↑32 and ↓1+52
Comments0

Коды ошибок — это гораздо медленнее, чем исключения

Reading time12 min
Views21K
На современных 64-битных PC-архитектурах использование C++-исключений означает всего лишь добавление к функциям недостижимого кода с вызовами деструктора и ухудшение производительность менее чем на 1%. Такие небольшие ухудшения производительности сложно даже измерить. Обработка редких ошибок с использованием возвращаемых значений требует дополнительных операций ветвления, которые, в реалистичных сценариях, замедляют программы примерно на 5%. Такой подход, кроме того, менее удобен, чем использование исключений. Если выбрасывается исключение, то на «раскрутку» каждого кадра стека тратится примерно 2 мкс.



C считается самым быстрым языком программирования. В C++ есть возможности, которые лишь повышают удобство работы, не влияя на производительность, в сравнении с C, и возможности, которые на производительность влияют. Эти возможности очень помогают в деле улучшения качества кода. В результате ими, несмотря ни на что, достаточно часто пользуются. Полиморфизм времени выполнения — это буквально вездесущая возможность, а вот исключения распространены меньше.
Читать дальше →
Total votes 53: ↑40 and ↓13+47
Comments54

Кунг-фу стиля Linux: организация работы программ после выхода из системы

Reading time9 min
Views16K
Если вы пользуетесь Linux с ранних дней появления этой ОС (или если, вроде меня, начинали с Unix), то вам не надо очень быстро и в больших количествах изучать то новое, что появляется в системе по мере её развития и усложнения. Вы можете разбираться с новым постепенно, в режиме обычной работы. Но если вы только начинаете знакомство с Linux, то вам будет непросто сразу в ней разобраться, сразу понять её особенности. Среди тех, кому приходится изучать Linux с нуля, те, кто пользуется Raspberry Pi, те, кого расстроило то, что Microsoft забросила Windows XP, те, кто развернул облачную среду для своего IoT-проекта, похожего на Skynet.

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


Читать дальше →
Total votes 34: ↑34 and ↓0+34
Comments14

Проект Open Book и сборка E-Book FeatherWing

Reading time10 min
Views7.1K
Нас окружают переносные устройства. Часто мы воспринимаем их как нечто, созданное из стекла и кремния, появившееся в нашей жизни уже полностью готовым к использованию. И обычно даже речи не идёт о том, чтобы как следует понять, как, например, работает что-то вроде Kindle. Не говоря уже о том, чтобы самому создать подобное устройство. Цель проекта Open Book заключается в том, чтобы любой, пользуясь обычными инструментами, которые несложно найти, мог бы самостоятельно создать простое, доступное устройство для чтения электронных книг на любом из существующих языков.

E-Book FeatherWing (далее — просто «FeatherWing») — это самая простая версия электронной книги, созданная в рамках проекта. С функциональной точки зрения это — плата расширения, которая стыкуется с платформой Adafruit Feather M4 Express, дающей устройству микроконтроллер и систему для зарядки аккумуляторов. Почти все компоненты поверхностного монтажа FeatherWing достаточно велики, их несложно припаять к плате вручную. Благодаря этому FeatherWing можно рассматривать как отличный проект для тех, кто хочет научиться выполнять поверхностный монтаж электронных компонентов с использованием пайки.


Электронная книга, созданная в рамках проекта Open Book
Читать дальше →
Total votes 26: ↑24 and ↓2+39
Comments18

Импорт react с древнейших времен до наших дней

Reading time6 min
Views15K


Прежде чем мы начнём разговор о способах импорта в веб-проекты библиотеки React, покажу современные способы выполнения этой операции и использования хука useState:

// Глобальный подход
window.React.useState()
// Использование импорта в стиле CommonJS
const React = require('react')
React.useState()
// ES-модули, импорт значения, экспортируемого по умолчанию
import React from 'react'
React.useState()
// ES-модули, именованный импорт
import {useState} from 'react'
useState()
// ES-модули, импорт пространства имён
import * as React from 'react'
React.useState()

Ниже я расскажу об истоках каждого из этих механизмов, и о том, почему я предпочитаю использовать последний из них.
Читать дальше →
Total votes 20: ↑19 and ↓1+26
Comments4

Новая игра: сможете понять, что девушка врет? А если она на детекторе лжи?

Reading time12 min
Views32K


Сегодня мы подключили датчики полиграфа к шести девушкам, обучающимся в театральном вузе. Их задача — говорить неправду в некоторых ситуациях. Ваша задача — задавать вопросы и смотреть на телеметрию датчиков. А потом принимать решение, врёт испытуемая или нет.

Вы будете видеть саму девушку в режиме реального времени и все ее показатели: дыхание, сердцебиение, проводимость кожи, давление и потоотделение.



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

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

Начнём с того, что ваш основной датчик — КГР, кожно-гальваническая реакция. Без всего остального можно обойтись, но именно КГР будет давать вам больше всего информации. Измерение сопротивления кожи регистрируется очень быстро, и стрессовая либо гиперстрессовая реакция на КГР видна ещё при задавании вопроса. Остальные датчики нужны в первую очередь для контроля, что испытуемый не пробует обмануть полиграф.
Читать дальше →
Total votes 64: ↑60 and ↓4+82
Comments115

Кунг-фу стиля Linux: наблюдение за файлами

Reading time7 min
Views23K
Linux или Unix приятно отличаются от многих других операционных систем тем, что Linux-программы часто выдают сообщения, которые записываются в какой-нибудь журнал. А многие команды даже можно настроить так, чтобы они генерировали бы больше сообщений, чем обычно. Я знаю о том, что в Windows есть средство для просмотра событий, но множество программ не особенно охотно делятся сведениями о своей работе. Это усложняет поиск источников проблем в тех случаях, когда что-то идёт не так, как ожидалось.



В случае с Linux проблема заключается в том, что иногда программы сообщают нам слишком много сведений о своей работе. Как найти в этом море информации именно то, что нужно? Когда киношный хакер сидит перед терминалом и смотрит на текст, прокручивающийся со скоростью 500 строк в секунду, выглядит это впечатляюще. Но в реальной жизни почти бесполезно изучать логи, выводимые на экран с такой скоростью. Хотя, если попрактиковаться, из этого потока информации можно иногда, рискуя ошибиться, выхватить какое-нибудь ключевое слово. Но задачу анализа логов в реальном времени это не решает.
Читать дальше →
Total votes 23: ↑21 and ↓2+27
Comments7

Три задачи из геномики, которые решают биоинформатики в СПбГУ

Reading time18 min
Views5.7K

Недавно на нашем ютуб-канале выступила Ольга Кунявская, младший научный сотрудник лаборатории «Центр биоинформатики и алгоритмической биотехнологии» СПбГУ.
Оля в науке уже 4 года и сейчас учится на втором курсе магистратуры НИУ ВШЭ — Санкт-Петербург по направлению Software Engineering. Закончила Академический университет по направлению биоинформатика.

Делимся записью эфира и расшифровкой.
Total votes 27: ↑27 and ↓0+27
Comments7

Профессия системный аналитик: развитие сообществ, популяризация профессии и подготовка

Reading time23 min
Views25K

Недавно на нашем ютуб-канале выступил Алексей Лобзов — главный системный аналитик Альфа-Банка, техлид аналитиков корпоративного направления. Алексей занимается подбором, онбордингом и развитием системных аналитиков. Так же, он известен на Хабре как alobzov, регулярно выступает с докладами, обучает системных аналитиков онлайн.

Делимся записью эфира и расшифровкой.



Меня зовут Алексей Лобзов, я являюсь главным системным аналитиком в компании Альфа-Банк. Я одновременно выполняю роль технического лидера аналитиков корпоративного направления нашего банка.

Я хочу рассказать о профессии системного аналитика и рассмотреть три вопроса: сообщество аналитиков, популяризацию профессии и подготовку аналитиков, в первую очередь – без опыта работы, то есть, аналитиков начального уровня.

Есть ли какое-то официальное определение системного аналитика и его области ответственности?


Это роль на проекте, в продукте или компании, или профессия/должность?
Системный аналитик – это профессия. На сайте Минтруда есть раздел «Справочник профессий», где можно найти профессию системного аналитика и прочитать, в чем состоит ее описание. Также с этой страницы можно перейти на профессиональный стандарт и узнать, какие функции ожидаются от человека этой профессии.

Хотя, на практике могут быть отклонения. Так или иначе, если вы устраиваетесь на работу на должность системного аналитика, то у вас будет должностная инструкция с обязанностями, которые работодатель ожидает от вас. Отклонения от стандарта, скорее всего, не будут существенными.
Total votes 19: ↑18 and ↓1+28
Comments5

Топ-10 инструментов IoT-разработки в 2020

Reading time6 min
Views12K


Интернет вещей (IoT) оказывает многостороннее влияние на нашу жизнь, начиная с ТВ, которое вы можете контролировать со смартфона и заканчивая умными часами, которые отслеживают выполняемые вами ежедневно упражнения. Это обширная сеть, которая связана со множеством различных гаджетов, имеющих встроенные датчики. IoT обеспечивает платформу для получения с этих устройств информации, а также общий язык для их взаимодействия. Эта технология позволяет эффективнее реализовывать проекты, а также помогает сэкономить деньги. Результаты обширного исследования показали, что на 2015 год число подключенных к этой сети устройств составляло 15,41 миллиарда, в 2020 году это число возросло до 26,66, а к 2025 ожидается превышение показателя аж в 75 миллиардов. Ну а поскольку область разработки IoT-инструментов растет, в ней появляется все больше различных приложений и решений.

Проекты для интернета вещей реализуются во многих сферах, включая здравоохранение, промышленность и бизнес. Существует бесчисленное количество решений для разработки в области IoT, поэтому нередко озадачивает выбор наиболее подходящего инструмента. Вас ждет краткий обзор 10 наиболее актуальных из них на случай, если вы соберетесь нанять IoT-разработчиков для построения IoT платформы или просто интересуетесь этим вопросом в иных целях.
Читать дальше →
Total votes 21: ↑13 and ↓8+17
Comments4

Чистый CSS: 4 метода анимирования цвета ссылок

Reading time6 min
Views32K
Автор статьи, перевод которой мы сегодня публикуем, предлагает, пользуясь чистым CSS, создать механизм изменения цвета текста ссылки при наведении на неё мыши. Но это должна быть не обычная смена цвета. Новый цвет должен заполнять ссылку слева направо, заменяя старый.


Для того чтобы это сделать, можно прибегнуть к одному из четырёх методов, описанных в этом материале. Рассмотрим эти методы, обращая особое внимание на разные важные вещи вроде доступности контента, производительности решения и браузерной поддержки.
Total votes 31: ↑31 and ↓0+31
Comments3

IT-девушки, откуда вы? Давайте построим карту

Reading time2 min
Views16K
RUVDS поздравляет всех айтишниц с 8 марта!

В этом году мы решили не дарить тюльпаны и не делать подборку гик-подарков. Мы пошли другим путем и создали страничку IT is female, чтобы показать присутствие женщин-специалисток в IT.

Любая девушка, работающая в IT, может залогиниться на ней через социальную сеть, написать свою должность и название компании и появиться на странице.

На сайте есть специальный счётчик и тепловая карта — на ней можно будет отследить офисы, в которых специалисток больше.


Посмотреть всю ленту можно на сайте 8march.ruvds.com
Читать дальше →
Total votes 48: ↑31 and ↓17+36
Comments51

Что такое Windows PowerShell и с чем его едят? Часть 2: введение в язык программирования

Reading time11 min
Views72K
Исторически утилиты командной строки в Unix-системах развиты лучше чем в Windows, однако с появлением нового решения ситуация изменилась.

Читать дальше →
Total votes 31: ↑30 and ↓1+46
Comments21

Information

Rating
Does not participate
Registered
Activity