Pull to refresh
0
0
Александр @o4karek

Немного знаю о платформе «1С»

Send message

Курс «PostgreSQL для начинающих»: #3 — Сложные SELECT

Level of difficultyMedium
Reading time12 min
Views26K

Продолжаю публикацию расширенных транскриптов лекционного курса "PostgreSQL для начинающих", подготовленного мной в рамках "Школы backend-разработчика" в "Тензоре".

В этой лекции углубимся в расширенные возможности команды SELECT : как можно "сложить" и "вычесть" выборки (UNION/INTERSECT/EXCEPT), или запомнить и использовать в рекурсивных запросах (CTE), что дают оконные функции (WINDOW) и соединения (JOIN).

Как обычно, для предпочитающих смотреть и слушать, а не читать - доступна видеозапись.

Читать далее
Total votes 36: ↑35 and ↓1+34
Comments7

Курс «PostgreSQL для начинающих»: #1 — Основы SQL

Level of difficultyEasy
Reading time13 min
Views43K

Этим постом я запускаю публикацию расширенных транскриптов лекционного курса "PostgreSQL для начинающих", подготовленного мной в рамках "Школы backend-разработчика" в "Тензоре".

В программе: рассказ об основах SQL, возможностях простых и сложных SELECT, анализ производительности запросов, разбор [не]эффективного применения индексов и особенностей работы транзакций и блокировок в этой СУБД.

Курс не претендует на лавры "войти в айти", поэтому подразумевает наличие у слушателя опыта программирования или работы с другими СУБД, и, главное, желания самостоятельно изучать тему работы с PostgreSQL глубже.

Для тех, кому комфортнее смотреть и слушать, а не читать - доступна видеозапись.

Читать далее
Total votes 35: ↑34 and ↓1+33
Comments30

Курс «PostgreSQL для начинающих»: #2 — Простые SELECT

Level of difficultyEasy
Reading time14 min
Views17K

Продолжаю публикацию расширенных транскриптов лекционного курса "PostgreSQL для начинающих", подготовленного мной в рамках "Школы backend-разработчика" в "Тензоре".

Сегодня поговорим о самых простых, но важных, возможностях команды SELECT, наиболее часто используемой при работе с базами данных - формировании выборок (VALUES), их ограничении (LIMIT/OFFSET/FETCH), фильтрации (WHERE/HAVING), сортировке (ORDER BY), уникализации (DISTINCT) и группировке (GROUP BY).

Как обычно, для предпочитающих смотреть и слушать, а не читать - доступна видеозапись.

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

Прекращайте оправдываться

Reading time5 min
Views105K

Привет, человек, %хабраюзер%, %юзернейм%, программист.

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

Разрешите объясниться.
Total votes 379: ↑324 and ↓55+269
Comments361

Как надёжно удалить аккаунты Facebook и других соцсетей. Все уходят в Telegram

Reading time6 min
Views28K
© Glenn Harvey, из статьи «Можно ли спасти социальные медиа?»

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

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

… и так далее.

Больше всего денег предлагают за разработку методов, как заработать ещё больше денег. Так устроено современное общество потребления, а лучшего миропорядка человечество ещё не придумало. Разработчики осознают проблему, но продолжают работать в фирмах с сомнительной репутацией.
Читать дальше →
Total votes 80: ↑66 and ↓14+52
Comments111

OAuth 2.0 простым и понятным языком

Reading time7 min
Views788K
Логотип OAuth 2.0

На хабре уже писали про OAuth 1.0, но понятного объяснения того, что такое OAuth 2.0 не было. Ниже я расскажу, в чем отличия и преимущества OAuth 2.0 и, как его лучше использовать на сайтах, в мобильных и desktop-приложениях.

Что такое OAuth 2.0


OAuth 2.0 — протокол авторизации, позволяющий выдать одному сервису (приложению) права на доступ к ресурсам пользователя на другом сервисе. Протокол избавляет от необходимости доверять приложению логин и пароль, а также позволяет выдавать ограниченный набор прав, а не все сразу.

Читать дальше →
Total votes 168: ↑153 and ↓15+138
Comments44

Туториал для туториалов. Как написать пользовательскую документацию

Reading time12 min
Views20K

Есть устоявшеёся мнение, что для хороших продуктов руководство пользователя не нужно. Очередной холивар на эту тему разгорелся в нашем рабочем чате. Я не до конца согласен с этим утверждением. 

Хороший интерфейс действительно должен помогать пользователю быстро понять продукт и научиться им пользоваться. Как всегда есть пара НО. 

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

Сервер «1С: Предприятие» на Linux: настройка доменной авторизации

Reading time6 min
Views23K

В данной статье мы рассмотрим настройку сервера «1С:Предприятие» для использования Microsoft AD в качестве системы авторизации клиентов 1С. Статья представляет собой описание успешно внедрённого решения, за основу брались различные статьи из открытых источников, в частности официальная документация разработчика 1С.

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

25 твитов об SSL-сертификатах

Reading time5 min
Views12K

SSL сертификаты. Для чего они нужны, какие бывают, от чего защищают, кто использует, как долго действуют, есть ли гарантия? Разберем основные вопросы – кратко, в режиме твиттера – не более 280 символов на ответ.

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

Страшные стоматологические истории: от 70-х годов — к нормальной медицине

Reading time12 min
Views29K
image
Рабочее место врача-стоматолога конца XX века. Музейный экспонат.

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

Я реально рад, что современные дети не застали этот особый аромат гвоздичного масла, йодоформа и бесконечные ряды пыточных установок УС-30 в одном большом зале. За всей этой красотой даже без намёка на ширмы бдительно надзирала пожилая медсестра, которую время от времени звал кто-то из врачей кодовой фразой: «Люся, давай». И Люся бежала замешивать на стекле шпателем Унифас-цемент, который выглядел как плохо пахнущая строительная субстанция для затирки швов. Работал он примерно так же.

Сегодня будет немного воспоминаний о том, какой стоматологии мы лишились и к чему пришли сегодня. Поговорим про свистящие турбинные наконечники, кипячение шприцов, введение слепочной массы в полости пациента и вообще всё то, что меняет мир к лучшему.
Читать дальше →
Total votes 88: ↑85 and ↓3+82
Comments105

1С в облаке: типичные ошибки при миграции и как их избежать

Reading time12 min
Views7.6K
Привет, Хабр! Меня зовут Николай Араловец, я эксперт по облачным технологиям в #CloudMTS.
Периодически я общаюсь с заказчиками, которые либо уже перенесли 1С в облако самостоятельно, либо только собираются это сделать. У каждого такого заказчика возникают свои сложности:

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

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

Поясню сразу: материал будет полезен для компаний, которые планируют размещать базы данных и приложения 1С в облаке.


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

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

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

Откровения кофеин-зависимого инженера: как писать документацию

Reading time8 min
Views7.2K
image
Четыре вида документации распределнные по двум осям: практика-теория и обучение-работа.

Недавно вышли два нашумевших поста:


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

Я выпил достаточно кофе, и я попытаюсь объяснить то, что знаю.

TL; DR: пишите документацию для решения конкретной проблемы для определенной группы людей, а не только для того, чтобы документация была.

Пишите хорошо


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

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

Самый полезный совет для написания документации — пишите в разговорном стиле. Воспринимать информацию из неформального текста намного проще.

Виды документации


Ладно, теперь вернемся к документации.
Total votes 27: ↑19 and ↓8+11
Comments6

Как добывают нефть

Reading time8 min
Views33K
image

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

Молодец, Сергей Семёнович. И дело хорошее сделал – музей открыл, и слова хорошие сказал, вот только несмотря на то, что долгое время проработал на руководящих должностях в нефтедобывающих регионах, немного ошибся с терминологией. «Нефтяных вышек» нет не только в Москве, их нет нигде в мире. Есть буровые вышки (см. фото вверху), являющиеся частью буровых установок, а нефтяных нет. А что же тогда есть?

А вот о том, какими способами и с помощью какого оборудования добывают нефть в России и мире я и постараюсь максимально доступным языком рассказать и наглядно показать в своей статье. (На фотографии вверху — буровая площадка в окрестностях Нарьян-Мара. Снимок не очень качественный, поскольку сделан автором через иллюминатор вертолёта).
Total votes 18: ↑18 and ↓0+18
Comments5

Почему практически бесполезно делать локомотив мощнее

Reading time10 min
Views87K
Физика движения локомотива такая: чем он мощнее, тем лучше он трётся о рельс и больше тянет. При этом чем больше вам нужно тянуть, тем тяжелее должен быть локомотив, чтобы не проскальзывать по рельсу. А чем тяжелее он будет, тем больше шансов повредить рельс. В итоге примерно к 2000-м годам вся эта система достигла равновесия: более-менее устаканились ТТХ отечественных локомотивов с учётом ширины колеи и допустимого износа пути.



То есть если нужно тянуть длинный товарняк, используется не более мощный и тяжёлый локомотив, а подцепляются вторая, третья или даже четвёртая секции.

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

Давайте покажу завод «Уральские локомотивы» — но не ту часть, где прекрасные Ласточки, а ту, где самый хардкор.
Читать дальше →
Total votes 182: ↑180 and ↓2+178
Comments457

Как писать хорошую документацию

Reading time14 min
Views16K

Несколько лет назад я услышал от одного коллеги историю. Он в то время работал начальником отдела технической документации в IT компании. Дело было на собрании, посвященном знакомству с новым техническим директором. Тот, пожав моему коллеге руку и узнав о его роли, пошутил: “Документация? Так ее же не читает никто! Двадцать первый век на дворе”.

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

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

Как написать удобный API — 10 рекомендаций

Reading time4 min
Views22K

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

Читать далее
Total votes 10: ↑6 and ↓4+2
Comments18

Доказательное программирование

Reading time16 min
Views18K

Внимание!


  • Содержание данной статьи никак не связано с докладом академика А. П. Ершова "Научные основы доказательного программирования" 1984г.
  • Статья содержит утверждения, способные вызвать вспышки гнева и неконтролируемой агрессии. За последствия автор статьи ответственности не несет!
  • В тексте упоминаются следующие языки программирования: Java, Swift, Kotlin, Scala, Go, Haskell и др.
  • Эта статья — антитезис. Автор ставит вопросы, но не считает своим долгом на все из них дать ответы.

В момент своего появления в Европе доказательная медицина казалась скандальной, неприятной и отвергаемой почти всем медицинским сообществом идеей. Даже в США, которые сейчас являются оплотом доказательной медицины, долгое время не хотели ее принимать. Основная мысль — докажи, что то, что ты собираешься сделать, реально поможет. Сейчас большинство назначений доктора делают исходя из приобретенных знаний и опыта. Но что если для некоторых ситуаций можно создать такой протокол лечения, следуя которому с болезнью сможет справиться даже неспециалист, и будет доказано, что этот протокол работает? Можно ли покрыть такими протоколами все известные недуги? Все, конечно же, нет, но какие-то — определенно, да.


И вот тут невольно возникает вопрос: не обошла ли медицина другую, казалось бы, не менее прогрессивную индустрию разработки программного обеспечения?

Читать дальше →
Total votes 94: ↑62 and ↓32+30
Comments158

Принципы для разработки: KISS, DRY, YAGNI, BDUF, SOLID, APO и бритва Оккама

Reading time8 min
Views238K
image

Хорошему программисту необходимо уметь совмещать свои навыки со здравым смыслом. Все дело в прагматизме и навыке выбора лучшего решения для вашей проблемы. Когда вы сталкиваетесь с проблемой при разработке ПО, вы можете воспользоваться базовыми принципами, которые помогут в выборе самого правильного подхода.

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

Последовательное применение этих принципов упростит ваш переход от миддла к сеньору. Вы можете обнаружить, что некоторые (вероятно) вы применяете интуитивно.

Принципов много. Мы остановимся на семи самых важных. Их использование поможет вам в развитии и позволит стать лучшим программистом.

1. YAGNI

You Aren’t Gonna Need It / Вам это не понадобится

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

Этот принцип применим при рефакторинге. Если вы занимаетесь рефакторингом метода, класса или файла, не бойтесь удалять лишние методы. Даже если раньше они были полезны – теперь они не нужны.

Может наступить день, когда они снова понадобятся – тогда вы сможете воспользоваться git-репозиторием, чтобы воскресить их из мертвых.
Читать дальше →
Total votes 22: ↑19 and ↓3+16
Comments9

Information

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