Привет, Хабр! Мы — Рома, Настя и Карина — бэкенд-разработчики Тинькофф, пишем код на Scala и горим желанием его популяризировать.
Мы собираем и агрегируем новости из разных источников, включая Scala Times, блог Petr Zapletal и канал Scala Nishtyaki, добавляем дополнительные новости и собственные комментарии. Свою мотивацию мы черпаем из желания развиваться и делиться полученными знаниями. Приветствуем любую обратную связь! (づ ◕‿◕ )づ
User
17 вредных советов для тех, кто проверяет документацию и технические тексты
Вы пишете документацию, статьи или другие тексты? Тогда наверняка у вас есть проверяющие. Я уверен, что вы нежно и трепетно любите своих проверяющих. Вы, скорее всего, с нетерпением ждёте, когда они пришлют вам свои правки и комментарии. Благоговейно изучаете и перечитываете крупицы мудрости, которыми проверяющие благосклонно поделились с вами. Лучшие из комментариев вы записываете в специальную тетрадочку или даже распечатываете и вешаете их на стену...
Я начал коллекционировать самые фееричные комментарии. Делал я это для того, чтобы иметь перед глазами антипример — как ни в коем случае нельзя писать комментарии к текстам. Эти советы — тщательно отобранные, систематизированные и дистиллированные советы для проверяющих. Практическое руководство по доведению до белого каления ваших технических писателей и авторов.
Дисклеймер. Все совпадения фрагментов этого текста с реальными комментариями в вашей документации совершенно случайны. При написании этого текста не пострадал ни один проверяющий.
Проблемы внедрения ИИ: почему искусственный интеллект в процессах отдела продаж — будущее, но точно не настоящее?
Какие решения помогут сэкономить время и деньги, но убьют лояльность, качество обслуживания клиентов и снизят качество обучения персонала? Разбираем в статье, почему 99.9% компаний не готовы к внедрению ИИ в бизнес-процессы отдела продаж и поддержки.
Для тех, кому лень читать, можно перейти к выводам в конце статьи.
Как запустить WebRTC на сервере, или как я пилю вебкам
Всем привет!
Хотел логически подвести к этому абзацу в конце предыстории, но побоялся, что не все до туда дочитают, т.к. статья техническая и душная.
ДИСКЛЕЙМЕР: это не бескорыстный акт передачи знаний с моей стороны. Я пытаюсь найти инвестиции для своего проекта и создал чат в тг, где буду постить обновления и какие-то мысли касательно его запуска. Так что если интересно, то подписывайтесь, а еще можете поделиться ссылкой с теми, у кого есть лишние бабки =)
Предыстория
Значит решил я создать сервис для одиноких мужчин, где они могут пообщаться с прекрасными дамами, aka вебкам. Соответственно встал вопрос, как организовать видеосвязь в браузере. Обычно для этого используется WebRTC, эта технология позволяет установить p2p соединение между браузерами для передачи видео, звука и прочих данных в реальном времени с минимальной задержкой. Однако была одна проблема: что делать, если приходит жалоба от пользователя, что ему показали не то (или не показали), что он хотел. Поскольку это p2p соединение напрямую между пользователями, у меня как у владельца сервиса нет возможности провалидировать жалобу. Первое, что пришло в голову это вместо WebRTC использовать MediaRecorder API для записи видео небольшими кусочками и отправки их по вебсокету через сервер, попутно сохраняя. Я набросал прототип и столкнулся с тем, что если получатель пропустил первый пакет (там где есть метаданные), то видео у него не воспроизводится. Пришлось поиском определенного набора байт в первом пакете вычленять эти самые метаданные и сохранять их отдельно для отправки первым сообщением только что подключившемуся получателю, и это даже сработало. Вторая проблема этого решения - это задержка в пару секунд, и это только в локальной сети, что приемлемо для односторонней связи, но для двусторонней уже сомнительно. И третья проблема это то что видео у получателя со временем все больше и больше отстает, и нужно регулярно проматывать видео ближе к концу. Костыльность такого решения меня не устраивала, и я решил использовать WebRTC для связи собеседников и параллельно использовать MediaRecorder для отправки записи от модели к серверу. Некоторое время оно так работало, пока я пилил другие фичи, но неэлегантность этого решения все еще не давала мне покоя, т. к. оно повышает требования к интернет соединению модели.
ВРМ. Смарт-инструменты «Таблица -> Схема» для формализации бизнес-процессов. Рестайлинг ARIS SmartDesign
Ставится задача повторить доселе непревзойдённый ARIS SmartDesign, который по табличному представлению процесса автоматически рисует схему процесса (структуры чего-либо). Схемы процессов желательно строить в нескольких процессных нотациях (EPC, VAD и т.п.). ARIS SmartDesign также умеет по табличному представлению орг-структуры (другой древообразной взаимосвязи) строить иерархическую схему (тут рассмотрим только процессные схемы).
Системы / Инструменты ВРМ (Business Process Management System/Tool) часто представляют из себя что-то очень сложное и дорогое. Чтобы работать с ними для формализации (моделировании, описании) даже простых процессов нужно много учиться, включая зазубривание различных нотаций. Ниже показан вариант как на простом инструменте можно составить схему своего процесса «с нулевой» подготовкой в области BPM. Достаточно заполнить несложную табличку и получить схему процесса в нескольких нотациях, как это показано на заставке. Инструменты типа SmartDesign реализуют подход «таблица с процессом в схему процесса».
Работа с рассмотренными ниже инструментами SmartDesign – чрезвычайно проста и не требует никаких навыков. Статья может показаться сложной, вследствие того, что в ней много посвящено сравнению ARIS SmartDesign vs DOT SmartDesign и рассмотрены технологические аспекты обоих инструментов, которые рядовому пользователю не понадобятся. Однако в сущности нам нужно просто заполнить таблицу и мы сразу получаем его схему.
Только в системе ARIS (самая известная BPM-система) ранее была представлена реализация SmartDesign, концепцию которого можно назвать инструментом «моделирование без моделирования», по аналогии «программирование без программирования». Несмотря на долгое существование и наличие его не только в платной версии ARIS, но и в ARIS Express – этот инструмент остается недооцененным и поэтому в целях его популяризации предлагается альтернативная реализация DOT SmartDesign, причем в нескольких вариациях (excel, javascript).
«42» как ответ на пять фундаментальных вопросов науки
Одна из самых забавных историй во всей научной фантастике — книжка «Автостопом по Галактике» Дугласа Адамса, в одном из эпизодов которой суперкомпьютеру поручили найти «ответ». Созданный якобы для того, чтобы дать ответ на «главный вопрос о жизни, Вселенной и всём остальном», компьютер тратит 7,5 миллиона лет на вычисление ответа и наконец выдаёт его: 42. Только вот когда ответ, наконец, раскрывается, никто не может вспомнить, в чём же, собственно, заключался «главный вопрос». Это ещё один пример того, что не стоит быть настолько одержимым идеей добраться до цели, чтобы изначально потерять из виду весь смысл путешествия – тогда её достижение уже не будет иметь значения,
К счастью для нас, существует ряд возможных вопросов-кандидатов, которые мы можем использовать задним числом, поскольку они действительно могут быть тем самым окончательным вопросом – ведь нам известно, что ответ на эти вопросы действительно «42». Мог ли хоть один из этих вариантов быть тем, о чём спрашивали суперкомпьютер, когда речь шла о раскрытии ответа на «главный вопрос о жизни, Вселенной и всём остальном»? Хотя никто не может быть уверен, даже в вымышленном мире Дугласа Адамса, вот пять возможных вопросов, которые относятся к числу самых увлекательных. Ответом на каждый из них действительно будет «42», и, возможно, один из них покажется вам по-настоящему захватывающим.
Похоже, я придумал свой алгоритм поиска кратчайшего пути
Всем привет! Я реализовал, похоже, собственный алгоритм поиска кратчайшего пути с отрицательными ребрами графа.
Почему собственный? Я искал подобное решение, но не нашел, возможно, оно уже было реализовано, просто плохо поискал. Жду Нобелевскую премию =)
Додумался я до него путем модификации классического Дейкстры. Прошу адекватно отнестись к содержимому, ибо это моя первая статья, и, возможно, я ничего не придумывал и, вообще, этот алгоритм не работает вовсе (но по многочисленным тестам он работает правильно).
Путь к потрясающему CSS Easing с помощью новой функции linear()
С появлением на горизонте новой CSS функции linear()
возможности создания естественных анимаций и переходов в будущем значительно расширяются. В этой статье Джейхи Томпкинс рассматривает текущее состояние CSS easing и демонстрирует, чего можно ожидать от linear()
, включая удобные инструменты для работы с ней уже сегодня.
Нужно ли писать документацию?
Может ли IT-продукт жить без документации?
Давайте попробуем разобраться на примере небольшого стартапа, команда которого разрабатывает новую инновационную систему защиты от киберугроз.
Википедии на искусственных языках
Разделы википедии есть на 355 языках (плюс несколько десятков в инкубаторе).
Есть крупные разделы с более чем миллионом статей, их чуть менее 20 (на английском, немецком, русском и так далее; парадоксальным образом на втором месте - википедия на себуанском, одном из языков филиппин, накачанная ботозаливками).
Есть мелкие, но важные (например, на идише, на африканских языках, или на башкирском).
А есть несколько разделов на искусственных языках. Сейчас их 9 (когда-то был еще один, на токипоне; но его закрыли очень давно).
В чём разница между дизайнерами в агентстве и продукте. Мышление, процессы и перевоплощение
Всем привет! В этой статье расскажу, в чем отличие в работе, мышлении, поведении между агентским дизайнером и продуктовым. Сравню навыки дизайнеров из агентства и продукта, опишу разницу в процессе работы и результатах. А еще поделюсь, какого человека хотят видеть у себя в штате крупные компании вроде СберМаркета и как перейти из агентства в продукт.
Я сама 10 лет работала в разных агентствах, а в прошлом году перешла в продукт. И мне есть, что рассказать).
Как «оптимизация» зарплат вредит бизнесу, и что делать
Оптимизация фонда оплаты труда (далее - ФОТ) в долгосрочной перспективе вредит компаниям, ухудшает их положение и усиливает кризисы.
Этот вопрос мы рассмотрим на основе проблем в Boeing и Blizzard, разбора жёсткого поведения Amazon в отношении сотрудников, с примерами лучших практик Генри Форда и General Electric, а так же ссылками на исследования, с описанием психологических аспектов и ключевых трендов. И рекомендациями: что с этим делать.
Цель данной публикации - описать ключевые аспекты и нюансы проблемы, чтобы любой мог прийти к финансистам, кадровикам или генеральному директору с ней со словами “хватит вредить бизнесу оптимизацией ФОТ!"
Как передать информацию в ICMP-пакетах и не привлечь внимания санитаров
Источник: polymerh.
На Хабре достаточно статей про передачу данных через протокол ICMP. Чего говорить, шесть лет назад я сам писал про стеганографию в IP-пакетах и «пингах». Но кажется, самое время вернуться к этой теме и предложить неочевидные методы.
Если вам кажется, что тема передачи данных в ICMP уже исчерпана и я не смогу вас удивить, то предлагаю извлечь данные из дампа сетевого трафика до прочтения статьи. То, что будет дальше, может ввести в недоумение.
Как я делаю и продаю камни на маркетплейсах на 1,35 млн в месяц
В статье я расскажу, почему я работаю не на себя, а на Озон, как я победил алкоголизм у сотрудников, и сколько стоит сделать и продать камень.
В 2016-м году я встретил женщину. И вон он я с ипотекой, кредитом на бытовую технику и зарплатой в 25 000 ₽. Чтобы как-то сводить концы с концами я, версии 2017-го, решил взять ещё один кредит на бизнес по производству декоративных камней. Их используют для внутренней отделки помещений.
Оказалось, это огромный рынок, а для производства такого камня требуется только вода и гипс. Но есть нюансы.
Космическое творчество. Как телескопы видят вселенную и зачем ученым Photoshop
Красочные изображения космического пространства завораживают нас и будят фантазию. Даже не обладая тягой к прекрасному или страстью к астрономии, сложно устоять перед загадками Вселенной.
Фантастически красивые изображения облаков космической пыли и газа в областях, где рождаются новые звезды, пугающие черные дыры и загадочные планеты — все это кажется таким далеким и нереальным.
Фотографии дают нам представление о космическом пространстве и объектах в нем. Только вот снимки эти ненастоящие. На реальных изображениях человеческий глаз вряд ли рассмотрел бы хоть что-то, кроме черного пространства. Узнаем, как космические пейзажи оживают и обретают краски.
Доступная цветная 3D-печать?
Цветная 3D-печать является своего рода мечтой для домашнего пользователя, и множество исследователей работают в этом направлении с переменным успехом.
Тем не менее, им удалось добиться некоторых результатов в одном из направлений, в то время как другие всё ещё остаются не разработанными (предоставляя вам поле для деятельности).
Что делать, если кандидат оказался сеньором или психом: советы на случай форс-мажоров
Меня зовут Александр Гирев, я Android-разработчик и технический интервьюер. В одной компании я выполнял роль interview expert: следил за качеством собеседований, готовил рекомендации и матрицы вопросов, обучал начинающих интервьюеров.
Однажды на интервью я спросил кандидата, был ли у него опыт проведения технических собеседований. Кандидат спросил: «Что за опыт — задать пару технических вопросов?». Услышав это, я слегка подвис, ведь я считал интервью серьёзным навыком, почти искусством.
В основе статьи лежит мой опыт проведения собеседований. Расскажу про важные качества технического интервьюера, хорошие и плохие примеры фидбека и про то, как быть, если на собеседовании случился форс-мажор.
О развитии навыка говорения
«ЗНАТЬ иностранный язык» и «УМЕТЬ на нём разговаривать» — это очень разные вещи. Письменные переводчики знают язык глубоко, но разговаривают некоторые из них хуже девочки-секретаря, которая ловко оперирует двумя-тремя сотнями заученных фраз. У них разные задачи: переводчик имеет дело со сложными текстами, а работа секретаря — короткие типовые разговоры.
Если человек уже знает иностранный язык, научиться говорить для него — вопрос нескольких дней или недель. Вот что по-настоящему сложно и к чему нужно стремиться — так это выучить язык, т. е. понять, как в нём связываются слова друг с другом, понять внутренние принципы, по которым он работает.
«Гло́кая ку́здра ште́ко будлану́ла бо́кра и курдя́чит бокрёнка». Эту фразу из несуществующих слов предложил в начале XX века академик Л.В. Щерба. Из неё ясно, что "будлану́ла" — действие, которое ку́здра (ж.р.) совершила в отношении бо́кра (м.р.); бокрёнок, скорее всего, детёныш бокра. Для русского это очевидно сразу. Иностранцу придётся сначала выучить русский. Фраза показывает, что язык — это НЕ СЛОВА. Слова легко переходят из одного языка в другой. Язык — это принципы, по которым слова связываются друг с другом.
В том, чтобы научиться говорить, абсолютно ничего сложного нет – проблема это придуманная. А основная причина частых неудач — это то, что люди, как говорится, put the cart before the horse, ставят телегу впереди лошади. Пытаются говорить, не разобравшись, как связываются слова в языке. Это как пытаться бегать, не научившись ходить.
В статье не рассматривается уровень руссо туристо, когда говорят наполовину инфинитивами, наполовину знаками – это вообще не язык, строго говоря. Под умением «говорить» подразумеваются три уровня:
Иллюзия неизменного прошлого. Хаос реальности или неуловимая волна парадоксов
Мир находится в постоянном движении, вид за окном неуловимо меняется каждую секунду и никогда не повторяется дважды. Однако мы привыкли к относительной стабильности окружающей реальности. Будущее пугает нас своей неизвестностью и непредсказуемостью. Мы пытаемся его прогнозировать, строить какие-то долгосрочные планы. Но в любой момент может произойти «маловероятный» катаклизм и мы поймём, что все прогнозы погоды оказались пустышкой. Совсем другое дело — прошлое. Оно кажется нам надёжным и неизменным...
Information
- Rating
- 4,297-th
- Registered
- Activity