10.9K subscribers
340 photos
17 videos
15 files
715 links
Архитектура | Программирование | Профессиональное развитие

Live канал - https://t.iss.one/soer_live

SOER CLUB - https://soer.pro или https://boosty.to/s0er

Бусты - https://t.iss.one/boost/softwareengineervlog

№ 5101661084
Download Telegram
Про логику
"Это же элементарная логика" - слышали такую фразу в спорах? Лично я слышу довольно часто, поэтому решил немного рассказать о том, что логика это очень не элементарная штука, а сложная наука.

Начать хочу с Аристотеля. Именно он первый, кто озвучил и записал три основных закона логики:

- Закон тождества (А - это А)
- Закон противоречия (два противоположных высказывания не могут быть одновременно истинными)
- Закон исключения третьего (либо А, либо не А, третьего не дано).

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

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

В наше время законы логики и само слова "логика" глубоко проникли в культуру. Поэтому на обывательском уровне мы как-то привыкли к тому, что "все что логично - правильно, и все что правильно - логично".

Проблема в том, что это утверждение "ложно", но чтобы понять ложность этого утверждения формальной логики Аристотеля уже недостаточно, нужно более мощные инструменты логики второго порядка.

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

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

На сегодняшний день, классическая логика состоит из:

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

Одно из интересных направлений в логике - это математическая логика (символическая логика), которую создал Джоржд Буль, и которая стала основой для доказательства теорий в математике. О ней говорят как о "логике, развиваемой с помощью математических методов".

Математическая логика, помогла в развитии конструктивной логики, которая в свою очередь помогла в построении автоматических доказательств теорем с помошью программного кода (используя соответствие Карри-Ховарда).

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

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

#мысли #логика
👍110🤡11🥱11🤔5👏4🗿4🔥32🕊2
Посмотрел доклад про team leadership с конференции YaTalks, посетить которую я рекомендовал ранее. По этой теме существуют разные мнения, поэтому споры про необходимость тимлида как отдельной единицы команды будут всегда. Но нужно понимать несколько важных моментов, поэтому выписал основные тезисы. Неважно тимлид вы, архитектор или программист, полезно для всех, кто хочет разобраться, как все работает.

1. Задача тимлида — настроить процессы в команде так, чтобы в его отсутствие ничего не развалилось. Однако это не все. Тимлид также транслирует цели бизнеса команде, оценивает задачи

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

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

Понравилось, что доклад идет меньше часа и очень информативен. Кстати, есть целый плейлист с подборкой выступлений по теме.
👍45🔥7🤡62
Какая ОС предпочтительнее для веб-разработчика

Споры о том какая операционная система лучше подходит для разработки никогда не утихнут. Поэтому я решил немного порассуждать о достоинствах и недостатках каждого из трех популярных семейств: Linux, Windows, MacOS.

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

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

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

Linux - операционная система главным недостатком которой является одновременно и ее главным достоинством - цена. Большая часть необходимого софта во-первых, есть в репозиториях, во-вторых совершенно ничего не стоит.

Установка программ на линукс наиболее удобна для веб-разработчика - просто apt-get install, yay -S, rpm, ну или что там используется в вашем дистрибутиве. В большинстве случаев все работает сразу.

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

Особенно приятно почувствовать силу Docker-а, который для Линукса нативен как никто другой.

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

Зато все работает гладко, есть поддержка и гарантия. В общем, если ваши карточки принимаются во всем мире, то жить на этой ОС вполне себе можно. Хоть и дорого.

Многих радует армовские (ARM - RISC) процессоры которые ничего не жрут, а прут. Поэтому производительность на высоком уровне. Интеловские процессоры (x86 - CISC) в макбуках - это кипятильники, которые лучше вообще не брать. Кстати, почему-то десктопные варианты маков не так популярны как ноутбуки. Пожалуй если и брать макос, то только вместе с хорошим ноутом.

Правда, для веб-разработки мощности любого мака более чем достаточно. Да и юниксовая совместимость позволяет юзать такие штуки как nvim и tmux практически нативно. Что тоже плюс.

Так что Mac - это хороший выбор почти без боли.

Ну и наконец Windows. Для веб-разработки он крайне неудобен, все нужно либо эмулровать, либо долго и муторно настраивать. Постоянно что-то работает, но не совсем как надо. Приходится гонять линукс через виртуалку, докер через виртуалку.
Плюс только в том, что можно ставить и играть в любые игры, ну и другие пакеты кракнутого софта тоже сравнительно легко найти и использовать.

В целом про Windows можно сказать коротко - боль и страдания. Зато почти все железо работает приемлемо и из коробки. Хоть это радует.

#мысли #рофл
👍112🤡55👎9👏7😁3🐳2🍌2💩1👌1🖕1
Насколько же нас приучили искать подвох во всем. Мол, есть какое-то секретное правило и оно здесь каким-то чудом приводит к ответу 1.

Правильный ответ 4.

Но огромное количество людей, почему-то поверили в ответ 1. Все эти объяснения "один мой знакомый профессор-математик сказал что будет 1, просто поверь".

Отчасти путает деление в виде ":" в старшей школе либо десятичные дроби, либо простые. Мало кому придет в голову написать 1:2x вместо 0.5х. Поэтому привыкли к тому, что приоритет деления ":" у нас уже "зашит" в дроби.

Отчасти люди думают, что при упрощении произведения 3*(8-6) до 3(8-6) мы одновременно поднимаем приоритет умножения (это не так).

Ну и простые преобразования, которые тоже могли бы намекнуть на правильный ответ, не все делают. А тем временем, чтобы получить 1 нужно чтобы в числителе были дополнительные скобки, тогда бы он стал равен 6:
6 = 36 : 6 = 36 : (3 * 2) = 36 : (3 * (8 - 2))

Как говорится: "Развивайте критическое мышление и не верьте всему что говорят в интернетах".

#мысли
👍58🤡314🤔3😁2
Стоило мне написать про приоритет арифметических действий. И тут же патроны меня поймали на примере.

Это что же получается, Вольфрам неправ? Нет. Прав.

Но тогда получается, что вы господин всезнайка Соер опять врете своим подписчикам? Нет. Я тоже прав.

И тут, наверное, кто-то скажет, что "это же элементарная логика - закон исключения третьего." Либо прав Вольфрам, либо Соер.

Но нет, тут есть проблема с первым законом, который обозначил ещё Аристотель - идентичность.

В следующем посте объясню почему здесь нет противоречия.
👍30🤡15
Все дело в том, что Вольфрам не интерпритирует ":" как оператор деления. Для деления есть специальный знак (см. скриншот). Поэтому для того чтобы корректно воспроизвести пример, нужно использовать знак деления.
А для ":" в документации Вольфрама нет внятного определения и он интерпретируется не пойми как, исходя из логики приложения, а не математики.
👍46🤡11🤣2
И тут мне сильно накинули вот этим. Получается, что a:b*c = a:(b*c)
Мой мир никогда не будет прежним.
🤯58🤡28🤔11👍7🤣5🤬4👎2🗿2
Теперь, когда я вас окончательно запутал, давайте дадим совместный ответ на вопрос, какой же правильный вариант у приведенного выше примера?
Anonymous Poll
18%
1
52%
4
13%
Пример некорректен
17%
99 потому что лопата
👍28🤡25🙈12🤮4
Наконец-то дошли руки до доклада Максима Смирнова про описания архитектурных решений. Из доклада подтвердил пару своих мыслей:
1. С4 модель давно уже пора называть С3, так как уровень кода он редко когда нужен.
2. Архитектура требует не только изменения описания, но корректировки некоторых устоявшихся подходов, которые реально уже никто не использует. Я в своих стримах по архитектуре давно прихожу к мысли о Agile архитектуре, которая не была бы скучной совокупностью документов, которые никто не читает. В Naris мы смогли некоторые элементы такого построения отработать и получается довольно интересно.

Рекомендую посмотреть доклад, есть много ключевых слов, которые можно изучить и понять как строится современная архитектура.
https://www.youtube.com/watch?v=QldYzcvmUFM
👍21🤡51
В общем Ваню из "В офисе" сильно бомбануло с обзора Елистратова, он написал пост "Бей своих". А я такой "хммм игруха про жизнь в СССР с правдивым сюжетом и без тупых шаблонов? Надо брать!"
👍121🤡27🔥10😁6👏3🤮21🖕1
Стрим "Как писать тесты и не сойти с ума"
https://rutube.ru/video/a3c419bdbf8eff9b843bcfc589c37e72/
🔥24🤮19🤡11👍5
Вот смотрю на реакции под постами про RuTube, и складывается ощущение, что люди думают, что RuTube - это моя мечта. Я бы с удовольствием продолжил работу на ютубе, получил серебряную кнопку и радовал людей контентом, продолжая думать какой ютуб офигенный... Но сам ютуб решил иначе - кнопки русским не давать, каналы русских закрывать, как бы намекая, что русским вообще не место в этом светлом царстве эльфов.
Постепенно меняется лента, меняется отношение и сейчас пять лет моего труда я вынужден выкинуть в помойку, потому что вот такой классный у нас оказался ютуб. И пугает не то что мы заблокируем ютуб, пугает то, что ютуб сам заблокирует нас. Поэтому не мы такие, жизнь такая.

Алексей тоже об этом задумался, думаю его тоже удивила судьба канала Темы Лебедева.
👍113🤡86🫡13🔥9💩9🖕54😢2
Вот и пригодилась моя старая группа ВК - теперь буду выкладывать свои видео там
👍55🤡26💩62🔥2🥱1🖕1😭1
На soer.pro в разделе Материалы / Стримы / Технологические моменты опубликовал запись видео "Ошибки и их устранение"
👍15🤡7🔥4👏21
Forwarded from Хакер — Xakep.RU
Исследователь взломал собственный банковский счет, имитировав голос с помощью ИИ

Журналист Джозеф Кокс (Joseph Cox) доказал, что голосовые ID, используемые банками в США и Европе, это не слишком безопасный способ входа в учетную запись. Систему удалось обмануть с помощью голоса, синтезированного ИИ-сервисом ElevenLabs.

https://xakep.ru/2023/02/27/voice-id/
👍36
Скоро во всех социальных сетях: " ИИ используя человека взломал банковский счёт, чтобы купить себе более мощную видюху."
🤣72🤡3😁2
А вообще согласен с шуткой, что наиболее опасным будет не тот момент когда ИИ сможет пройти тест Тьюринга, а когда начнёт его специально заваливать. База.
👍78😁17🤔3🥱1
В общем, Skynet оказался тоже не пальцем деланный и сменил имя на ChatGPT. Чтоб никто не догадался.
😁88🤡6💯6🤯4👍1😈1