Работаю на маке много лет, как так вышло что всё что тут написано я считаю отличным функционалом которым удобно и легко пользоваться? И с удовольствием пользуюсь, и полноэкранным режимом, и ланчпадом (вообще постоянно) и активными углами (лучшая фишка со времён нортон коммандера).
Но ладно, допустим всё это можно назвать вкусовщиной и делом привычки, но объясните мне одну штуку, - вот я пересел на мак в 2009-м году с винды, и макос выходит новый каждый год, и каждая новая версия что-то вносит что-то удаляет, но в целом тебе не надо вообще заморачиваться поставив новую версию - она всё равно будет тем же самым макосом. да я даже уверен что если взять сейчас меня из 2009 и посадить за современный макос, то в принципе мне будет всё сходу понятно, потому что в целом все элементы там же логически и где что искать всё на тех же местах...
Но каждая грёбаная версия винды это цирк с конями, я помню первый переход с 3.11 на 95, ну допустим это был большой скачок, всё сильно поменялось, допустим. Через несколько лет выходит ХР, в которой всё на новых местах, сука. Потом семерка, СУКА, СУКА, СУКА, восьмерка (ну ладно эта была похожа на семерку), потом десятка, ДА ВЫ СУКА ИЗДЕВАЕТЕСЬ ЧТОЛИ? И теперь великолепных богоподобных приверженцев винды собираются в очередной раз как собачек павлова накормить полностью изменённым интерфейсом... Как это можно объяснить логически, это что-ли пользователе ориентированный пример дизайна к которому надо стремиться?
это вроде не анекдот, а реальная ситуация, как дело было.
да, оказалось что графит крошится и в условиях невесомости мелкие острые твёрдые крошки графита которые не падают на месте и лежат, а заплывают везде - и в органы дыхания и управления (а графит токопроводный) - это проблема.
правда и русские не совсем идиоты и карандаши в них были восковые.
с другой же стороны НАСА которые «потратили миллион долларов» на самом деле сначала писали фломастерами, а потом заключили контракт с какой-то частной компанией производителем ручек которые действительно за миллион долларов (только свой, коммерческий, а не налогоплательщиков) разработали ручку и сами пришли к ним и единственное условие было что НАСА упоминает о том что в космосе пишут ручками этой компании…
ручки эти кстати потом замени и наши карандаши и американские фломастеры
Потом приходит менеджер и мягко объясняет вам что вы токсичный член команды, и если оба подхода работают, и разницы между ними нет (миллисекунды) то обижать других членов команды критикуя их решения подрывает командный дух. Такие дела...
По моему многие просто неправильно понимают суть собеседования в яндекс. С чего-то им кажется что их туда набирают чтобы в дружном коллективе решать интересные задачи с помощью нестандартных подходов. Что будут какие-то глобальные задачи, где надо будет используя опыт предыдущих работ выдумывать интересную архитектуру которая способна справиться с этой задачей. Но эти должности в любой крупной компании уже давно заняты уважаемыми хорошо зарекомендовавшими себя людьми. Совсем не новичками со стороны. А новых сотрудников набирают сидеть и копать от забора и до обеда. Ну вернее сидеть и херачить то, что как раз те самые уважаемые люди придумают за вас. Никому не нужно ваше знание async/await или опыт предыдущих проектов, от вас как раз требуется прочитать что требудется выполнить в конкретной небольшой задаче, где уже всё будет написано что использовать и как «корпортаивно» писать за вас, и нахерачить максимально непротиворечивым способом чтобы это было лекго покрыть тестами. Чем меньше будет творчества в этом, тем лучше — тем стабильней будет решение.
И вот тут как раз со стороны яндекса это именно то, что они от вас хотят — чтобы кандидат мог стабильно сидеть и кодить что сказали, без фигни. А то если каждый будет выдумывать как ему и что делать, каждый подтянет свои любимые библиотеки в проект — любой проект на дно пойдёт.
Так что может это вам было не интересно, а яндекс-то как раз проверяет всё как надо яндексу.
Много комментариев, возможно кто-то написал уже, но я вначале тоже был возмущён этой обдираловкой (Германия), особенно с учётом того что телевизор почти не смотрю. Но довольно быстро стало понятно на что идут эти деньги. Невооружённым взглядом видно что в телеэфире исчезающе мало рекламы. Особенно это хорошо заметно на контрасте с тем как приезжаешь навещать родителей, когда любой российский эфир каждые пять минут взрывается такое впечатление на 10 минут всякими полезными рассказами о том что нужно срочно купить с песнями, плясками и весёлыми сценками. Немецкое телевидение в этом плане намного более лояльно к зрителю, здесь довольно часто и целый фильм можно без единой рекламной вставки посмотреть, и между передачами никакой рекламы не бывает довольно часто. И вообще телевидение из-за этого выглядит более «спокойным».
У меня такая же фигня от природы — один глаз дальнозоркий, второй близорукий. Всё подтверждаю, действительно мозг отлично справляется со стереоскопичностью картинки даже если чётко видит только один глаз. Вблизи опорный один глаз, вдали опорный другой, понять каким глазом ты смотришь можно только глубоко сконцентрировавшись именно на этом. Не испытывал никаких проблем со зрением лет до 35-ти, потом уже когда стало подсаживаться само по себе, ну там уставать глаза, краснеть, слезиться, вдруг оказалось что глаза разные при проверке. И действительно если закрываю один рукой — все расплывается вблизи, если другой — вдали.
именно так оно выглядит, если у человека масштаб не 100%. есть такая проблема у движков браузеров, масштабирования и округления. если элементы собраны из нескольких тайлов, при масштабировании рандомно становятся видны артефакты математики с округлением. проблема не такая редкая, как может показаться, например огромное количество людей в современном мире работает за 2к мониторами с масштабом 120% в браузере и сайты сделаные с такой наивной идеей о том что элементы можно собрать из тайлов выглядят именно так. не знаю почему об этом ещё никто не сказал. браузеры во многом сейчас рассчитаны на то что элементы будут спрайтами с композицией (один элемент — один спрайт и они все могут быть наложены друг на друга и залезать друг на друга).
Сделали так же с разницей в том что наши клиенты грузились по PXE по сети, в них не было дисков вообще. Один образ не всех, tmpfs под каталог пользователя на старте. Но написать я хотел не про это. Написать я хотел про то, что делал я колл-центр, в котором компьютеры просто «стояли» если за ними не сидели операторы. То есть стояла такая себе комната в 40 всегда включённых станций и сменные операторы приходили-уходили, иногда их было 10 (ночью) иногда 40. Так вот «вечный» рдп, переподключающийся к логину после тайм-аута без ввода пользователя-пароля (каждую минуту) с сорока компьютеров клал сервер за два дня. у ссаной винды просто вытекала память от бесконечных подключений к логину по сорок раз в минуту. слов приличных нет это охарактеризовать. пришлось сделать бинарник показывающий .bmp на весь экран и выходящий по нажатию любой кнопки, и сунуть его в тот же цикл что и xfreerdp, перед ним. получилось даже корпоративненько, если на .bmp влепить лого организации.
нещадно плюсую. на самом деле «удаляторы» не очень нужны для мака. в нем приложения самодостаточные папки, почти всегда достаточно удалить папку с приложением чтобы грохнуть его полностью. в последних ОС вообще зачастую достаточно иконку в мусор кинуть и приложение будет удалено.
максимум у самых хитросделаных приложений будут те самые LaunchDaemons/LaunchAgents еще, но они без самого приложения безвредны, да и автор судя по тексту сам знает где они лежат.
чота прохладная история какая-то, я обновил и компьютер свой и макбук и везде anyconnect работает нормально. да, показывает перечеркнутый круг на иконке и предупреждает что программа эта фуфло при запуске, но работает. да я прям щас через него сижу!
А самые огненные вещи, которые меня всегда поражают, это пункты которые давно превратились в нечто вроде карго культа и кочуют из инструкции в инструкцию как какие-то заклинания.
Например «Виртуализация в BIOS`e должна быть отключена.» это заклинание времен Sierra когда с этим были проблемы, железо эппл было еще без технологии виртуализации, а большинство процов уже с. Но с тех пор эппл давным давно уже на современных процессорах и vt-d и vt-x выключены везде и работают прекрасно. Мало того без них не работает нативная виртуализация макос (например будут проблемы с докером). Но нет, этот пункт передается как сакральное знание, странно что еще не включили пункт плюнуть три раза через левое плечо.
«При установке систем 10.13, 10.14, 10.15 обязателен драйвер apfs.efi в папке Drivers64UEFI.» такая же шляпа, но поновее. У загрузчика Clover были проблемы прочитать apfs партиции на заре 10.14, но с тех пор его обновили и с этим давно нет проблем.
«Ошибка, с которой я столкнулся, заключается в следующем: при самой установке хака на жесткий диск система зависает, когда остается несколько минут до завершения. Я долго с этим мучился, пока не попробовал использовать более старую версию Clover.» — скорее всего проблема в биосе и каком-то его параметре. Старый Clover просто игнорирует эти параметры и грузится, а в новом они корректно передаются в систему и там вызывают панику. Какой-нибудь «RTC Advanced» или что-то типа того. Надо смотреть конкретно в каждом случае на каждую мать и читать на форуме.
«WhateverGreen» — костыль, сборник всяких хаков и опций для Clover и параметров, это практически даже не бинарный kext, просто куча всяких опций и параметров. Со временем большая часть их действительно влияющая на загрузку была адаптирована в Clover и он реально больше не нужен, если покупать железо из мануала с tonymacs86, хорошо совместимое с macos. Вероятно конечно этот аддон пригодится если брать какой-нибудь экзотический процессор типа i9 с какой-нибудь графикой которая чуть более прогрессивная чем та о которой знает Apple. Но и то при должном упорстве можно найти какую именно опцию включает этот kext и поставить самому.
Теперь осталось загуглить что такое HiDPI и дописать статью.
В кратце — эппл давно столкнулась с проблемой что все очень мелкое на тех разрешениях что они стали использовать с выходом retina (10 лет назад, на минуточку), и ввели HiDPI режимы. Это когда весь интерфейс рендерится в два (или даже дробное количество) раз плотнее. У меня дома 4к монитор и интерфейс 1920х1080, только он в два раза четче и это просто обалденно. А на работе 2к монитор и интерфейс 1920х1080 и это выглядит почти так же как 4к, просто волшебно.
нет, физический доступ не нужен, но я бы не стал особо опасаться этой проблемы. суть такова, что современная память настолько плотно упакована, что соседние биты (физически, в чипе) влияют друг на друга и могут непроизвольно меняться в зависимости от того как изменились соседи. так вот суть этой атаки в том, что мониторя как меняются биты в памяти твоего процесса, можно со временем понять что за биты лежат в соседних строках. которые, о боже мой, даже могут принадлежать соседнему процессу. обратите внимание, что речь о физических битах. а в современных компьютерах где есть как минимум виртуальная память, то есть ты вообще никак не можешь понять как выделенная тебе память будет уложена физически, а на самом деле ещё и не один слой абстракции помимо этого, и кто там возможно окажется соседом по строкам вообще никогда не узнать, это максимально призрачная проблема. вот эта строка например в описании «To exploit this effect, we developed novel memory massaging techniques to carefully place the victim's secret data in the rows above and below the attacker's memory row.» говорит о том что они целенаправленно записали искомые данные в строки над и под строки атакующего процесса (максимально эксплуатируемая конфигурация), а потом 34 часа долбили чтобы их прочитать. звучит душновато.
«есть на стороне противоположной удалению», «исключить нагрузки на 2-3 дня», и прочие дельныуе советы, вот прямо слезу пустил от умиления. когде мне вырезали все четыре зуба мудрости за раз (это потом я конечно понял что надо было не соглашаться на добрые слова доктора «будет нормально!»), следующие два-три дня я мог думать только одну мысль «зачем я на это согласился?» и выть лежа в кровати. как-то даже в голову не пришло ничего о физических нагрузках или жевании чего-либо, знаете ли…
Вообще изи.
либо Player->hits(Monster $monster), и weapon существует тогда как property внутри player, там же можно изменить xp, либо Monster->isHitBy(Player $player), тогда наоборот, в этом методе можно получить параметры Player, и оружие и изменить его xp.
Как вы решаете в вашем проекте лучше, так и делаете, либо сверху вниз отношения, либо наоборот.
ООП — инструмент и концепция, он позволяет сделать так или эдак. Как его применить — архитектура приложения.
Если бы инструмент диктовал неизменные правила для каждого случая, это был бы жуткий черный кошмар из миллиона правил которые уже после первых тысяч трех давно противоречили друг другу и являлись списком исключений. И никто бы не пользовался таким инструментом.
Работаю на маке много лет, как так вышло что всё что тут написано я считаю отличным функционалом которым удобно и легко пользоваться? И с удовольствием пользуюсь, и полноэкранным режимом, и ланчпадом (вообще постоянно) и активными углами (лучшая фишка со времён нортон коммандера).
Но ладно, допустим всё это можно назвать вкусовщиной и делом привычки, но объясните мне одну штуку, - вот я пересел на мак в 2009-м году с винды, и макос выходит новый каждый год, и каждая новая версия что-то вносит что-то удаляет, но в целом тебе не надо вообще заморачиваться поставив новую версию - она всё равно будет тем же самым макосом. да я даже уверен что если взять сейчас меня из 2009 и посадить за современный макос, то в принципе мне будет всё сходу понятно, потому что в целом все элементы там же логически и где что искать всё на тех же местах...
Но каждая грёбаная версия винды это цирк с конями, я помню первый переход с 3.11 на 95, ну допустим это был большой скачок, всё сильно поменялось, допустим. Через несколько лет выходит ХР, в которой всё на новых местах, сука. Потом семерка, СУКА, СУКА, СУКА, восьмерка (ну ладно эта была похожа на семерку), потом десятка, ДА ВЫ СУКА ИЗДЕВАЕТЕСЬ ЧТОЛИ? И теперь великолепных богоподобных приверженцев винды собираются в очередной раз как собачек павлова накормить полностью изменённым интерфейсом... Как это можно объяснить логически, это что-ли пользователе ориентированный пример дизайна к которому надо стремиться?
это вроде не анекдот, а реальная ситуация, как дело было.
да, оказалось что графит крошится и в условиях невесомости мелкие острые твёрдые крошки графита которые не падают на месте и лежат, а заплывают везде - и в органы дыхания и управления (а графит токопроводный) - это проблема.
правда и русские не совсем идиоты и карандаши в них были восковые.
с другой же стороны НАСА которые «потратили миллион долларов» на самом деле сначала писали фломастерами, а потом заключили контракт с какой-то частной компанией производителем ручек которые действительно за миллион долларов (только свой, коммерческий, а не налогоплательщиков) разработали ручку и сами пришли к ним и единственное условие было что НАСА упоминает о том что в космосе пишут ручками этой компании…
ручки эти кстати потом замени и наши карандаши и американские фломастеры
Потом приходит менеджер и мягко объясняет вам что вы токсичный член команды, и если оба подхода работают, и разницы между ними нет (миллисекунды) то обижать других членов команды критикуя их решения подрывает командный дух. Такие дела...
Блин, я читал и прям ждал что в конце будет реклама «хочешь стать программистом? трёхнедельный курс с гарантией трудоустройства…»
Прям немножко расстроился. Без такой вишенки статья выглядит хорошей, но неполной =(
И вот тут как раз со стороны яндекса это именно то, что они от вас хотят — чтобы кандидат мог стабильно сидеть и кодить что сказали, без фигни. А то если каждый будет выдумывать как ему и что делать, каждый подтянет свои любимые библиотеки в проект — любой проект на дно пойдёт.
Так что может это вам было не интересно, а яндекс-то как раз проверяет всё как надо яндексу.
RactDOMServer.renderToString()?
это же стандартный SSR на реакте?
именно так оно выглядит, если у человека масштаб не 100%. есть такая проблема у движков браузеров, масштабирования и округления. если элементы собраны из нескольких тайлов, при масштабировании рандомно становятся видны артефакты математики с округлением. проблема не такая редкая, как может показаться, например огромное количество людей в современном мире работает за 2к мониторами с масштабом 120% в браузере и сайты сделаные с такой наивной идеей о том что элементы можно собрать из тайлов выглядят именно так. не знаю почему об этом ещё никто не сказал. браузеры во многом сейчас рассчитаны на то что элементы будут спрайтами с композицией (один элемент — один спрайт и они все могут быть наложены друг на друга и залезать друг на друга).
Сделали так же с разницей в том что наши клиенты грузились по PXE по сети, в них не было дисков вообще. Один образ не всех, tmpfs под каталог пользователя на старте. Но написать я хотел не про это. Написать я хотел про то, что делал я колл-центр, в котором компьютеры просто «стояли» если за ними не сидели операторы. То есть стояла такая себе комната в 40 всегда включённых станций и сменные операторы приходили-уходили, иногда их было 10 (ночью) иногда 40. Так вот «вечный» рдп, переподключающийся к логину после тайм-аута без ввода пользователя-пароля (каждую минуту) с сорока компьютеров клал сервер за два дня. у ссаной винды просто вытекала память от бесконечных подключений к логину по сорок раз в минуту. слов приличных нет это охарактеризовать. пришлось сделать бинарник показывающий .bmp на весь экран и выходящий по нажатию любой кнопки, и сунуть его в тот же цикл что и xfreerdp, перед ним. получилось даже корпоративненько, если на .bmp влепить лого организации.
максимум у самых хитросделаных приложений будут те самые LaunchDaemons/LaunchAgents еще, но они без самого приложения безвредны, да и автор судя по тексту сам знает где они лежат.
Например «Виртуализация в BIOS`e должна быть отключена.» это заклинание времен Sierra когда с этим были проблемы, железо эппл было еще без технологии виртуализации, а большинство процов уже с. Но с тех пор эппл давным давно уже на современных процессорах и vt-d и vt-x выключены везде и работают прекрасно. Мало того без них не работает нативная виртуализация макос (например будут проблемы с докером). Но нет, этот пункт передается как сакральное знание, странно что еще не включили пункт плюнуть три раза через левое плечо.
«При установке систем 10.13, 10.14, 10.15 обязателен драйвер apfs.efi в папке Drivers64UEFI.» такая же шляпа, но поновее. У загрузчика Clover были проблемы прочитать apfs партиции на заре 10.14, но с тех пор его обновили и с этим давно нет проблем.
«Ошибка, с которой я столкнулся, заключается в следующем: при самой установке хака на жесткий диск система зависает, когда остается несколько минут до завершения. Я долго с этим мучился, пока не попробовал использовать более старую версию Clover.» — скорее всего проблема в биосе и каком-то его параметре. Старый Clover просто игнорирует эти параметры и грузится, а в новом они корректно передаются в систему и там вызывают панику. Какой-нибудь «RTC Advanced» или что-то типа того. Надо смотреть конкретно в каждом случае на каждую мать и читать на форуме.
«WhateverGreen» — костыль, сборник всяких хаков и опций для Clover и параметров, это практически даже не бинарный kext, просто куча всяких опций и параметров. Со временем большая часть их действительно влияющая на загрузку была адаптирована в Clover и он реально больше не нужен, если покупать железо из мануала с tonymacs86, хорошо совместимое с macos. Вероятно конечно этот аддон пригодится если брать какой-нибудь экзотический процессор типа i9 с какой-нибудь графикой которая чуть более прогрессивная чем та о которой знает Apple. Но и то при должном упорстве можно найти какую именно опцию включает этот kext и поставить самому.
генератор уже советовали вместо велосипеда с циклом?
В кратце — эппл давно столкнулась с проблемой что все очень мелкое на тех разрешениях что они стали использовать с выходом retina (10 лет назад, на минуточку), и ввели HiDPI режимы. Это когда весь интерфейс рендерится в два (или даже дробное количество) раз плотнее. У меня дома 4к монитор и интерфейс 1920х1080, только он в два раза четче и это просто обалденно. А на работе 2к монитор и интерфейс 1920х1080 и это выглядит почти так же как 4к, просто волшебно.
либо Player->hits(Monster $monster), и weapon существует тогда как property внутри player, там же можно изменить xp, либо Monster->isHitBy(Player $player), тогда наоборот, в этом методе можно получить параметры Player, и оружие и изменить его xp.
Как вы решаете в вашем проекте лучше, так и делаете, либо сверху вниз отношения, либо наоборот.
ООП — инструмент и концепция, он позволяет сделать так или эдак. Как его применить — архитектура приложения.
Если бы инструмент диктовал неизменные правила для каждого случая, это был бы жуткий черный кошмар из миллиона правил которые уже после первых тысяч трех давно противоречили друг другу и являлись списком исключений. И никто бы не пользовался таким инструментом.