Pull to refresh
4
0
Бен Keкстон @ru7701

User

Send message

Wi-Fi 6E: отличие от Wi-Fi 6, особенности и перспективы

Reading time4 min
Views67K
image

Привет, Хабр! Больше года назад мы рассказывали о том, что собой представляет стандарт Wi-Fi 6. Это новое поколение беспроводной связи, которое позволяет решить проблему «перенаселения» — то есть обеспечить надежный канал связи с большой пропускной способностью в условиях большого количества работающих поблизости беспроводных устройств.

Сейчас стандарт WiFi 6 стал реальностью, поэтому можно надеяться на скорое появление большого количества устройств, совместимых с новой технологией. Такие устройства уже появились и их количество продолжает увеличиваться. Но есть еще более продвинутая технология — Wi-Fi 6E, у которой больше возможностей и разного рода фишек. Давайте посмотрим, что она собой представляет.
Total votes 7: ↑7 and ↓0+7
Comments13

Интернет вчера, сегодня, завтра: воссоздание интернет-серфинга 90-х и прогнозирование интернета будущего

Reading time3 min
Views11K

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

А чего смеяться-то, прошло много лет, ведь и люди среднего и старшего поколения далеко не всегда понимают, для чего предназначен тот либо иной артефакт прошлых эпох. Но поностальгировать, вспоминая былые времена, никто не мешает. Так, например, любитель старого «железа» и технологий поделился своим опытом воссоздания серфинга 90-х в наше время.
Читать дальше →
Total votes 53: ↑49 and ↓4+45
Comments69

Основатель Signal: «Первые впечатления от web3»

Reading time15 min
Views79K

Несмотря на то, что я считаю себя криптографом, меня не особенно привлекает слово "крипто". Не думаю, что я уже староват, но я гораздо чаще кликаю на мемы в духе "Интернет всё помнит" о том, как "крипто" раньше означало "криптография", чем на последние новости об NFT.

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

Читать далее
Total votes 123: ↑121 and ↓2+119
Comments156

Data-Oriented архитектура

Reading time11 min
Views7.5K

В архитектуре программного обеспечения существует один малоизвестный паттерн, заслуживающий большего внимания. Архитектура, ориентированная на данные, (data-oriented architecture, DOA) была впервые описана Радживом Джоши в отчете RTI 2007 года, а затем в 2017 году Кристианом Ворхемом и Эрихом Шикутой из Венского университета в статье iiWAS. DOA — это инверсия традиционной дихотомии между монолитным кодом и хранилищем данных (монолитная архитектура) с одной стороны, и небольшими распределенными независимыми компонентами с собственными хранилищами (микросервисы и сервис-ориентированная архитектура) с другой. В архитектуре, ориентированной на данные, монолитное хранилище данных является единственным источником состояния в системе, на которое воздействуют слабосвязанные микросервисы без состояния.

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

Читать далее
Total votes 12: ↑11 and ↓1+10
Comments2

Диалоговые помощники для работы со структурированными данными

Reading time5 min
Views2.4K

 - Кто в нашей компании отвечает за согласование доступа в выходные на объект N?
 - Александр Иванов.
 - А какой у него телефон?

С таким диалогом легко справится любой офисный клерк, но для чат-ботов и диалоговых помощников подобные сценарии беседы до сих пор являются проблемой.

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

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

Почему я остаюсь с Лиспом (и вам тоже стоит)

Reading time15 min
Views15K

Зрелый язык может использоваться немногими. Но он остаётся частью моей кодовой базы.

Как давнего пользователя (и активного сторонника) Scheme/Common Lisp/Racket, меня иногда спрашивают, почему я предпочитаю их. К счастью, я всегда возглавлял собственные инженерные организации, поэтому мне никогда не приходилось оправдывать это перед руководством. Но есть еще более важная аудитория - мои собственные коллеги-инженеры, которые никогда не имели удовольствия использовать эти языки. Хотя им не требуются оправдания, они все же спрашивают из интеллектуального любопытства, а иногда и из-за удивления, почему я не схожу с ума по поводу следующей крутой функции, которая будет в этом месяце добавлена в Python или Scala, или что бы там ни было в их вкусе.

Читать далее
Total votes 40: ↑32 and ↓8+24
Comments136

Миф семантического веба

Reading time5 min
Views10K
В сфере семантического моделирования сложилась довольно странная ситуация: в качестве базовых используется набор стандартов и спецификаций от W3C, заточенных под проект “семантического веба” (RDF/OWL, SPARQL и пр.), хотя сам проект не только не реализован на данный момент, но и, по всей видимости, никогда не будет воплощен вследствие сомнительности исходных гипотез.
Читать дальше →
Total votes 27: ↑24 and ↓3+21
Comments22

BaseX. Неизвестная NoSQL Вселенная

Reading time6 min
Views15K

Далеко-далеко, где-то на краю Галактики, я обнаружил весьма впечатляющее NoSQL решение…

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

Маркетинговая затравка от авторов звучит примерно так:
BaseX является очень легковесной, высокопроизводительной и масштабируемой XML базой данных с XPath/XQuery 3.0 процессором, который имеет полную поддержку W3C Update и Full Text спецификаций. Интерактивный и дружественный графический интерфейс позволяет легко изучать ваши XML документы

Звучит весьма вкусно, но реальность, как всегда, больно-больно ударяет по самым незащищенным местам
Читать дальше →
Total votes 14: ↑11 and ↓3+8
Comments26

Semantic Web и Linked Data. Исправления и дополнения

Reading time15 min
Views5.9K

Хочу представить публике фрагмент вот этой недавно вышедшей книги:

Онтологическое моделирование предприятий: методы и технологии [Текст]: монография / [С. В. Горшков, С. С. Кралин и др.; отв. ред. С. В. Горшков]. — Екатеринбург: Изд-во Уральского ун-та, 2019. — 234 с.: ил., табл.; 20 см. — Авт. указаны на обороте тит. с. — Библиогр. в конце гл. — ISBN 978-5-7996-2580-1: 200 экз.

Обложка и корешок книги


Цель выкладки этого фрагмента на Хабре троякая:


  • Собрать вопросы и замечания, чтобы учесть их при включении этого текста в переработанном виде в другие издания.
  • Внести дополнения, не очень совместимые с форматом печатной монографии: злободневные примечания (ниже они под спойлерами) и гиперссылки; а также внести исправления (ниже они никак не выделены).
  • Многие адепты Semantic Web и Linked Data до сих пор считают, что их круг столь узок в основном потому, что широкой публике все еще по-хорошему не объяснили, что же это такое — Semantic Web и Linked Data. Автор фрагмента, хоть к этому кругу и принадлежит, такого мнения не придерживается, но, тем не менее, считает себя обязанным сделать еще одну попытку.
Глава I. Параграф 5. Semantic Web и Linked Data
Total votes 4: ↑4 and ↓0+4
Comments3

Что сейчас происходит с RDF-хранилищами?

Reading time7 min
Views8.2K

Semantic Web и Linked Data подобны ближнему космосу: жизни там нет. Чтобы отправиться туда на более-менее длительный срок… ну, не знаю, что говорили вам в детстве в ответ на «хочу стать космонавтом». Но понаблюдать за происходящим можно и находясь на Земле; стать астрономом-любителем или даже профессионалом гораздо проще.


В статье речь пойдет о свежих, не старее нескольких месяцев, трендах из мира RDF-хранилищ. Метафора в первом абзаце была навеяна вот этой эпических размеров рекламной картинкой.

Поехали!
Total votes 18: ↑17 and ↓1+16
Comments19

React & БЭМ – официальная коллаборация. Часть историческая

Reading time17 min
Views29K

Перед вами история интегрирования БЭМ-методологии в React-вселенную. Материал, который вы прочитаете, построен на опыте разработчиков Яндекса, развивающих самый масштабный и нагруженный сервис в России — Яндекс.Поиск. Мы никогда раньше не рассказывали настолько подробно и глубоко о том, почему делали так, а не иначе, что нами двигало и чего мы действительно хотели. Внешнему человеку доставались сухие релизы и обзоры на конференциях. Лишь в кулуарах можно было услышать нечто подобное. Я как соавтор негодовал из-за скудности информации снаружи каждый раз, когда рассказывал о новых версиях библиотек. Но в этот раз мы поделимся всеми подробностями.



Все слышали о методологии БЭМ. CSS-селекторы с подчёркиваниями. Компонентный подход, о котором говорят, имея в виду способ написания CSS-селекторов. Но про CSS в статье не будет ни слова. Только JS, только хардкор!

Total votes 46: ↑44 and ↓2+42
Comments42

Как мы выбирали между Elastic и Tarantool, а сделали свою (самую быструю) in-memory БД. С Join и полнотекстовым поиском

Reading time10 min
Views46K

Всем привет.


С середины 2016 года мы проектируем и разрабатываем новое поколение платформы. Принципиальное отличие от первого поколения — поддержка API "тонкого" клиента. Если старая платформа предполагает, что на клиента при запуске загружается метаинформация о всем контенте, который доступен для абонента, то новая платформа должна отдавать срезы данных отфильтрованные и отсортированы для отображения на каждом экране/странице.


Высокоуровневая архитектура на уровне хранения данных внутри системы — постоянное хранение всех данных в централизованном реляционном SQL хранилище. Выбор пал на Postgres, тут никаких откровений. В качестве основного языка для разработки — выбрал golang.


У системы порядка 10м пользователей. Мы посчитали, что с учетом профиля теле-смотрения, 10М пользователей может дать сотни тысяч RPS на всю систему.



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


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

Читать дальше →
Total votes 79: ↑74 and ↓5+69
Comments115

REST — это новый SOAP

Reading time13 min
Views69K

Несколько лет назад я разрабатывал для одного большого телекома новую информационную систему. Нам приходилось взаимодействовать со всё нарастающим количеством веб-сервисов, открываемых более старыми системами или бизнес-партнёрами. Как вы понимаете, мы получили добрую порцию SOAP-ада. Заумные WSDL, несовместимые библиотеки, странные баги… Где только возможно мы старались продвинуть — и использовать — простые RPC-протоколы: XMLRPC или JSONRPC.

Читать дальше →
Total votes 106: ↑103 and ↓3+100
Comments153

Алгоритмы на графах — Часть 0: Базовые понятия

Reading time5 min
Views260K

Вступление


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

Читать дальше →
Total votes 130: ↑118 and ↓12+106
Comments70

6 привычек проектного бизнеса, которые убивают продуктовый

Reading time9 min
Views20K
Иногда наши рефлексы, вызванные инстинктом самосохранения, могут привести к летальному исходу. Например, когда переходишь дорогу в России, надо посмотреть сначала налево, а потом направо. А в Англии наоборот: сначала направо, затем налево. Если забыть о левостороннем движении — можно попасть под машину.



При переходе от проектного бизнеса (например, веб-студии или компании аутсорсинговой разработки) к продуктовому (разработка и вывод на рынок собственного решения) — происходит то же самое. Сложно избежать привычного подхода к бизнесу. Директор Акселератора ФРИИ Дмитрий Калаев рассказал о шести привычках проектного бизнеса, которые мешают продуктовому расти, а в самых тяжелых случаях — убивают стартап.
Читать дальше →
Total votes 43: ↑43 and ↓0+43
Comments8

Как запутать аналитика. Часть третья. Глаголы и числительные

Reading time5 min
Views4K
В прошлой статье я предложил подход к моделированию существительных и прилагательных таким способом, чтобы получить хранилище предметной области, не требующее изменения его структуры при добавлении в него новых знаний. Получилось следующее:

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

Я проводил мысленные эксперименты по объединению хранилищ с целью проверки созданной структуры хранилища на предмет его вместительности: изучал, что может быть включено в него, а что уже не поместится без переделки структуры.
Читать дальше →
Total votes 12: ↑8 and ↓4+4
Comments9

Типы моделей

Reading time6 min
Views9.2K
Правильно заданный вопрос быстро приводит к правильному ответу. Недавно меня спросили: «Почему стандарты бизнес-анализа сконцентрированы на выявлении требований, но ничего не говорят о превращении этих требований в решение?» В самом начале своей карьеры аналитика я искал ответ на вопрос: как анализировать предметную область и как превращать результат анализа в структуру модели: откуда брать классы, атрибуты и методы? Тогда я нашел один более-менее вразумительный метод, описанный в книге Крега Лармана Применение UML 2.0 и шаблонов проектирования. Введение в объектно-ориентированный анализ, проектирование и итеративную разработку. Аналитику предлагалось прохождение по тексту с маркерами разных цветов: Красный выделяет существительные и является основанием для создания классов, зеленый — прилагательные, причастия и проч. — основа для создания атрибутов этих классов. И глаголы выделяются синим — основа для создания методов.

Однако, в реальности этот метод не работал. Один и тот же факт я мог смоделировать при помощи класса, значения атрибута или метода в зависимости от своего желания. Об этом написано подробно у Крисса Партриджа в книге Business Objects: Re-Engineering for Re-Use.
Читать дальше →
Total votes 15: ↑10 and ↓5+5
Comments0

Как грамотно оформить интеллектуальные права на программу?

Reading time4 min
Views3.5K

Для начала спросим себя, зачем нам вообще оформлять права?


Оформление прав нужно для того, чтобы:
1) Продать программу. В большинстве случаев программы создаются именно для продажи. Коммерциализация программ воможна путем купли-продажи экземпляров на материальных носителях, а также путем заключения лицензионных договоров или договора об отчуждении прав в полном объеме. В любом случае, продавать может только правообладатель и он должен доказать покупателю свои права.
2) Получить при продаже освобождение от налога на добавленную стоимость (НДС) в соответствии с пп.26 п.2 ст.149 НК РФ
3) Поставить программу на бухгалтерский баланс в качестве НМА (п.3 ст. 257 НК РФ)
4) Сделать обоснованную рыночную оценку программного продукта
5) Внести в уставный капитал ООО в качестве вклада учредителя (показательный опыт описан недавно)
6) Получить доказательства для защиты прав на программу от нарушений со стороны сотрудников (авторов) и конкурентов
7) просто быть спокойным за свой актив, если даже не предполагаю совершать с программным продуктом сделки.
Если автор и заказчик программных продуктов не ставят перед собой перечисленные цели, то тратить время и деньги на оформление права нецелесообразно.
Как оформить надежно?
Total votes 2: ↑2 and ↓0+2
Comments0

Договор на разработку сайта: так, а не иначе

Reading time29 min
Views152K
Присылает нам заказчик (Газпром) свою версию договора.
Понимаем — нашу они не подпишут,
вносим реквизиты и отправляем обратно.
Пропадают на две недели… возвращают протокол разногласий к договору.


Последняя неделя выдалась жаркой на переговоры с юристами заказчиков. Проекты я не веду, но так уж получилось, что все договора проходят через меня. Соответственно, я участвую в их согласовании.
Читать дальше →
Total votes 135: ↑129 and ↓6+123
Comments78

Yate: Яндекс.Почта перешла на новый шаблонизатор

Reading time5 min
Views63K
imageНекоторое время назад мы писали, что в Яндекс.Почте появился новый интерфейс, в котором используется шаблонизация данных в браузере. Немногие крупные сервисы отваживались на это, но мы и сейчас считаем такое решение наиболее удачным. Оно не только ускорило работу интерфейса, но и позволяет экономить трафик пользователя и эффективнее расходовать процессорное время серверов.

Тогда в качестве шаблонизатора мы использовали XSL, а данные передавали в формате XML. Переведя проект на новый интерфейс, мы начали искать другие способы ускорения работы интерфейса Яндекс.Почты.

Недавно мы перевели всю Почту на JS-шаблонизатор и JSON-данные.
И вот как это проходило
Total votes 173: ↑159 and ↓14+145
Comments185
1

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity