Pull to refresh
0
Alexander Stellove @AlLSTLread⁠-⁠only

Software Engineer

Send message

Какие инструменты помогут соответствовать GDPR

Reading time3 min
Views4.7K
Подборка утилит, литературы и фреймворков, которые помогут разобраться в требованиях регламента и подскажут, как им соответствовать. Под катом — бесплатные продукты от стартапа Algolia, сервисы которого использует Twitch, а также несколько открытых и проприетарных решений.

Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments3

История системы доменных имен: «войны» протоколов

Reading time3 min
Views8K
Продолжаем говорить об истории DNS. Обсуждаем точку зрения экспертов и компаний, выступающих за и против внедрения протоколов DNS over HTTPS и DNS over TLS, а также спецификации EDNS.

Читать дальше →
Total votes 16: ↑13 and ↓3+10
Comments0

Разработка сервисов и IaaS: подборка материалов об облаке, хранении данных и эволюции «1cloud»

Reading time4 min
Views2.4K
Разбираемся с законом о ПД, рассказываем, как эволюционировала инфраструктура 1cloud.ru, обсуждаем изменения в политиках ИТ-компаний и развитие облачных экосистем.

Читать дальше →
Total votes 13: ↑11 and ↓2+9
Comments0

Почитать на выходных: подборка материалов об истории DNS, регулировании ИТ и железе 1cloud.ru

Reading time3 min
Views4.5K
Рассказываем, как развивалась система доменных имен — от эпохи ARPANET до разногласий, касающихся протоколов DoH/DoT — а также обсуждаем инфраструктуру IaaS-провайдера.

Total votes 13: ↑13 and ↓0+13
Comments0

Еще один шаг к оптическим компьютерам

Reading time3 min
Views5.5K
Мы уже рассказывали об инженерах из Бристоля, которым удалось телепортировать фотон с одного чипа на другой. Сегодня продолжаем тему — поговорим о технологии, которая позволит строить оптические каналы передачи данных на кремниевых чипах и продлит действие закона Мура.

Что еще у нас есть на Хабре: новая лицензия для приложений в Open Source Initiative.

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

Какие есть открытые ОС для сетевого оборудования

Reading time3 min
Views9.3K
На днях мы обсудили, как госучреждения в Европе переходят на открытое ПО. Теперь расскажем, кто делает что-то подобное на уровне ИТ-инфраструктуры — на примере пары открытых ОС.

Читать дальше →
Total votes 10: ↑7 and ↓3+4
Comments9

Книга «Паттерны проектирования для C# и платформы .NET Core»

Reading time11 min
Views17K
image Привет, Хаброжители! Паттерны проектирования — удобный прием программирования для решения рутинных задач разработки ПО. Грамотное использование паттернов позволяет добиться соответствия любым требованиям и снизить расходы. В этой книге описаны эффективные способы применения паттернов проектирования с учётом специфики языка C# и платформы .NET Core.

Кроме знакомых паттернов проектирования из книги «Банды четырех» вы изучите основы объектно-ориентированного программирования и принципов SOLID. Затем узнаете о функциональных, реактивных и конкурентных паттернах, с помощью которых будете работать с потоками и корутинами. Заключительная часть содержит паттерны для работы с микросервисными, бессерверными и облачно-ориентированными приложениями. Вы также узнаете, как сделать выбор архитектуры, например микросервисной или MVC.
Читать дальше →
Total votes 5: ↑5 and ↓0+5
Comments5

.NET Core на Linux, DevOps на коне

Reading time14 min
Views26K
Мы развивали DevOps как могли. Нас было 8 человек, и Вася был самым крутым по Windows. Внезапно Вася ушел, а у меня появилась задача вывести новый проект, который поставляет Windows-разработка. Когда я высыпал на стол весь стек Windows-разработки, то понял, что ситуация — боль…

Так начинается история Александра Синчинова на DevOpsConf. Когда из компании ушел ведущий специалист по Windows, Александр задался вопросом, что теперь делать. Переходить на Linux, конечно же! Александр расскажет, как ему удалось создать прецедент и перевести часть Windows разработки на Linux на примере реализованного проекта на 100 000 конечных пользователей.



Как легко и непринужденно доставлять проект в RPM, используя TFS, Puppet, Linux .NET core? Как поддерживать версионирование БД проекта, если разработка впервые слышит слова Postgres и Flyway, а дедлайн послезавтра? Как интегрировать с Docker? Как мотивировать .NET-разработчиков отказаться от Windows и смузи в пользу Puppet и Linux? Как решать идеологические конфликты, если обслуживать Windows в продакшн нет ни сил, ни желания, ни ресурсов? Об этом, а также о Web Deploy, тестировании, CI, о практиках использования TFS в существующих проектах, и, конечно, о сломанных костылях и работающих решениях, в расшифровке доклада Александра.
Total votes 51: ↑45 and ↓6+39
Comments26

Загрузка ОС на ARM

Reading time11 min
Views68K
Недавно попросили в двух словах рассказать серьезным людям о загрузке операционной системы на ARM и дать оценку угроз безопасности этого процесса. Вообще ARM-процессоров и вообще ОС. Вы понимаете, все ведь слышали про эти ARM, и что такое ОС тоже все знают. Желательно, на уровне квадратиков со стрелками.

Загрузка ARM в четырех прямоугольниках — под катом.
Читать дальше →
Total votes 42: ↑38 and ↓4+34
Comments52

Поднимаем SOC: ARM + FPGA

Reading time14 min
Views107K


На днях ко мне в руки попала EBV SoCrates Evaluation Board. В двух словах — это плата с SoC от фирмы Altera, на борту которой есть двухъядерный ARM и FPGA Cyclone V.

ARM и FPGA на одном чипе — это должно быть очень интересно! Но для начала всё это добро нужно «поднять».
Об этом процессе я и поведаю в данной статье.

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

А в качестве маленького бонуса измерим пропускную способность между CPU и FPGA.
Добро пожаловать
Total votes 58: ↑57 and ↓1+56
Comments29

Шлюзы промышленных протоколов обмена на Linux. Собери сам

Reading time4 min
Views18K
Я занимаюсь разработкой, внедрением и эксплуатацией систем автоматического управления технологическими процессами (АСУ ТП). Поначалу работал со SCADA-системами. Потом довольно быстро переключился на работу с протоколами обмена промышленных устройств. Как самостоятельное написание драйверов, так и настройка систем сбора данных. В настоящий момент моя работа проходит атмосфере Modbus-ов, МЭКов-101/104-х, ОРС и прочих протоколов.

image
Рис. 1. Многообразие протоколов обмена, используемых в АСУ ТП
Читать дальше →
Total votes 14: ↑14 and ↓0+14
Comments73

Пишем собственную виртуальную машину

Reading time24 min
Views54K
В этом руководстве я расскажу, как написать собственную виртуальную машину (VM), способную запускать программы на ассемблере, такие как 2048 (моего друга) или Roguelike (моя). Если вы умеете программировать, но хотите лучше понять, что происходит внутри компьютера и как работают языки программирования, то этот проект для вас. Написание собственной виртуальной машины может показаться немного страшным, но я обещаю, что тема удивительно простая и поучительная.

Окончательный код составляет около 250 строк на C. Достаточно знать лишь основы C или C++, такие как двоичная арифметика. Для сборки и запуска подходит любая Unix-система (включая macOS). Несколько API Unix используются для настройки ввода и отображения консоли, но они не являются существенными для основного кода. (Реализация поддержки Windows приветствуется).

Примечание: эта VM — грамотная программа. То есть вы прямо сейчас уже читаете её исходный код! Каждый фрагмент кода будет показан и подробно объяснён, так что можете быть уверены: ничего не упущено. Окончательный код создан сплетением блоков кода. Репозиторий проекта тут.
Читать дальше →
Total votes 50: ↑50 and ↓0+50
Comments28

Какие решения есть у Ростелекома для IIoT

Reading time8 min
Views8.2K
Привет!

Недавно мы вместе с Geekbrains провели хакатон, посвященный индустриальному интернету вещей IIoT и теперь начинаем выкладывать серию интервью с нашими экспертами. Первое из них — беседа с Николаем Шевалье, главным архитектором проектного офиса «Индустриальный интернет вещей» Ростелекома.



Николай расскажет, что же такое индустриальный интернет вещей и чем он отличается от привычного IoT, а также про решения, которые уже есть у Ростелекома.

Под катом — о роли IIoT в автоматизации систем ЖКХ, сельского хозяйства, умных офисов и многое другое.
Читать дальше →
Total votes 18: ↑16 and ↓2+14
Comments15

15 когнитивных искажений

Reading time9 min
Views179K
Люди сталкиваются с большим объёмом информации, часть из которой достоверна, а часть освещает интересующую область односторонне, а иногда и сознательно искажённо.

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



Начнём с того, что люди не всегда мыслят рационально. Это данность, которая обусловлена принципами работы нашего интеллекта, выработанными в процессе эволюции. Условно, представим разум, разделённый на две Системы. Устройство разума не так однозначно, но описанное упрощение позволит понять причины искажений. Первая система генерирует решения и гипотезы быстро «если коснёмся горячего предмета, то отдёрнем руку». Вторая, принимает решения путём логических рассуждений. Первая Система генерирует гипотезы, а вторая принимает их или отвергает. Такой способ мышления медленный и энергозатратный. Логическое рассуждение используется людьми реже и требует больших усилий. Это причина большинства когнитивных искажений.

Так, галочка «по умолчанию согласен» позволила увеличить количество согласных на донорство до 86% в Швеции, тогда как в Дании, где при получении прав нужно самостоятельно ставить согласие, т. е. принимать осознанный выбор, количество согласных на донорство 4%.
Читать дальше →
Total votes 63: ↑62 and ↓1+61
Comments114

Как я проработала 3 месяца в Я.Маркете и уволилась

Reading time6 min
Views301K

Первая попытка


Все началось с того, что я люблю ходить по конференциям и частенько хожу на них в Яндекс, Mail.ru и другие крупные компании. Однажды мне написал HR из Яндекса и попросила сделать тестовое на стажера фронтенд-разработчика.

Я его сделала, вот оно. По условию оно должно было работать на айфонах и андроидах, поэтому я проверила его в Browser Stack и дописала пару префиксов и css-стилей.

Через какое-то время поняла, что не хочу быть стажером, имея несколько лет опыта за плечами и зааплаилась в Я.Маркет через форму на их сайте.

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

На интервью я не смогла решить алгоритмические задачки, не знала внутренности JS и меня сбрили.

Это задело мою самооценку и весь следующий год параллельно с работой я учила JS на глубоком уровне и решала задачки на codewars. Здесь можно оценить мой прогресс.
Читать дальше →
Total votes 811: ↑715 and ↓96+619
Comments1016

DevBoy — как я создал проект устройства с открытым исходным кодом и запустил проект на Kickstarter

Reading time3 min
Views45K
Привет, друзья!

Меня зовут Николай, читателем Хабра являюсь давно, а вот с написанием статей как-то не сложилось. Пора исправлять эту ситуацию, тем более что как раз имеется повод — только что я запустил компанию на Kickstarter для реализации устройства с открытым исходным кодом.



Кому интересно — прошу под кат.
Читать дальше →
Total votes 148: ↑143 and ↓5+138
Comments101

Парсинг JSON — это минное поле

Reading time25 min
Views155K
image

JSON — это стандарт де-факто, когда заходит речь о (де)сериализации, обмене данными в сети и мобильной разработке. Но насколько хорошо вы знакомы с JSON? Все мы читаем спецификации и пишем тесты, испытываем популярные JSON-библиотеки для своих нужд. Я покажу вам, что JSON — это идеализированный формат, а не идеальный, каким его многие считают. Я не нашёл и двух библиотек, ведущих себя одинаково. Более того, я обнаружил, что крайние случаи и зловредная полезная нагрузка могут привести к багам, падениями и DoS, в основном потому, что JSON-библиотеки основаны на спецификациях, которые со временем развиваются, что оставляет многие вещи плохо или вообще не задокументированными.

Читать дальше →
Total votes 170: ↑164 and ↓6+158
Comments60

JSON и XML. Что лучше?

Reading time8 min
Views215K
Примечание: ниже перевод обзорной статьи «JSON vs XML», посвященной JSON и его сравнению с XML по ряду критериев. Публикуется в целях популяризации JSON среди читателей Хабрахабра.

JSON (англ. JavaScript Object Notation) — формат обмена данными, легко читаем людьми, легко обрабатывается и генерируется программами.

Основан на подмножестве языка JavaScript, Standard ECMA-262 3rd Edition — декабрь 1999.

JSON — Википедия

Что является правильным форматом ответа на XMLHttpRequest в AJAX-приложениях? Для большинства приложений, основанных на разметке, ответ будет простым — (X)HTML. Для информационно-ориентированных приложений выбор будет лежать между XML и JSON. До недавнего времени я не сильно задавался вопросом, что лучше использовать, XML или JSON. Я просто предполагал, что в каждом конкретном случае стоит выбирать наиболее подходящий формат, и все. Но недавно мне довелось проверить на практике этот подход. В этой заметке я опишу критерии, по которым проводил сравнение между XML и JSON, и собственные умозаключения.

Итак, критерии следующие.

  • Удобочитаемость кода.
  • Простота создания объекта данных на стороне сервера.
  • Простота обработки данных на стороне клиента.
  • Простота расширения.
  • Отладка и исправление ошибок.
  • Безопасность.

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

LittleFS – компактная и экономичная файловая система для ARM микроконтроллеров в составе mbed os. Быстрый старт

Reading time10 min
Views17K
image alt В декабре 2017 года компания ARM представила обществу новую версию операционной системы для ARM микроконтроллеров «arm mbed os v.5.7» (17 января 2018 вышла версия 5.7.3), которая получила в своем составе интегрированную авторскую файловую систему, незатейливо названную «LittleFileSystem», или просто «LittleFS». Предлагаю сегодня поговорить об этой новинке.
Читать дальше →
Total votes 14: ↑14 and ↓0+14
Comments4
1
23 ...

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity