Обновить

Флаги в программировании: наглядный пример для новичков

Уровень сложностиПростой

Обсудим использование флагов в коде на примерах.
Статья предназначена для тех кто только начинает осваивать программирование и испытывает трудности в определении флага (переменную булевого типа)

Например есть такая задача перебрать данные и определить есть ли там нужные нам для примера возьмем ситуацию из жизни: переберем мешок с картошкой, нужно узнать есть ли там гнилая мешок представим списком [] из 1 и 2, где 1 - означает гнилую картофелину.

Как бы мы это делали? сначала мы бы взяли одну картофелину и посмотрели на нее, и так делали бы до конца или пока не встретили гнилую....

А в конце основываясь на наблюдениях делали бы выводы.

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

Читать далее

Структура пространства пифагоровых троек

Уровень сложностиПростой

Пожалуй, о пифагоровых тройках не слышал только тот, кто не слышал слова "математика", а тот, кто о них слышал, имеет все основания полагать, что о пифагоровых тройках известно всё, что могло быть узнано за их почти четырёхтысячелетнюю историю. Однако, я покажу их с ракурса, который, по-видимому, до сих пор не был известен.

Читать далее

Способы импорта файла OST в Outlook всех версий

Уровень сложностиСредний

Хотя Outlook создает файл OST, его нельзя напрямую импортировать в Microsoft Outlook. Но это можно сделать с помощью стороннего решения. В этом посте я объясню все возможные способы импорта OST в Outlook всех версий.

Outlook использует два типа файлов данных Outlook. В большинстве учетных записей используется файл данных Outlook (.pst). Ваши электронные письма обычно доставляются и хранятся на почтовом сервере, если у вас есть учетная запись Microsoft Exchange. Вторая форма файла данных, известная как автономный файл данных Outlook (OST), позволяет вам работать с сообщениями, даже если вы не можете подключиться к почтовому серверу в вашей системе. Далее мы обсудим, как импортировать OST в профиль Outlook?

Что такое файлы OST?

Когда вы создаете новую учетную запись в Microsoft Outlook, создается зашифрованный файл данных Outlook, известный как Offline Storage Table (OST). Это связано с определенным профилем на определенном ПК, где была настроена ваша учетная запись. Вы можете использовать файлы данных Outlook, если у вас есть учетная запись MS Exchange и вы хотите работать в автономном режиме (.ost). Они чрезвычайно полезны в случае простоя сервера или ненадежного интернет-соединения.

Однако в следующей части мы рассмотрим различные методы преобразования OST в файл данных Outlook.

Читать далее

Разница между Type и Interface в TypeScript

Уровень сложностиПростой

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

Если Вам лень читать, то можете сразу посмотреть видео на данную тему:

И так, приступим

Пишем парсер на Python за 5 минут

Уровень сложностиПростой

В данной статье мы рассмотрим, как парсить сайты быстро и эффективно при помощи нового инструмента LxmlSoup. Библиотека является аналогом популярной BeautifuulSoup, повторяющий её синтаксис. Что касается скорости, LxmlSoup превосходит BeautifulSoup в 2 раза, за счёт библиотеки lxml под капотом.

Читать далее

Распределенное машинное обучение с помощью PySpark

Уровень сложностиПростой

Решил взяться за изучение распределенного машинного обучения и освоившись в основах инструментария MLLib от PySpark, хочу привести конкретный пример применения библиотеки. Заодно рассказать: а зачем вообще идти в эту сторону?

Simple. Fast. Scalable. Unified.

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

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

Устанавливаем pyspark.

Читать далее

Как развернуть площадку электронных торгов на сервере другой компании?

Всем, привет! Меня зовут Паша, и я основатель компании NetWarm LTD создатель бренда HyperGuard, специализирующейся на защите от сетевых атак. Хочу поделиться с вами историей о том, как мы сопровождали разворот площадки электронных торгов на нашей базе с применением нашей защиты.

Читать далее

Собеседование на понимание. Процесс, поток, зелёный поток, GIL в Python

Уровень сложностиПростой

Процесс, поток, зелёный поток, GIL в Python.

Цикл статей "собеседование на понимание" направлен на объяснение простыми словами различных тем. Сегодняшний вопрос на собеседовании backend python: "Расскажите чем отличается поток, процесс, зеленый поток, для чего нужен GIL"

Читать далее

Apache Maven — введение в автоматизированную сборку проектов (часть 2)

Уровень сложностиПростой

Привет, Хабр!  В прошлой части мы установили Maven на компьютер и проверили, что всё работает.

Продолжим погружаться в Maven. Создадим наш первый проект, через командную строку.

Посмотрим на иерархию созданных каталогов. И разберём инструменты Maven.

Читать далее

Что же такое Оумуамуа на самом деле?

Уровень сложностиСложный

Приветствую, мои дорогие друзья!

Прочитал недавно эту статью, потом эту, и такую, и ещё вот такое, с таким.

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

В каждой из этих статей вырисовывается какой-либо из двух вариантов, чтобы это могло быть.. Оумуамуа (далее по тексту НС - нечто серое). Либо достаточно неуверенно приводя одну рабочую схему естественного происхождения негравитационного ускорения НС, напроч отметая возможность ручного управления (или что у этих гуманоидов там вместо рук..). Либо, как и я считаю, показывая несостоятельность отдельных моделей происходящего на НС. Но в таком случае к сожалению остаётся неясным что же это такое, поскольку общее поведение не похоже на оное у зонда - НС прошёл мимо солнца, и стал ускоряться, как если бы на него "дул" солнечный ветер, а если нет, то зачем зонду делать так? Почему именно пройдя солнце, дать газу? И не просто дать, а чуть поддать, при этом уменьшая это ускорение с расстоянием.

Читать далее

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

Уровень сложностиПростой

Дилемма инвестора.

«Если рынок эффективен, то всё равно что покупать – всё уже заложено в цене. Если не эффективен, то на нём господствуют инсайдеры, а вы просто лох, который принёс деньги».

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

Весь мир активы, а люди в нём инвесторы.

Дело в том, что объектом инвестирования может быть абсолютно что угодно: от луковиц тюльпанов, почтовых марок и бутылок с вином, до акций транснациональных компаний, сложных деривативов и крипты. Есть примеры, когда люди очень неплохо заработали даже на обычной туалетной бумаге, вовремя её скупив и перепродав на пике ажиотажа в пандемию. Даже воспитание детей есть форма инвестирования, кстати не самая плохая. При этом абсолютно все инструменты инвестирования несут как возможность заработать, так и риск полной потери вложений. Даже если вообще никуда не вкладываться и оставить все свои активы в деньгах – за углом скрываются инфляция, обвал обменного курса, денежные реформы, новые налоги и мошенники всех мастей. То есть мы всё равно инвестируем, даже, если никуда не инвестируем.

Как шанс заработать, так и риск обесценивания или полной потери стоимости активов связан с двумя концептуальными вещами: 1) мир, в котором мы живём, принципиально носит вероятностный характер и 2) не существует такой вещи как объективная или абсолютная стоимость.

А теперь подробнее.

Вероятность сказочно разбогатеть равна 50% - либо разбогатеешь, либо нет.

Повторю – мир, в котором мы живём, принципиально носит вероятностный характер. Ярче всего это проявляется на квантовом уровне, где неопределенность есть суть существования элементарных частиц. Однако и привычный нам макромир полностью лишён стопроцентной определенности или однозначности. Даже такое обычное действие, как бросание камня с балкона, не гарантирует, что камень упадёт на землю. Есть вероятность, что сосед с нижнего этажа поймает его на лету и заберет себе, или вас схватит паралич и вы не сможете вообще бросить камень, или старый охотник, целясь в ворону, неожиданно попадёт в ваш камень и на землю упадёт уже не камень, а кучка песка. Да, эти события маловероятные, но они случаются. Пересмотрите фильм «Магнолия» – там упоминаются именно такие события из реальной жизни.

А если нет определенности, то значит и нет предсказуемости, а значит мы никогда не можем знать, чем закончится наша инвестиция – прибылью или потерями. И даже совершенно надёжное предприятие может закончиться «чёрным лебедем». Тем не менее, не всё так грустно. В конце концов полного хаоса за окном не наблюдается. (Конец первой части).

Читать далее

Вывод результатов тестов на светодиодную RGB-ленту

Уровень сложностиПростой

Купил себе светодиодную ленту, чтобы добавить уюта комнате. Лента подключается к HomePod mini и ей можно управлять через Apple Home. Ну и первым делом захотелось попробовать выводить на нее результаты запуска тестов. Лента не предоставляет SDK или API, чтобы управлять ей напрямую, поэтому самым простым способом оказалось это сделать через Shortcuts.

Читать далее

Фантастические RXJS-операторы и где они обитают: Часть 1

Уровень сложностиСредний

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

Читать далее

Размышления о модели целенаправленного поведения для ИИ

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

Читать далее

Git — вездесущий

Прошу сильно не пинать, за мое первое авторство здесь. Речь об использовании гита на примере СЭД Directum RX, где всем правит GUI. Что-бы все это не выглядело, как призыв работать в папках локального репозитория Directum RX - Base и Work, примеры будут на "вымышленной" директории. Но с системными репо Directum RX можно работать так же. В статье код выполняется в ОС Windows, в Linux все будет работать так же.

Сразу по существу, если создать произвольную тестовую папку C:\gitest и выполнить из консоли, в этой папке следующее:

Читать далее

Новый/Старый динозавр на с++

Уровень сложностиПростой

Как я решил опять стать программистом и закончил Яндекс Практикум по С++

Вкратце опишу, как я к этому пришел в 46 лет.


В 90-х, когда я учился в институте я был повернут на программировании. Началось это еще в школе, когда я заполучил в собственность компьютер Спектр 001 с 32 килобайтами(!) памяти, в котором было три игры, язык бейсик и описание ассемблера. Три игры наскучили через три дня. Язык бейсик был изучен еще за месячишко и началось программирование в кодах.
В институте я устроился в компьютерную лабораторию через пару недель после начала первого курса и сразу попал в микро тусу любителей языка С. Затертая книжка Кернигана и Ричи переходила там из рук в руки и довольно быстро я углубился в написание систем защиты. Система DOS таковую не позволяла, поэтому все писалось своими руками - доступ на чтение/запись, доступ на исполнение, полная блокировка компа и всякие похожие вещи. До тех пор, пока я не купил случайно в книжном 3  тома Бьярна Страуструпа.
Открылся дивный мир объектно-ориентированного программирования. Первым пошел в свет "Питон"(игра, а не язык:)) который был объектом, благодаря чему в него можно было играть нескольким человекам. Множить питончиков на экране было приятно и легко. Дальше больше - библиотека окон под DOS, текстовый редактор. А потом у нас начался предмет "робототехника", куда я пришел делать лабу. Сел перед компом, где монитор был размером дюймов 7, клавиши нажимались на глубину 1.5 см и очередь на который была пару недель. Вернулся в компьютерный класс и накатал эмулятор процессора (уж позабыл как он там назывался на PDP-11). Все по-взрослому, со средой для дебага, работающими основными портами и экраном, где можно было писать мнемокодом а не цифровыми кодами. Преподаватель по робототехнике долго тестировал разные команды, в итоге поставил мне автомат по робототехнике и с тех пор лабы по ней проходили на PC.
Конечно, начитавшись Старуструпа, больше всего мне хотелось написать свой компилятор. Поэтому я делал дипломную работу систему создания тестов для учащихся, часть которого был «свой» язык программирования.
Немного жаль, что после всего этого я случайно устроился сисадмином и пошла совсем другая ветка моей постинститутской карьеры. Правда я все равно программировал, но на всякой ерунде – типа языка RSL – который изобрела компания R-Style для своих программ. Потом, так же по случаю, изучил Oracle в плане запросов и администрирования, потом немножко Java, а спустя какое-то время вообще вышел из IT и занялся бизнесом.
Не так давно релоцировался в Европу, а немножко загодя, понимая, что мне предстоит смена  всего и вся, вытащил из закромов С++, который остался, пожалуй, каким-то незакрытым гештальтом и пошел в Яндекс Практикум на C++ девелопера.

Собственно о курсе.

Читать далее

С чем съесть рис? Как ChatGPT помогает ритейлу давать рекомендации при покупках онлайн

Уровень сложностиПростой

Привет, Habr!

На связи Елизавета Колмакова, я Data Scientist. Сейчас работаю в группе разработки продукта по рекомендации товаров в ритейле и расскажу о том, как мы с командой построили собственную рекомендательную систему, которая дает полезные осмысленные рекомендации и приносит реальную прибыль бизнесу — ленту «С этим покупают». Поделюсь процессом ее создания и тем, как нам помог в этом ChatGPT.

Читать далее

AJAX для начинающих

Уровень сложностиПростой

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

Для решение такой задачи уже есть специальные механизмы. Они умеют делать запрос на сервер для получение данных. Так они помогают оживить страницу, сделать ее производительнее и улучшить пользовательский опыт.

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

Читать далее

Миграция в Таиланд: все, что вам нужно знать о типах виз

Уровень сложностиПростой

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

Таиланд - страна с удивительной культурой, богатым наследием и гостеприимным народом. Для большинства иностранных граждан необходимо иметь визу для въезда в Таиланд.

В Таиланд есть разные типы виз, в зависимости от цели поездки.

Однократная туристическая виза (TR) подойдет тем, кто едет на короткий срок и не планирует оставаться в Таиланде на дольший период. Она стоит 1900 бат, плюс нужно заплатить дополнительные сборы на границе и за продление визы на 30 дней. TR выдается на 90 дней пребывания в стране.?

Время ожидания на однократную туристическую визу зависит от конкретного посольства, но в среднем процесс занимает до 5 рабочих дней. Лучше всего проверить информацию на сайте посольства. (https://moscow.thaiembassy.org/)

Читать далее