Pull to refresh
0
0
Дмитрий Леонов @DmitryLeonov

Наблюдатель

Send message

При первом включении 2FA для Google-аккаунта тоже сначала привязывают телефон, только потом дают выбрать другие варианты. Фейсбук с твиттером вроде бы тоже так себя ведут, давно не проверял. Так что попавший под раздачу Github тут скорее приятное исключение.

Только при этом она называется "Обходим обязательную привязку телефонного номера к своей учетной записи на GitHub".

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

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

Gods, который на самом деле Gogs (что видно даже по ссылке), не готовый сервис, а сервер для самостоятельного развертывания.

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

Маляры, моляры, какая в сущности разница, кого/что распознавать. С малярами получилось даже концептуальнее.

«At the end of the stack» в данном контексте, конечно, ни разу не про конец стека, а просто «В конце концов».

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

Говоря о том, что их обычный вызов не отличается от других функций и разница проявляется только при вызове через указатели, Шилдт как-то забыл упомянуть, что обычный вызов из члена класса — это и есть вызов через указатель this.

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

Это всё прекрасно, но механизм виртуальных функций не работает в конструкторах/деструкторах (собственно, откуда и возник исходный вопрос).
https://isocpp.org/wiki/faq/strange-inheritance#calling-virtuals-from-ctors
https://isocpp.org/wiki/faq/strange-inheritance#calling-virtuals-from-dtors

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

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

Забавно, что сам Томлинсон забыл не только содержимое письма, но и точную дату — в 2010 он вспоминал, что вначале вообще где-то ляпнул про 1972, потом «провел исследования и выяснил, что дело должно было быть в 1971», так что долгое время писали просто про конец 1971.

Т.е. для него это просто была обычная рутина, идея застолбить место в истории совершенно не волновала.

Тоже плевался от маковского подхода к переключению между приложениями. Бесплатная AltTab проблему убрала.

Ну не совсем с Бураном, а уже после, но да, как основа специализированных CASE — почему бы и нет. Но не школьников же этим мучить.
Он только не взлетел (как универсальное средство, по крайней мере) в том числе и потому, что в 1995 году уже мало кого интересовали многостраничные блок-схемы (даже в рамках структурной декомпозиции, не говоря уж об объектной). А с небольшими вполне справляется и старая нотация, так что громкое позиционирование вступало в резкий диссонанс с тем, что воспринималось всё просто как какая-то ловля блох.
Ну и коварный удар в спину нанёс UML.
Я бы даже сказал, что конкретно этот фрагмент лежит открыто лет так десять:
bugtraq.ru/library/books/attack3/intro/#levin
Только не вполне корректно называть Feedly просто ридером — есть же куча клиентов (собственно ридеров), использующих его только как агрегатор подписок (тот же Reeder под iOS/Mac и Nextget Reader под Win).
Это всё прекрасно, но как пользователя меня в новом интерфейсе заботят не новые свистелки, а то, что в айпадном приложении остался лишь портретный режим, что само по себе резко снизило юзабилити.
Потерялись статические глобальные переменные, ситуация с которыми точно такая же, как с функциями.

Ну и если смешивать в рассказе о static все его области применения, то имеет смысл до кучи добавить и простые глобальные переменные, которые тоже располагаются в статической памяти, заодно есть повод рассказать о порядке вызова их конструкторов.
Расшифровка многоалфавитного шифра с фиксированным ключевым словом aka шифра Вижинера — вполне тривиальная задача, в которой частотный анализ очень даже помогает.
Вообще-то наоборот сейчас самое время их брать — по крайней мере, для тех, кто хочет параллельно или в виртуалке запускать что-нибудь виндовое.

Ну и аргумент в виде болезненного опыта перехода с PowerPC так себе, в те времена процессоры развивались гораздо более бурно.

Information

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