Pull to refresh
0
0
Alexey @Weron2

АСУТП

Send message

Как из браузера открыть папку в проводнике Windows

Reading time2 min
Views22K
Представьте, что у вас возникла необходимость прямо с веб-страницы заказа в вашей CRM-системе открывать папку с файлами, которые к этому заказу относятся. Но не просто отображать содержимое папки, а прямо на компьютере открывать проводник с этой папкой.

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

Вы можете резонно предположить, что есть протокол file:// (я позволю себе использовать здесь и далее слово протокол, хотя правильнее, конечно, схема URI), который позволяет браузерам открывать локальные файлы, но с ним также есть две проблемы:

1) он не может отобразить список файлов в папке;
2) такие ссылки нельзя открывать с внешних (не локальных) веб-страниц.

Чтобы решить данную проблему, мы будем использовать свой протокол с собственным обработчиком. Метод будет работать в Windows и потребует некоторых (очень простых) действий на компьютере.
Читать дальше →
Total votes 30: ↑19 and ↓11+14
Comments20

8 бесплатных инструментов искусственного интеллекта, которые пригодятся

Reading time4 min
Views192K

Всем привет! Меня зовут Маруся, я аналитик данных, веду блог в телеграме Аналитика и growth mind-set.

В этой статье собрано 8 бесплатных инструментов на основе искусственного интеллекта, большинство из которых просты в использовании и самое главное бесплатны для тестирования.

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

Читать далее
Total votes 22: ↑17 and ↓5+16
Comments19

Умный дом из пыльного планшета

Reading time11 min
Views51K

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

Читать далее
Total votes 41: ↑41 and ↓0+41
Comments34

«Как не надо проектировать ракеты» или путь разработки ракеты на ЖРД. Часть 1 — как не надо начинать

Reading time7 min
Views13K

Да здравствуй, великий и могучий Хабр! Надеюсь это будет не лонгрид, но даже если так, то думаю читателю, который набрел на эту статью, будет интересно что да как.

Итак, о чем цикл этих статей? Цикл будет повествовать о проблемах проектирования, реализации, расчетов, ракеты-носителя на жидкостном ракетном двигателе. (что такое ЖРД думаю читатель знает, если не знает - гугл в помощь)

Рассказ будет вестись о коллективе RoTech, или кто-то его помнит как “Мечта”. Мы в тг.

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

Именно в этой статье вы узнаете, какие ошибки нами были совершены, и как не надо делать))

В полет!
Total votes 41: ↑38 and ↓3+44
Comments45

Краткий справочник по «всем-всем» командам Linux

Level of difficultyMedium
Reading time80 min
Views174K

Периодически меня на начальном курсе просят дать "список всех-всех команд с кратким описанием что делает"... Ну прям "всех-всех". И ведь если искать в интернете "такие" справочники существуют - либо про "20-30 команд, но самых важных", либо с неточностями и устаревшей информацией. Так что предлагаю вашему вниманию свою версию такого "краткого" справочника (на 300, 515, 612, 716, 842, 1005, 1171 команд) с ссылками на wiki-описание и на cheat.sh-примеры наиболее важных команд.

Справочник по всем-всем командам LINUX
Total votes 105: ↑102 and ↓3+120
Comments114

Рабочий стол Linux в браузере

Reading time5 min
Views17K

Первый в мире браузер (1993 года) выполнял две функции:

  • рендеринг HTML;
  • переход по гиперссылкам (навигация, браузинг — отсюда и название «браузер»).

Всё было предельно просто. Но те времена давно ушли.

Современный браузер эволюционировал в сложнейшую мета-систему, которая по объёму кода превосходит ядра многих ОС. Более того, браузер де-факто может работать как операционная система. И не только в Linux-виртуалке (как ChromeOS), но как реальная платформа для запуска настоящих приложений, в том числе нативных программ на C, C++, Go и Node.js.
Читать дальше →
Total votes 32: ↑29 and ↓3+36
Comments7

Блэкаут в США 2003: как два сервера обвалили энергосистему

Reading time15 min
Views29K
Крупнейший в истории США блэкаут, случившийся в 2003 году, это один из тех случаев, когда едва ли не ведущую роль в развитии аварии сыграли неисправности ПО. Хотя хватает там и того, что все мы любим в любых авариях: халатность, нарушение протоколов или их отсутствие, несогласованность действий и полный шок, когда ситуация выходит окончательно из под контроля. В общем заваривайте чай, у нас очередной технодетектив.


Читать дальше →
Total votes 96: ↑94 and ↓2+114
Comments81

Как мы получали данные от компрессоров

Reading time7 min
Views4.9K

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

Читать далее
Total votes 10: ↑9 and ↓1+14
Comments14

5. Передаточные функции и уравнения динамики замкнутых систем автоматического регулирования (САР)

Reading time7 min
Views32K

Продолжаем публикацию лекций по курсу "Управление в Технических Системах" автор - Олег Степанович Козлов на кафедре Э7 МГТУ им. Н.Э. Баумана.

Данные лекции готовятся к публикации в виде книги, а поскольку здесь есть специалисты по ТАУ, студенты и просто интересующиеся предметом, то любая критика приветствуется. В предыдущих сериях:

1. Введение в теорию автоматического управления.
2. Математическое описание систем автоматического управления 2.1 — 2.32.3 — 2.82.9 — 2.13.
3. ЧАСТОТНЫЕ ХАРАКТЕРИСТИКИ ЗВЕНЬЕВ И СИСТЕМ АВТОМАТИЧЕСКОГО УПРАВЛЕНИЯ РЕГУЛИРОВАНИЯ.
3.1. Амплитудно-фазовая частотная характеристика: годограф, АФЧХ, ЛАХ, ФЧХ3.2. Типовые звенья систем автоматического управления регулирования. Классификация типовых звеньев. Простейшие типовые звенья3.3. Апериодическое звено 1–го порядка инерционное звено. На примере входной камеры ядерного реактора3.4. Апериодическое звено 2-го порядка3.5. Колебательное звено3.6. Инерционно-дифференцирующее звено3.7. Форсирующее звено.  3.8. Инерционно-интегрирующее звено (интегрирующее звено с замедлением)3.9. Изодромное звено (изодром)3.10 Минимально-фазовые и не минимально-фазовые звенья3.11 Математическая модель кинетики нейтронов в «точечном» реакторе «нулевой» мощности. 4 Структурные преобразования систем автоматического регулирования.

Будет как всегда позновательной увлекательно и интересно.

Читать далее
Total votes 10: ↑8 and ↓2+7
Comments2

Как сисадмин Денис составлял шпаргалку на всякий случай

Reading time5 min
Views54K


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

Мужичок представился Денисом. Оказалось, он работает сисадмином в школе и лютый фанат убунты. Но только дома. Потому что в школе вынужден ставить детям «поганую винду», от чего его сильно мучает совесть.

На этом месте стало интересно…
Читать дальше →
Total votes 58: ↑56 and ↓2+77
Comments159

Как я Markdown парсер выбирал

Reading time18 min
Views24K

Недавно я решил создать свой сайт, и мне понадобилось выбрать парсер Markdown для отрисовки статей в блоге.

То, что начиналось как: «Окей, гугл, какой парсер выбрать?», – вылилось в полноценное исследование существующих реализаций парсеров.

О том, какие открытия меня ждали на этом пути, и будет данная статья.

Читать далее
Total votes 54: ↑54 and ↓0+54
Comments29

18 отборных однострочных команд Linux

Reading time4 min
Views38K

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

Приступим!
Читать дальше →
Total votes 62: ↑42 and ↓20+37
Comments55

Запускаем DOS игру в браузере

Reading time4 min
Views11K

В 2022 году мало кого можно удивить DOS игрой в браузере. Благодаря dosbox они доступны на многих платформах. А поддержка браузера появилась с развитием компилятора emscripten. js-dos один из самых заметных проектов портирования dosbox в браузер. Последняя версия js-dos уже имеет достаточную производительность для комфортной игры в такие игры как Duke, Doom, C&C, Red Alert, WarCraft и многие другие.

Читать далее
Total votes 19: ↑19 and ↓0+19
Comments6

Зубной камень айтишника

Reading time12 min
Views36K
С тех пор как врачи наших клиник начали публиковаться на Хабре, мы узнали много новых слов и успели разгадать главную загадку «злобных» пациентов-айтишников, невероятно расстраивающую врачей. Ну и узнать чуть больше про характерные «зубы айтишника», про которые так красочно рассказывал мой коллега больше года назад.

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



Зубной налёт по консистенции похож на крем. Одна из его составляющих — погибшие бактериальные клетки. В ротовой полости живёт достаточно флоры. Можно сказать, это наши симбионты, в частности, защищающие нас от чего-то гораздо более опасного. Когда экзогенная бактерия попадает к нам в рот, ещё до того, как она соприкоснётся с первыми компонентами иммунитета слизистой и познакомится поближе с лимфоцитами пониже, её встретят бактерии, которые считают нас своим домом. И в жёсткой конкурентной борьбе попытаются её победить.

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

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

Давайте разбираться, что происходит дальше. Почему основное количество камня на нижних шести зубах?
Читать дальше →
Total votes 83: ↑70 and ↓13+77
Comments77

Как укрепить Windows Defender по максимуму

Reading time3 min
Views29K


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

Но есть и хорошая новость. В состав ОС Windows входит стандартный антивирус Windows Defender. Это простая и добротная программа. Но для максимальной эффективности желательно её укрепить специальными настройками, которые по умолчанию отключены.
Читать дальше →
Total votes 22: ↑17 and ↓5+17
Comments21

Подключаем к Экселю GPU и ускоряем Эксель в 300 раз

Reading time3 min
Views32K

Попалась мне задачка оптимизации, а так как я большой фанат Экселя, то и выбор инструмента был скорым. Единственная пакость: Эксель дико медленный. Так, на одну итерацию уходило как минимум 35 минут, а таких итераций планировалось сделать 1275 (как минимум)!

Цель этого небольшого проектика – ускорить исполнение VBA скриптов задействуя все доступные мне железяки: GPU и CPU. Ну и до кучи, так как библиотека моя, была реализована многозадачность.

О, да, я хочу на это посмотреть!
Total votes 35: ↑34 and ↓1+42
Comments26

Пишем тетрис в bat-файле

Reading time5 min
Views24K

В комментарии к моей предыдущей статье, «Какие задачи не решаются bat-файлами?», предположили, что на bat-файлах не получится написать Doom. Насчет Дума я пока не уверен, а вот тетрис у меня получился.

Играть в тетрис бесплатно
Total votes 94: ↑94 and ↓0+94
Comments41

Код доступа Termux

Reading time62 min
Views163K

Лонгрид посвящается любителям CLI в знак солидарности лучшего эмулятора терминала на OS Android, который испытывает «кошмарную» монополию Google.

В данной работе вербализация пойдет о нижеизложенном со всеми остановками:

[+] глубоко настраивать средý (флэшка, виджет, стиль, зеркала и конфиги);
[+] управлять серверами через ssh;
[+] скачивать ролики/отрывки с YouTube;
[+] нарезать видео, создавать gif;
[+] воспроизводить текст/музыку/радио прямо в CLI;
[+] нарезать mp3-бигфайлы (аналогов приложений на Android попросту нет), и склеивать аудиофайлы;
[+] редактировать документы;
[+] проверять орфографию: как текстовых файлов, так и различных статей по url, например, проверка орфографии статей на Habr-e;
[+] генерировать словари различной сложности со скоростью Си;
[+] создавать блок-схемы; графики; облако слов и даже 3D-визуализацию;
[+] заниматься Data Science на Android-мощностях;
[+] тестировать интернет соединение/интерфейс (требуется частично Root);
[+] сниффить/сканировать сети (требуется частично Root);
[+] запускать и управлять TOR-сетью (deleted);
[+] управлять приложениями и процессами в ОС Android (требуется Root);
[+] анализировать память;
[+] защищать любые данные от случайного редактирования/уничтожения (требуется Root);
[+] автоматически шифровать и бэкапить по ночам любые данные в своё облако;
[+] чекать username(s) и e-mail(s);
[+] проводить аудит безопасности (об опасности сердить скрипт-кидди с их любимыми: «сниффить, парсить, брутить, дампить, сканить, фишить»);
[+] работать с электропочтой;
[+] изучать UNIX/shell;
[+] программировать на Android (на выбор пользователя. В Termux портированы несколько интерпретируемых и компилируемых языков программирования);
[+] запускать python/php/npm скрипты в т.ч. в одно касание с рабочего стола;
[+] работать с криптографией, стеганографией и цифровыми подписями;
[+] парсить данные;
[*] и даже запускать GNU-GUI-софт из CLI.

Погрузиться в GNU культуру
Total votes 28: ↑27 and ↓1+28
Comments46

Базовые подходы к парсингу

Reading time4 min
Views32K

Вступление

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

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

Хочу подметить, что хоть в моих жилах течет дотнет, в этом примере я буду использовать Node JS, потому что так быстрее, и удобнее в плане парсинга. Чем именно удобней - я расскажу позже в статье.

Можем ли мы спарсить?

Да, к сожалению (или счастью) веб - он не однообразен, и каждый ресурс может быть уникален по своему, но в нашем деле, ключевым моментом будет то, есть ли на этом ресурсе Server-Side Rendering (SSR), или там Client-Side Rendering и важная для нас информация подтягивается позже с помощью JS.

К примеру, нативные апки на React или тот же Angular by default есть CSR. И что бы прикрутить там SSR нужно порой очень сильно попотеть.Тем не менее, большинство сайтов с топ серч результатов любой поисковой системы будут поддерживать именно SSR, потому что таков мир SEO-оптимизаций.

Читать далее
Total votes 23: ↑14 and ↓9+8
Comments32

Information

Rating
Does not participate
Registered
Activity