Как стать автором
Обновить
105
0
Евгений @Izaron

Программист C++

Отправить сообщение

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


Я конечно понимаю, что среди программистов ЧСВ безнадежно опухло у каждого первого, но создать бизнес по производству хлеба, если вникнуть во все тонкости, ничуть не легче писанины на каком-нибудь Ruby.

Покормим тролля


если вы не выкладываетесь как шахтер со всеми сопутствующими рисками, то почему вы должны получать больше него?

А почему бы тогда шахтёру наоборот, не выучить программирование и не зарабатывать как ваш оппонент? Это же в миллиарды раз легче, чем обеспечить всем шахтёрам зарплату, покрывающую их ущерб здоровью?


Вы скажете, что:


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

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

А почему обязательно бытовой?

По части оборонки технологии СССР не сильно отставали от США, а много где радикально превосходили.

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


СССР не умел делать нормальные ширинки для штанов, а расширить своё влияние на весь мир хотел. С тем, чтобы в кратчайшие сроки сногсшибательно вырвать вперед православный Пакистан в начале 20 века, идеология справилась превосходно, но затем на "мелочи" предпочлись не размениваться, что и похоронило этот социальный строй, устаревший к последней трети 20 века.

В таких опросниках практически всегда есть опция "I prefer to not disclosure", мне даже трудно представить выбор какого-то другого ответа. Потому что ты таким ответом четко держишь дистанцию между private life и учебой/стажировкой/работой.

Очень болел за автора во время прочтения, поражён волей к победе — продираться через такие бюрократические горы мне, живущему на забюрократизированной Родине, кажется нереальным.


Хотел бы сказать, что в России и странах бывшего СССР умных молодых людей очень много, несчётное количество. Достаточно посмотреть на количество и качество медалей на межнарах по математике/физике/информатике.


Можно сказать, что я оперирую результатами двух с половиной гениев-межнарников, готовившихся с детского сада и выпавших из воронки в 100к участников, но это не совсем так. Я видел уровень, например, участников всероса по информатике (этап перед межнаром), любой человек из топ-100 запросто может уложить на лопатки таких себе межнарников из полуторамиллиардной Индии и получить хотя бы серебро межнара в теории. В других предметах так же.


Но факт в том, что пресловутой "утечки мозгов" не особо наблюдается, и на место в вузе США скорее возьмут человека за углом этого вуза, чем абсолюта по астрономии в восточноевропейской стране (т.е. автора). История не нова — я видел истории, как никуда не брали, например, российского межнара по информатике.


P. S. Подаваясь на стажировки в закордонные IT-компании, можно увидеть такую же картину — будь ты хоть реальнейших семи пядей во лбу, из 50 заявок с резюме ты получишь вероятнее всего 50 "we have carefully reviewed your background and resume..."

То, что описано в посте — не таинственное машинное обучение, а самая что ни на есть мужицкая Математическая Статистика из четвёртого семестра тех. вуза ;)


Непонятно, зачем в самом конце статьи начинать тыкать пальцем в небо и что-то подгонять с k=1,3,5,..., когда можно использовать какой-нибудь крутой алгоритм аппроксимации функции (из курса Численных Методов третьего семестра) с потенциально наименьшей ошибкой. А если предположить, что средние вес и рост на нашей отрезке зависят линейно, то использовать линейную регрессию, приводя функцию к прямой.


Датасет наверное либо старый на несколько десятилетий, либо про подростков — часто вижу вокруг себя людей ростом 185-190, но по графику, мои наблюдения крайне маловероятны.

При описании алгоритма с применением медианы и синус-функции все скисли, и это было даже 3 строчки, а не 5. Кто-то произнёс слово ИИ и глаза у присутствующих снова загорелись.

Лень и наивность на грани фантастики. Интересно, что тогда вообще имели в виду эти люди под словом ИИ до медиан и синус-функций.

Почему-то не нашел в статье именно внятного ответа на вопрос "Почему" в заголовке. Давайте поиграем в телепатов и найдём правдоподобные объяснения для данного кейса с SQLite.


С языком Си понятно — const там просто обещание прогера не менять переменную после инициализацию, иначе UB будет. Что в С++:


  1. Если в каком-нибудь примере заменить const int a = 4 на int a = 4, то переменная все равно останется "effectively const", потому что ее значение в коде не меняется, и "достаточно умный компилятор (тм)" должен по идее сам отловить, что переменная и есть константа (точнее, оба варианта должны работать одинаково), неважно какой код написан. Можно считать const синтаксическим сахаром.


  2. "По идее" const/read-only данные пихаются в другой сегмент данных, например, .rdata. Но в чем смысл это делать для одной автоматической переменной? Намного быстрее оставить переменную на стеке, как если бы это был не const. И там все остальные переменные рядом, не надо лазить туда-сюда по сегментам.


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

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

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

При всем скептицизме, список в посте из 14 пунктов — это нифига не миддл, даже не близко… Ну кроме 7 пункта, там пусть менеджеры спорят, какого цвета должно быть меню.

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

Все равно намного лучше использовать что-то уже готовое, желательно использующееся повсеместно в компаниях. Гораздо лучше, если кандидат, например, знает про Bean Validation API и напишет


    @Email(message = "Email should be valid")
    private String email;

Чем если он герой соцтруда и ударно импортозаместит наш ответ империалистическому bicycle.


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

Дед Мазай может убить всех зайцев одним махом:


  1. Убрать трату времени на проверку работоспособности
  2. Избавиться от исследования жестокой лапши кода (архитектура проекта не так проста для кандидатов)
  3. Заставить всех следовать тестам
  4. Заведомо получить как-то работающий результат.

Если заранее написать множество хороших тестов, которое программа должна проходить после написания кода (использовав Test Driven Development).

Даже больше — множество точек окружности имеет мощность континуум, а множество вершин многоугольника не более чем счётное и при всём желании не будет равномощно первому множеству, так что можно утверждать, что аффтар налажал даже в метафоре.

Типа, исключения в питоне быстрее, чем в C++? Или просто сам питон настолько медленный, что относительная скорость исключений не так выделяется?

Скорее перед нами очередной фантазер или любитель топить печку канадскими долларами. А давайте еще сделаем LOCK TABLE таким дешевым, что все разговоры о уровнях изоляции в СУБД пойдут лесом. А давайте еще сделаем CPU таким быстрым, чтобы код могла написать баба Зина кактусом по клавиатуре, не задумываясь о различиях между TreeSet и HashSet.

Наверное, вы решили писать все-таки на Whitespace

Слышал историю, как в Гугле знакомый знакомого проводил заключительное интервью с чуваком, у которого было уже 4 собеса с идеальным фидбеком.


Он дал ему следующее задание для разогрева — есть массив из n даблов, это курс обмена USD <-> EUR по каждому из n дней. В начале есть 1 USD. Нужно ровно один раз поменять его в EUR, а потом в один из последующих дней назад в USD. Сколько может быть максимум в конце?


Он не смог решить это за ЧАС, и чуть не попал на работу, если бы не этот знакомый знакомого.

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

"А судьи кто?.."

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


Очень старая, но идеологически верная таблица https://habr.com/ru/post/108537/


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


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

На зарплату старшего научного сотрудника-академика.

Кажется, я видел похожий пост, только там, как в анекдоте, не "развернуть список", а "решить FizzBuzz", и не "функциональное программирование", а "машинное обучение", и не "тесты не нужны — мы формально доказали", а "надо было взять более глубокую нейронную сеть": https://habr.com/ru/post/301536/

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

Информация

В рейтинге
Не участвует
Откуда
Ян де нова о-ва
Зарегистрирован
Активность