Pull to refresh
23
0
Игорь Алексанов @Jigglypuff

Программист

Send message

Ну так, собственно, инфраструктура развивается, те же самые darling/syn/quote тому доказательством. Уже вот даже watt появился, который это добро в WASM тащит.


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


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

В вышеприведённом примере экспортирована будет лишь функция bar. А если оставить атрибут __all__ пустым, то из модуля не будет экспортироваться вообще ничего. При попытке импорта чего-либо из такого модуля будет выдана ошибка AttributeError.

Разве? Насколько мне известно, по полному имени функцию (сабмодуль/класс/итд) можно импортировать вне зависимости от __all__, он влияет только на import * from bar. В доке я тоже не нашел ничего подобного.
Я правильно понимаю, что если в bitcoin/ethereum пулы внезапно отключаются, то сеть (на некоторое время) замедляется, но продолжает функционировать; в предложенном же подходе, если большинство (кстати, какое большинство? Византийское, абсолютное, какое-то еще?) провайдеров порядка перестанут отправлять транзакции, то сеть на некоторое время «умрет»?

Мотивация с жестко выбранным числом 12 не кажется достаточно обоснованной. Да, это не единая точка отказа, но и не N участников сети, как в существующих открытых блокчейнах.

Ну и в целом, начинать вайтпейпер с отсылки к 1984, а затем оперировать списком доверенных сущностей — как-то иронично, что ли…
Да даже если и было, если и прыскать ядом — то в направлении обидевшего, а не на всех вокруг.
В данной ситуации мне не нравится, что на достаточно высоком уровне происходит конфликт, который (уже сейчас) выливается в стычки, задевающие непричастных людей. Не опускаясь до обсуждения «токсичности», «недружелюбности» и прочих упоминаемых терминов, мне кажется, что такое явление потенциально может негативно сказаться на сообществе в целом, вызвав раскол и снизив тем самым синергию.
Да, с переводом — хороший вариант. У меня так знакомый из Екб в СПб перебрался.

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

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


Это не совсем так. Расскажу про мой опыт собеседования в яндекс.

Собеседование по скайпу:
* Начали с ревью «плохого» кода на плюсах. Обсудили отсутствие виртуального деструктора, отсутствие проверки на самого себя в операторе присваивания, deep/shallow copy, сырые/умные указатели.
* Теория алгоритмов и структур данных. Как внутри устроен квиксорт, что в нем и как. Красно-черное дерево, его нутрянка, гарантия балансируемости.
* Три не особо сложных алгоритмических задачки. Про hashmap, про рекурсию что-то, ну и про бинарный поиск.

Я без особых тупняков ответил на всё, у интервьювера претензий не было. На всё про всё ушло 40 минут, и оставшиеся 20 минут мы общались уже на просто технические темы, импровизируя. Дошли до того, как складываются float'ы на уровне битиков.

Итог прохождения скайп-интервью: 1 час, 100% ответов, покрытые темы — знание специфики языка, его темные углы, теория алгоритмов и структур данных, практика алгоритмов и структур данных, глубокие технические моменты.

Приглашение на очную встречу. 3 интервью по часу.

1. Один удаленный собеседующий. Две задачи. Первая — на линал (которого в требованиях к вакансии не было, и который не повторялся). Вторая — на знание стандартного алгоритма (который я знал, но из-за предположения о том, что задача на динамическое программирование, отмёл). Интервьювер почти не задавал наводящих вопросов, на вопросы отвечал сжато.
2. Два собеседующих. Три задачи. Первая — простая, на сортировку подсчетом. Вторую не особо помню, что-то про hashmap. Третья — на циклический буфер, но хитро поданная. Наводящие вопросы задавали, живо обсуждали решение, даже коснулись специфики языка.
3. Два собеседующих. Две задачи. К сожалению, их я забыл, но тоже на алгоритмику.

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

Итог прохождения очного интервью: 3.5 часа, 50% ответов, покрытие тем — знание линала, знание стандартных алгоритмов и умение их вспомнить в нужный момент, практика алгоритмов и структур данных, совсем чуть-чуть языковой специфики.

Оффера не поступило.

С моей точки зрения, не прошел собеседование я абсолютно справедливо.

Однако, мне осталась непонятной некоторая однобокость: если бы те же 3 секции распределили как «знание языка программирования», «проектирование», «алгоритмы и структуры данных», то вполне возможно, что результаты были бы 80%/80%/50%. А может и нет. В любом случае, не было бы ощущения, что для работы важен только один навык, набиваемый, при желании, за 3 месяца на hackerrank (полноценно выучить плюсы сложнее, чем натренироваться решать задачки).

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

Ну и, собственно, почему я пишу этот комментарий. Как мне кажется, процитированный в начале фрагмент, не совсем корректен. Алгоритмическая секция, по крайней мере в моем случае, была если не единственной (если учитывать скайп), то явно стояла во главе угла.
Это не хорошо и не плохо, но на этом, как мне кажется, стоит всё-таки акцентировать внимание.

Disclaimer again: Я не зол и не обижен на Яндекс за то, что я не прошел собеседование. Помимо Яндекса я в то время получил 2 весьма приятных оффера и в Яндекс, если честно, собеседовался из интереса. Это просто опыт одного собеседования, о котором мне захотелось рассказать, не более.
Учился, и еще как. Не на оценки (хотя по тех.специальностям у меня преимущественно пятерки), но извлекая максимум знаний.
Было сложно, очень сложно временами, да.
Тем не менее, результат, в целом, себя окупил.
Смириться с несовершенством мира.

Нам и врачи иногда гомеопатию выписывают; и тетка в ЖЭКе может сказать, что формуляр неправильно заполнен, хотя он списан с образца; и даже нормальный с виду тимлид может сказать «да тут делов-то на десять минут, пару строк кода поправить» с запросом на смену архитектуры приложения.

Было бы круто жить в мире абсолютно компетентных людей, да вот невозможно это.

Отказала девочка-эйчар — обидно, ну да и фиг бы с ней. Идём на хх, ищем очередную подходящую вакансию, try again.

Рано или поздно это к чему-то приведёт.
Да, справедливо. Другой вопрос, что это трудно сделать, пока не начнешь.
Хабр можно читать как тех.ресурс, а можно — как аналог Реддита/Пикабу, в поисках просто интересных штук без особой интеллектуальной нагрузки.
Так что это такой, довольно косвенный показатель :)
С одной стороны да, а с другой — по немейнстримной технологии учебных материалов будет меньше.
Так что тут нужно балансировать.
Ну и рынок вакансий мониторить, чтобы понимать, что вот на этом стеке джуны нужны.
Я (да и мои знакомые) собеседовал 30+-летних.
Зачастую бывало, что человек на бумажке не может написать функцию, которая складывает 2 числа (и это не преувеличение).
Отсюда и идёт недоверие.
Если скилл есть — проблем не будет.

Разумеется, доли дискриминации есть: кому-то может быть морально некомфортно быть начальником у человека, который старше на 5-10 лет.
Но и вакансий же тоже не 2 штуки.

В общем, было бы желание.
Если хватает мотивации, силы воли и времени — почему нет?
На «плато стабильности», по идее, собственных скиллов и накопленного теоретического базиса должно хватать, чтобы начать решать проблемы самостоятельно.
Разумеется есть вырожденные случаи: вам вполне может повстречаться NP-полная задача, которую начальство требует решить за гарантированный полином. И внезапно приходит осознание, что вам срочно нужно доказать, что P=NP :)
Но на то это и вырожденные случаи, чтобы встречаться не так уж и часто. Большинство специалистов худо-бедно работают, даже не имея ответы на все вопросы.
Спасибо на добром слове!
Ну, три года просто сидеть — это какой-то из ряда вон выходящий треш. Без интернета — тем более. На такое совет у меня всего один: беги оттуда, беги в страхе и ужасе, беги как можно скорее.
У тебя есть опыт «как не должно быть». Ищи, отталкиваясь от того, чтобы не было как сейчас.
Начинающему программисту сгореть довольно трудно. Это длительный процесс. Скорее нужно перетерпеть процесс перерождения в мидла и выбрать работу не ту, на которую взяли, а ту, которая интересна.
Тем не менее, можно разнообразить энтерпрайз-практику сайд-проектами, которые по душе.

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

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity