Pull to refresh
18
0
Александр Медведев @Tyiler

дровосек

Send message

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

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

статья показывает что они

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

насколько я знаю наоборот пишут на питоне, а потом нейросети переписывают

нет, вы не правы. Фрейм-ки для НСетей уже давно все написаны, переписаны, все написаны на плюсах (и мбыть си еще есть мало). На питоне используют уже, потому что быстрее, проще писать и поддерживать. Стоит не программист буквально, а его время, точнее время для выхода продукта (time to market), потом развитие продукта.

библиотеки питона это буквально уже обёртка над С++ кодом, а не наоборот

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

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

Еще дополню. Зайдите на любой сайт этих фрейм-ов для нс, и увидите массу туториалов с картинками и примерами (на питоне все конечно), кучу форумов забитых ответами на все вопросы начинающих. Потом поищите "а как на плюсах использовать", увидите куцый пример в папке examples на гитхабе, и все на этом.

Приветствую.
Спасибо за работу.

> Писать или не писать нейронную сеть на С++

С выводом не согласен только, и думаю не я один.

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

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

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

И что дальше?

Понятно, что завернули его.

Дык это ваша проблема, а не его. Вы "смотрите на людей", др словами по одежке встречаете.

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

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

Еще дополню.

Какая нахй "интрига" ?

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

О чем вы вообще "учитель"? Работу доделывать до конца не пробовали никогда? Чему вы учите!?

впитывая социальные модели поведения

гуманитарщина из вас так и прет, начиная от сравнения людей и ягод и кончая вот этим вот.

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

здесь тоже бредятина.

Есть уверенные в себе люди, а есть не уверенные. Мидл, по вашему, уверенный в себе человек получается. А причем здесь вообще знания, опыт и тд, если достаточно уверенно о себе заявить?

Вот именно из-за таких "коучей" и имеем на местах хитровыеб-ых уверенных "мидлов", но оставляющих за собой вот это вот:

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

Перефразирую тогда, если не понятно написал. Не превращайте ресурс в УГ.

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

Приветствую.

С QVariant не удобно работать. Если хотите по настоящему гибкий диалог, то делайте свой диалог с ноля (c qwidget). Как делать: смотрите исходники qt, там все понятно, например, вот как метод exec в qt реализован.

Вот так у меня своя реализация диалога выглядит:

И НЕ пишите статьи (и заметки) больше об этой фигне, пожалуйста.

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

Приветствую.

Тоже на удаленке несколько лет уже, как и товарищ выше.

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

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

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

Статья является следствием полученного личностного опыта

Привет всем.

Мой опыт использования pybind11 в плюсовом проекте:

-на таком встроенном питоне сложную логику писать и отлаживать очень тяжело (с вызовами pandas, например)

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

-перевод структур из плюсов в питон и обратно тоже гемор

-память отжирал, уже не помню чем решилось, мбыть и так осталось

В общем, что в итоге. Убрали его полностью из проекта, теперь питон работает отдельно, дергаем его по сети, все хорошо.

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

wxWidgets с дизайном из начала 90х внутри дизайн из 90х вы имеете ввиду, и что, его не надо переписывать, он работает, обкатан на большем количестве пользователей, чем ваше изделие. А снаружи wxWidgets не хватает только удобной настройки стилей виджетов, больше ничего. Шаблонной жести там тоже не много. Ладно, дальше не буду спорить.

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

Приветствую.

Покритикую немного:

  • код примера окна написан плохо: #ifdef _WIN32 int APIENTRY wWinMain и тд пользователю это зачем. Если так придется писать везде, то не представляю как будет выглядеть приложение от 10к строк

  • в репе код тоже страшен

  • нет разделения кода для разных ОС, все склеено как и в примере #ifdef по месту

  • класс window.cpp весь в одном файле и занимает 3к строк кода, все остальные классы так же устроены

  • есть такая вещь как регистр символов, у вас классы, структуры, обычные переменные, статич переменные и тд - все в нижнем регистре. Как вы их отличаете?

  • что еще.. ладно

В общем, обычная поделка, долго не протянет.

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

Совет: возьмите wxwidget, добавьте туда удобную настройку графики (аналогично css на вэбе, или qss в qt), мне вот только ее не хватало, когда работал с wxwidget, остальное там все уже есть.

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

Мудрых надо слушать, все цитаты имеют место, ничего не ново, войны были есть и будут, история и размер нашей страны как бы "намекают".

В том, что он профессиональный программист, я лично сомневаюсь, ну да ладно, работодатель рассудит.

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

Никакого троллинга, так ему и советую сделать по-правде. И ничего в этом страшного не вижу. Если закроют - посидит значит, если возьмут на фронт - повоюет, внукам будет что рассказать. В любом случае уму-разуму наберется. Зато не опозорится, точнее прекратит позориться там, где он сейчас.

Согласен. Надо было не дергаться, а отвечать за слова, совсем не факт, что его бы закрыли, мбыть просто пальчиком погрозили (не знаю, конечно, что он там успел настрочить).

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

На счет "гораздо лучше чем когда они вместе эвакуировались подальше от всего этого происходящего трындеца" не соглашусь, как кто-то сказал: "за границей проще жить, но тяжело выживать, а в России наоборот". Здесь родственники и тд, а там.. отношение местных к этим беглецам будет соответствующее их положению, когда потратят все деньги.

Правильно, пусть возвращается, пока еще есть деньги на обратный билет. Дальше, здесь идет с повинной и вступает в ряды добровольцев, будет дронами управлять, если не все мозги пропил пока. Или здесь переобуется (как Роман Протасевич) и будет топить за то что надо, у него же аудитория есть уже какая-то, тоже вариант в общем.

Если так тяжело собрать и/или использовать, то не буду ни собирать, ни подключать либу.

А сделаю сервис на другом языке, пусть на питоне, например, где тот же pytorch вызывается в одну строчку. И буду по сокету слать задачки какие надо там.

(еще есть решение (костыльное и недобное, ну кому как) для вызова питона из плюсов - pybind)

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

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

поддержка длинных чисел и тензорных вычислений

в библиотеках же есть это все: openblas, cudnn и тд. Подключить либу - не долго и не тяжело обычно с опытом становится. Они для этого и нужны, чтобы в язык не тащить новых операторов и не расширять его (плюсы уже и так разбухли, да и другие языки тоже, C# тот же "засахарился" совсем)

По фану делал, так же как и вы свой. И да, видите, никому не надо оказался или не знают, а продвигать его мне лень. (кстати, надо тоже закинуть его в этот список что вы привели)

Information

Rating
Does not participate
Location
Екатеринбург, Свердловская обл., Россия
Date of birth
Registered
Activity