Pull to refresh
-6
0
Send message

Перевод Google JavaScript Style Guide

Reading time2 min
Views17K
Добрый день, товарищи разработчики!

Введение нового разработчика в проект практически всегда начинается с разбора codestyle'a данного проекта. Так как иногда возникает потребность в обучении разработчиков стилю написания кода, не всегда Junior-разработчики могут сразу разобрать англоязычные примеры. В результате, это привело… к переводу одного из них, о чем я и хочу рассказать в этой статье.

Читать дальше →
Total votes 23: ↑20 and ↓3+17
Comments7

Кто есть кто в мировой микроэлектронике

Reading time19 min
Views221K
Типичная новость про электронику начала 2020 года: «Intel, вероятно, не будет размещать заказ на производство у TSMC, но рассматривает возможность сотрудничества с GlobalFoundries». Кто такие Intel — всем понятно, но что за GlobalFoundries и TSMC? Когда деревья были большими, каждая микроэлектронная компания самостоятельно производила свои микросхемы, а то и технику на их основе, как какая-нибудь Toshiba или IBM. С тех пор утекло много воды, производство подорожало, сложность приборов возросла, и в создании такого приземленного и распространенного девайса, как айфон, участвует несколько десятков высокотехнологичных компаний с трех континентов. Размеры мирового рынка полупроводниковых микросхем и приборов оцениваются больше, чем в 400 миллиардов долларов, но не все гиганты этого рынка имеют дело с конечными пользователями и часто появляются в новостях. Зато когда появляются — могут сбить с толку. Чтобы этого не происходило, я попробую кратко описать, кто есть кто.
Читать дальше →
Total votes 162: ↑161 and ↓1+160
Comments172

Что делает Free API Московской биржи в Google Таблицах

Reading time3 min
Views100K

Количество частных инвесторов на Московской бирже удвоилось за последний год и составило 3,86 млн: за 2019 счета на Мосбирже открыли 1,9 млн человек. Санкт-Петербургская биржа, специализирующаяся на торгах акциями иностранных компаний, в прошлом году зафиксировала трехкратный прирост счетов – с 910 000 до 3,06 млн шт.



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

Google Таблицы и ИСС Мосбиржи
Total votes 14: ↑14 and ↓0+14
Comments78

Почему нужна инструментальная поддержка пагинации на ключах

Reading time5 min
Views19K

Всем привет! Я бэкэнд-разработчик, пишу микросервисы на Java + Spring. Работаю в одной из команд разработки внутренних продуктов в компании Тинькофф.



У нас в команде часто встает вопрос оптимизации запросов в СУБД. Всегда хочется еще чуть-чуть быстрее, но не всегда можно обойтись продуманно выстроенными индексами — приходится искать какие-то обходные пути. Во время одного из таких скитаний по сети в поисках разумных оптимизаций при работе с БД я нашел бесконечно полезный блог Маркуса Винанда, автора книги SQL Performance Explained. Это тот самый редкий вид блогов, в котором можно читать все статьи подряд.


Хочу перевести для вас небольшую статью Маркуса. Ее можно назвать в какой-то степени манифестом, который стремится привлечь внимание к старой, но до сих пор актуальной проблеме производительности операции offset по стандарту SQL.

Читать дальше →
Total votes 58: ↑57 and ↓1+56
Comments87

Быстрая загрузка страниц на самых простых дешёвых телефонах

Reading time18 min
Views33K
Те телефоны, о которых идёт речь в заголовке, по-английски называют «feature phone». Они отличаются крайне скромными возможностями. Кроме того, они весьма доступны, так как стоят в районе $20-25. Их можно сравнить с облегчёнными версиями современных смартфонов. Такие телефоны позволяют сотням миллионов человек из развивающихся стран пользоваться веб-ресурсами.


Телефон Jio

Если в основе сайта лежат технологии, ориентированные на обеспечение высокой скорости его работы, то от этого выиграют все — и владельцы простых дешёвых телефонов, и те, кто смотрит веб-страницы со свежих мощных смартфонов.
Читать дальше →
Total votes 44: ↑43 and ↓1+42
Comments18

12 лет с МКБ F41.2. То, что нас не убивает, делает сильнее… и лучше

Reading time21 min
Views73K

Привет всем. У меня депрессивное-тревожное расстройство. Вот уже 12 лет. 5 полноценных эпизодов. 4 ремиссии. МКБ F41.2 — эти цифры легко запоминаются… уже на первом эпизоде.


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


Когда-то я спрашивал, за что мне природа и генотип наградили пограничным расстройством психики. А потом один мудрый человек подправил вопрос — не «Почему?» и даже не «За что?», а «Для чего?». Мне понадобилось несколько лет и три эпизода депрессивно-тревожного расстройства, чтобы понять его правоту.


Болезнь сделала меня лучше, чем я был до неё. Я в этом уверен. Это моя история. Пусть она послужит маяком для тех, кто потерялся в штормовом море F41.2 под тяжёлым свинцовым небом — и не знает, что делать, к кому обратиться и как жить дальше. А рядом нет хорошего специалиста психиатра.


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



Три самых главных вещи:

Читать дальше →
Total votes 107: ↑90 and ↓17+73
Comments180

Как я нашел способ отследить всех водителей «Ситимобил»

Reading time5 min
Views144K
В субботу вечером я, как всегда, сидел и снифил трафик со своего телефона. Внезапно, открыв приложение «Ситимобил» я увидел, что один интересный запрос выполняется без какой-либо аутентификации.

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


Читать дальше →
Total votes 476: ↑473 and ↓3+470
Comments300

Скрытая цена CSS-in-JS-библиотек в React-приложениях

Reading time11 min
Views17K
В современных фронтенд-приложениях технология CSS-in-JS пользуется определённой популярностью. Всё дело в том, что она даёт разработчикам механизм работы со стилями, который удобнее обычного CSS. Не поймите меня неправильно. Мне очень нравится CSS, но создание хорошей CSS-архитектуры — задача не из простых. Технология CSS-in-JS может похвастаться некоторыми серьёзными преимуществами перед обычными CSS-стилями. Но, к сожалению, применение CSS-in-JS способно, в определённых приложениях, привести к проблемам с производительностью. В этом материале я попытаюсь разобрать высокоуровневые особенности наиболее популярных CSS-in-JS-библиотек, расскажу о некоторых проблемах, которые иногда возникают при их использовании, и предложу способы смягчения этих проблем.


Читать дальше →
Total votes 40: ↑39 and ↓1+38
Comments5

10 возможностей VS Code, помогающих ускорить работу программиста

Reading time9 min
Views97K
Когда программист попадает в состояние потока, его мысли часто движутся прямо-таки с космической скоростью. Он пишет код так быстро, как только может, прилагая все усилия к тому, чтобы ухватить свои идеи и не дать им растаять в воздухе или затеряться в закоулках новых образов.

Редактор Visual Studio Code (VS Code) стал восходящей звездой вселенной инструментов программирования сразу после того, как появился. Я долго не решалась его попробовать. Причина этого была не в том, что это — просто некий очередной редактор кода. Дело было в том, что вся моя работа была отлично организована в Sublime.

image

Для меня понятия «работа» и «написание кода» — это одно и то же. И, по большому счёту, неважно, каким именно редактором я буду постоянно пользоваться. Но изменения — это всегда нелегко. После того, как я неделю поработала в VS Code, я обнаружила, что моя продуктивность сильно просела. Я сделала за это время меньше, чем сделала бы, пользуйся я чем-то привычным.

Это было так, отчасти, из-за того, что мне нужно было перестроиться, привыкнуть к новым инструментам. Нужно было выяснить то, какие команды мне пригодятся, нужно было запомнить полезные сочетания клавиш, изучить средства навигации по коду. И, вдобавок, надо было разобраться в том, какие расширения редактора мне понадобится установить для того, чтобы облегчить себе жизнь.

В итоге я снова вышла на высокую производительность. Вряд ли я снова затею переход на новый редактор. VS Code — это надёжный и нетребовательный к ресурсам инструмент. Вокруг него собралось мощное сообщество разработчиков расширений. Пожалуй это — одна из лучших разработок Microsoft.

Вот 10 возможностей VS Code, освоение которых помогло мне ускорить работу. Надеюсь, они пригодятся и вам.
Читать дальше →
Total votes 53: ↑41 and ↓12+29
Comments60

Знакомство с XACML — стандартом для Attribute-Based Access Control

Reading time26 min
Views66K
В предыдущей статье мы рассказывали о том, что такое Attribute-Based Access Control и в чем его преимущества по сравнению с наиболее распространенным на сегодняшний день Role-Based Access Control. Пришло время рассмотреть ABAC более детально, через существующий стандарт под названием XACML.

Стандарт переживает уже третью и, скорее всего, не последнюю редакцию, история его ведет свой отсчет с 2003 года. Курирует и поддерживает стандарт организация OASIS. Этот стандарт описывает необходимые компоненты системы, их назначение, способ их взаимодействия и использования. По сути, он охватывает все, что нужно, до мелочей.

В данной статье будут рассматриваться способ выражения бизнес-правил в виде политик безопасности, основные компоненты системы безопасности, ее интеграция и другие моменты, стандартом не затрагиваемые, но не менее важные и интересные. Приглашаю всех читателей познакомиться с этими вопросами подробнее. Также приветствуются любые замечания, комментарии, вопросы и критика.
Читать дальше →
Total votes 19: ↑17 and ↓2+15
Comments6

Подходы к контролю доступа: RBAC vs. ABAC

Reading time5 min
Views154K
В этой теме хотелось бы познакомить читателей с относительно новым подходом к контролю доступа под названием Attribute-based access control. Знакомство будет происходить на примере сравнения с популярным нынче Role-based access control.
Читать дальше →
Total votes 32: ↑31 and ↓1+30
Comments47

Свой стек навигации. Лучше чем у ROS?

Reading time17 min
Views7.4K
Это вторая статья команды setUP про наш опыт создания автономных роботов для соревнований Eurobot Open и использования для этого ROS.

Первая статья про механику и общую архитектуру роботов.

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

Сегодня мы попробуем проехать из точки А в точку Б, не проехав при этом по хвосту котика, заснувшего на поле. В частности объясним, как мы строим маршрут и управляем скоростью робота, а также расскажем как запустить всё на своем компьютере.


Total votes 12: ↑12 and ↓0+12
Comments4

Как сделать из нейросети журналиста, или «Секреты сокращения текста на Хабре без лишних слов»

Reading time10 min
Views13K
Только не удивляйтесь, но второй заголовок к этому посту сгенерировала нейросеть, а точнее алгоритм саммаризации. А что такое саммаризация?

Это одна из ключевых и классических задач Natural Language Processing (NLP). Она заключается в создании алгоритма, который принимает на вход текст и на выходе выдаёт его сокращённую версию. Причем в ней сохраняется корректная структура (соответствующая нормам языка) и правильно передается основная мысль текста.

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

К моему удивлению, на Хабре оказалось совсем немного статей о саммаризации, поэтому я решил поделиться своими исследованиями и результатами в этом направлении. В этом году я участвовал в соревновательной дорожке на конференции «Диалог» и ставил эксперименты над генераторами заголовков для новостных заметок и для стихов с помощью нейронных сетей. В этом посте я вначале вкратце пробегусь по теоретической части саммаризации, а затем приведу примеры с генерацией заголовков, расскажу, какие трудности возникают у моделей при сокращении текста и как можно эти модели улучшить, чтобы добиться выдачи более качественных заголовков.
Читать дальше →
Total votes 26: ↑26 and ↓0+26
Comments9

Пишу на C#, чтобы фронтендерам было полегче

Reading time3 min
Views21K


В этом декабре, как прошлые пару лет, я участвую в Advent of Code — ежегодном рождественском соревновании от автора популярного фреймворка Vanilla JS. В этом году я пишу на C#, потому что привычный мне, как фронтендеру, JavaScript я уже весь использовала в прошлом году. Прошло всего 10 дней, но я уже чувствую, как жизнь фронтендеров по всему миру становится лучше. Сейчас расскажу, как это происходит.

Как похорошел WebStorm при мне
Total votes 46: ↑40 and ↓6+34
Comments33

Корпоративное ПО делает ваших сотрудников круче. А оно вам надо?

Reading time11 min
Views9.8K
Есть два типа руководителей: те, которые ценят умных и прокачанных сотрудников (первый среди равных, лидер) и те, которые стараются избавиться от сильных и управлять слабыми (молодец среди овец, деспот). На первый взгляд, компании и тех, и тех работают, продают, получают доход. Но если смотреть на длинной дистанции, в компаниях у руководителей, выживающих классных сотрудников, рано или поздно начинаются узнаваемые проблемы: текучка кадров, найм всё более слабых и молодых сотрудников, устаревание продуктов и технологий, падение продаж и сокращение доходов. Это вызвано косностью управления и нежеланием развивать персонал. Какое отношение к этому имеет CRM и другой корп. софт? Да самое прямое! Но надо ли развивать сотрудников и есть ли у этой медали обратная сторона? Давайте обсудим. 


Читать дальше →
Total votes 32: ↑28 and ↓4+24
Comments12

Простыми словами о Programmatic

Level of difficultyEasy
Reading time3 min
Views34K
Статья провалидирована и обновлена автором 26.05.2023


Привет, читатель! Меня зовут Артём Сайгин, я веду телеграм-канал «Growth Lab», в котором делюсь опытом роста IT-продуктов.

Меня часто спрашивают, что же такое программатик, и чем он отличается от других digital-инструментов. Решил написать небольшую статью (своего рода «кратчайшая история программатика»), чтобы закрыть все базовые вопросы по этой теме.

Приступим!

image
Автор картинки Karolis Strautnieka
Читать дальше →
Total votes 12: ↑11 and ↓1+10
Comments5
Вру, я Алина и я работаю UX/UI дизайнером. И моя, казалось бы, идеальная удаленная работа этой осенью довела меня до бессонницы. Я слышала о ней раньше, но не представляла, какой это ад. Да, выжившие трудоголики еще соревнуются, кто меньше поспал и выпил больше таблеток, а негативные эффекты депривации сна отрицают директора крупных компаний, которые выжимают сотрудников до последней капли. Я выжала себя сама, и так же самостоятельно мне пришлось искать причины бессонницы и выводить себя из этого чертова состояния.
история одной борьбы
Total votes 56: ↑32 and ↓24+8
Comments64

Нано-нейрон — 7 простых JavaScript функций, показывающих, как машина может «учиться»

Reading time11 min
Views10K

Нано-нейрон — это упрощенная версия нейрона из концепции нейронной сети. Нано-нейрон выполняет простейшую задачу и натренирован на конвертацию температуры из градусов Цельсия в градусы Фаренгейта.


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


Эти функци ни в коей мере не являются исчерпывающим руководством по машинному обучению. Множество концепций машинного обучения в них пропущено или же упрощено! Это упрощение допущено с единственной целью — дать читателю самое базовое понимание и интуицию о том, как машина в принципе может «учиться», чтобы в итоге «МАГИЯ машинного обучения» звучала для читателя все более как «МАТЕМАТИКА машинного обучения».


NanoNeuron

Читать дальше →
Total votes 15: ↑14 and ↓1+13
Comments13

Как я научился работать с микроконтроллерами — опыт новичка

Reading time5 min
Views66K
Всем привет. В этой статье хотел рассказать о том, как я научился работать с микроконтроллерами
(далее по тексту — МК) и на какие подводные камни налетел. Сразу скажу — статья не претендует на эксклюзивность, так как любой человек работающий с МК проходил через то, что прошёл я. Прошу строго не судить, а прочитать как историю.


Читать дальше →
Total votes 37: ↑24 and ↓13+11
Comments84

Новогоднее настроение из Arduino и палок

Reading time2 min
Views20K

Вместо пролога


Смеркалось.


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


Читать дальше →
Total votes 27: ↑26 and ↓1+25
Comments25

Information

Rating
3,406-th
Registered
Activity