LINUX.ORG.RU

для машинного обучения

смотря для чего именно. Если собираешься жонглировать какой-нибудь регрессией или деревьями для скоринга, то пофиг. А если заниматься глубокими сетями — то питон.

ymn ★★★★★
()

что бы предпочли

для машинного обучения

Питон, у нас р&д команда на нём пилит там свои нейронки и всё такое, я так понимаю в этой области он практически вне конкуренции.

Для веба

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

oxo
()
Последнее исправление: oxo (всего исправлений: 1)
Ответ на: комментарий от Hertz

глупость, однозначно.

Для машинного обучения предпочтительней Python.

Вообще области применения у C# и Python слишком различны. Поэтому их сравнение имеет смысл только в отношении их пригодности для интересующих задач.

Partisan ★★★★★
()

перспективнее

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

Dred ★★★★★
()

Я недавно писал немного на C#. Честно говоря после Python там черт ног сломит. Тебе никто не объяснит чем Mono отличается от «не mono», IDE под linux только на основе intellij idea (Monodevelop я не смог нормально завести), наименование пакетов - ад и садомия, батареек в комплекте нет и искать пакеты нужный пакет тот еще ад (найдите рабочий SDL :)). За то ты сможешь писать и под Android и под Desktop и язык приятный, на Java чем-то похож. Для меня решающий фактор был батарейки. В Python из коробки тебе есть и email и есть куча готовых свежих интеграций ко всему, но IDE тоже только от джетбрейнсов нормальная. Полагаю что Python жрет больше RAM, чем C#, но это не точно.

В целом все сильно зависит от задачи и C# я стал бы брать только при разработке под Windows, Python для всего другого что не требует компиляции, не критично к памяти или же требует очень быстрой разработки. Если же мне нужно под Android писать я бы предпочел все же Java. Язык, на мой взгляд, такой же инструмент как DB или message broker, так что смотри в первую очередь на хотелки.

deterok ★★★★★
()

Ещё полгода назад я бы однозначно сказал, что сисярп не нужен, но с недавним внезапным разворотом мелких может оказаться, что в скором будущем они додавят и C# будет вообще везде.

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

WitcherGeralt ★★
()

Machine learning - Scala, Python. Web - Java, Python. Desktop - Java, C# (Win), Qt. Mobile - Java, Qt, React Native + что там от яблок

bvn13 ★★★★★
()
Ответ на: комментарий от Hertz

4.2

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

И по популярности и по скорости роста python опережает C#.

Кроме того, судьба C# слишком сильно зависит от MS. Если MS решит, что проект кросс-платформенного C# им не нужен, то не будет никакого кросс-платформенного C#. Да и сам C# они могут прикрыть или поставить на паузу.

Кроме того, последние подвижки MS в переносе C# на линукс выглядят малоинтересно, т.к. ни WinForms ни WPF не перенесены на линукс и возможно не будут никогда. А это один из немногих активов мог бы конкурировать C#.

Активного желания пиарить C# и делать его действительно популярным я не наблюдаю.

Например тот факт, что новый visual studio code написан не на C# - говорит очень о многом.

В свое время, чтобы поддержать продвижение дотнета, visual studio была переписана на C#+WPF.

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

нет ничего универсального, в разных областях разные инструменты

Ford_Focus ★★★★★
()
Ответ на: комментарий от RazrFalcon

ТС напоминает нейросеть написанную на метапроге.

OSBuster
()
Ответ на: комментарий от mxrd2

Например тот факт, что новый visual studio code написан не на C# - говорит очень о многом.

А на чем?

P.S. Что ж вы все такие ленивые, нет чтоб сразу вставить контекстную ссылку на источники новостей.

Aber ★★★★★
()
Ответ на: комментарий от Aber

Например тот факт, что новый visual studio code написан не на C# - говорит очень о многом.

А на чем?

Говорят на JS.

mxrd2
()
Ответ на: комментарий от mxrd2

Кроме того, судьба C# слишком сильно зависит от MS. Если MS решит, что проект кросс-платформенного C# им не нужен, то не будет никакого кросс-платформенного C#. Да и сам C# они могут прикрыть или поставить на паузу.

разработка c# в частности и .net в целом выведена в отдельную структуру - .net foundation, где от msft назначается ровно один человек

Кроме того, последние подвижки MS в переносе C# на линукс выглядят малоинтересно, т.к. ни WinForms ни WPF не перенесены на линукс и возможно не будут никогда. А это один из немногих активов мог бы конкурировать C#.

WinForms реализованы в Mono.

Для .net core есть avalonia UI, копирующая идеи wpf/xaml

Активного желания пиарить C# и делать его действительно популярным я не наблюдаю.

что есть «активное желание»?

Например тот факт, что новый visual studio code написан не на C# - говорит очень о многом.

  1. может быть хотя бы потому что vscode базируется на сторонней разработке, к которой c# не прикручивался вообще никак?

  2. может быть хотя бы потому что vscode не прибит гвоздями к технологиям msft, и создан для разработки не только и не столько под .net, сколько под web? Для разработки именно под .net есть Visual Studio for Mac, которая суть ребрендированный и доработанный под макось MonoDevelop

Ford_Focus ★★★★★
()
Ответ на: комментарий от Aber

нет чтоб сразу вставить контекстную ссылку на источники новостей

Вот это самая показательная ссылка.

https://insights.stackoverflow.com/trends?tags=python,c#&utm_source=so-ow...

Python is the 2nd most popular language on GitHub (seems like surpassed Java). https://www.reddit.com/r/Python/comments/75slcp/python_is_the_2nd_most_popula...

Python surpasses C# in popularity among developers https://insights.stackoverflow.com/survey/2018/#most-popular-technologies

Тут надо заметить, что исторически stackoverflow это очень MS-центричный сайт, т.е. MS технологии среди его активных пользователей скорее всего популярнее чем в среднем по интернету.

Python displaced C++ in TIOBE https://www.infoworld.com/article/3294899/python-scales-language-popularity-c...

mxrd2
()
Ответ на: комментарий от Ford_Focus

может быть хотя бы потому что vscode не прибит гвоздями к технологиям msft

Как ты не можешь понять. Это может свидетельствовать о том, что C# с точки зрения самой MS - мертвый язык, с сомнительными перспективами.

создан для разработки не только и не столько под .net, сколько под web

У тебя что-то с логикой. JB WebStorm, например написан на Java. Где связь между тем на чем написана среда и тем для чего она?

VS - исторически умела в веб и именно так, в том числе, и позиционировалась. Был даже период, когда активно вкладывали в улучшение поддержки веб-технологий в VS, и даже тратили деньги на маркетинг всего этого. Да-да, сообщалось, что поддержка html+css+js в VS теперь столь хороша, что нужно рассматривать ее как веб-среду. Просто ты это пропустил и не знаешь об этом. Кроме того была попытка MS позиционировать VS как среду для вообще всего - например для php.

mxrd2
()
Ответ на: комментарий от mxrd2

Как ты не можешь понять. Это может свидетельствовать о том, что C# с точки зрения самой MS - мертвый язык, с сомнительными перспективами.

настолько мёртвый, что roadmap расписана сразу на несколько лет вперёд, паралелльно которой ведётся несколько side-проектов

У тебя что-то с логикой. JB WebStorm, например написан на Java. Где связь между тем на чем написана среда и тем для чего она?

Ровно как и у тебя - с чего был сделан вывод, что side-проекты (тем более такие, как vscode) msft должны быть привязаны ровно к одному языку?

Но вообще стандартизируйся wasm пораньше, и была бы ненулевая вероятность, что никакого TypeScript не появилось бы вообще.

Просто ты это пропустил и не знаешь об этом

я отлично помню и ублюдочные webforms, и потуги принести php на windows. VS и сейчас умеет сильно больше, чем требует обычному пользователю VS - например, разработку на плюсах под linux

И да, на тот момент .net/c# мне были интресны ровно никак

Ford_Focus ★★★★★
()
Последнее исправление: Ford_Focus (всего исправлений: 2)
Ответ на: комментарий от Ford_Focus

Хорошо я объясню иначе. Я исхожу из того, что скайп тоже написан на electon + js, как и vscode.

Если бы MS пыталась бы убедить кого-то в том, что .net/С# - кросс-платфоменные технологии с хорошим будущим, то и скайп и vscode были бы написаны на .net+C#+WPF. Но MS посылает тебе совершенно другой «месседж».

Говорить о том, что необходимый для этого перенос WPF - невозможен, это глупость. Для MS это возможно. Мегапроект WSL (который MS, кажется признала провалом и будет сворачивать) - это возможно, а перенос WPF - невозможно, ну-ну.

Далее. Мы видим что JS (и все остальные) съедают C#. C# - это угасающий язык.

Если бы MS хотел послать тебе месседж о том, что он намерен не давать C# падать, то он как-то бы реагировал на это. А реагирует он вот как. Сам пишет программы на JavaScript, MS активно продвигает и усиливает JavaScript через свою vscode, MS делает TypeScript для JavaScript.

Далее. Оракл развел активность вокруг Java.

Новый проект в котором идея интероперабельности языков будет выведена на еще более высокий уровень. (Это в java-то где и так c этим всё хорошо: котлин, скала, груви какие-то, житон, рино - всё работает в одной программе) Борьба с медленным стартом путем AOT компиляции. Self-contained программы, нативные exe. Разделение стандарной библиотеки чтобы можно было шипать только нужную часть и не «тащить за собой всю жаву». Чем на эту угрозу C# отвечает MS? Новой версией TypeScript.

Далее. VS это эталон IDE по уровню autocomplete, intellisense. Конкурент только IDEA, но она для Java. В чем предлагается писать на C# кроссплатформенным программистам?? В vscode? Кто скажет vscode, тот VS никогда не видел. Это наверное чтобы сделать кросс-платформенных C# программистов disadvantaged.

Портирование CLR на линукс меня ни в чем не убеждает. Это делается скорее всего по каким-то совершенно другим мотивам. Может быть как-то связано с Linux. Может быть это побочный продукт какой-то внутренней azure-кухни. Там могут быть очень хитрые многоходовки.

mxrd2
()
Ответ на: комментарий от RazrFalcon

А потом пусть глянут на все твои ответы.

anonymous
()
Ответ на: комментарий от mxrd2

VS это эталон IDE по уровню autocomplete, intellisense.

Уже можно без решарпера пользоваться?

anonymous
()

Ну Питон — это больше альтернатива Си. А Си-шарп больше вместо Пёрла.

anonymous
()
Ответ на: комментарий от Ford_Focus

roadmap расписана сразу на несколько лет вперёд

Это ни о чем не говорит.

В свое время например активное развитие WPF было одномоментно по-скотски свернуто. И многие сильно обиделись.

Кроме того, что конкретно там в роадмапе на несколько лет вперёд написано для того, чтобы сделать средне-популярным C# cross-platform general-purpose language и отвечать на угрозы со стороны все остальных языков? «Мы будем переносить CLR и framework на линукс» - ну замечательно, только это на ситуацию никак не влияет.

mxrd2
()
Ответ на: комментарий от mxrd2

Если бы MS пыталась бы убедить кого-то в том, что .net/С# - кросс-платфоменные технологии с хорошим будущим, то и скайп и vscode были бы написаны на .net+C#+WPF. Но MS посылает тебе совершенно другой «месседж».

на данный момент «.net+C#+WPF» и близко не имеют тех возможностей кроссплатформы, что есть у js/electron, никто обратного не утверждал.

«C# для браузеров» aka Blazor еще даже не стабилизирован, но находится в активной разработке

Говорить о том, что необходимый для этого перенос WPF - невозможен, это глупость.

  1. WPF прибит к DirectX
  2. как уже сказано, дело не только WPF

Борьба с медленным стартом путем AOT компиляции. Self-contained программы, нативные exe. Разделение стандарной библиотеки чтобы можно было шипать только нужную часть и не «тащить за собой всю жаву». Чем на эту угрозу C# отвечает MS?

в .net core это было с самого начала. И эти люди серьёзно обсуждают развитие .net?

Кто скажет vscode, тот VS никогда не видел.

видев и работав с vs, я предпочту vscode. В vscode мне разве что поддержки sln не хватает, но это не критично

Может быть это побочный продукт какой-то внутренней azure-кухни

не «может быть», а так и есть

Ford_Focus ★★★★★
()
Ответ на: комментарий от mxrd2

отвечать на угрозы со стороны все остальных языков?

на какие угрозы? со стороны каких языков?

для отображения в окне браузера, как я уже сказал, пилится Blazor. И если сейчас blazor’y требуется минимальный mono runtime, в будущем планируют сделать версию C#, не требующую runtime, тем самым заехав еще и в IOT

Ford_Focus ★★★★★
()
Ответ на: комментарий от Ford_Focus

в .net core это было с самого начала. И эти люди серьёзно обсуждают развитие .net?

$ docker run -it mcr.microsoft.com/dotnet/core/runtime:3.0-alpine  /bin/sh
# du -sh /usr/share/dotnet/
74.0M	/usr/share/dotnet/

Ну не то чтобы много чтобы делать модульность. Но как там делается модульность? Вот я хочу поставку без парсера XML. Просто удалить из образа и все? В Java там заморочились сильно и наделали стандартов как дейсвительно отрезать кусок рантайма

vertexua ★★★★★
()
Ответ на: комментарий от mxrd2

Если бы MS пыталась бы убедить кого-то в том, что .net/С# - кросс-платфоменные технологии с хорошим будущим, то и скайп и vscode были бы написаны на .net+C#+WPF. Но MS посылает тебе совершенно другой «месседж».

С HTML/DOM никто бодаться не хочет. Я больше предвижу что они свой Electron выкатят, но бекенд не на ноде, а на шарпе. Или по-другому, так как нынче они возглавляют JS/TS, то TypeScript+NodeJS на .NET Core вместо v8. Вот такой поворот да. Java же тоже хочет что-то такое провернуть через GraalVM, жди от них новой нескучной ноды

Изобретать WPF в 2019ом году, когда есть HTML5 - время на ветер, это будет заведомо отстающая экосистема, от булькающей npm дрисни, которую пишут по всему миру.

Чем на эту угрозу C# отвечает MS? Новой версией TypeScript.

Да им посрать на угрозу шарпу. Они хотят .NET Core, какой бы там ни был язык.

vertexua ★★★★★
()
Последнее исправление: vertexua (всего исправлений: 3)
Ответ на: комментарий от Ford_Focus

видев и работав с vs, я предпочту vscode.

Тебе виднее. Я наблюдаю за MS технологиями со стороны. Во времена C#3 пару простых программ на WinForms.

Правда это не отменяет всех тех фактов которые я назвал. Сами они не верят в C#, он им не нужен. Если ты много работал с технологиями MS, ты отлично знаешь, как должна выглядеть реальность технологии которую они продвигают и в которую они верят. Пока ФАКТЫ говорят об обратном.

WPF прибит к DirectX

Еще раз, я же попытался объяснить. Я думаю что это всё чушь. В один только провальный WSL наверное в 100 раз больше времени и труда было вложено. Технически это не «проблема» для Microsoft. В vscode наверное столько труда вложено что WPF уже наверное на Haiku бы рисовался.

https://itsfoss.com/windows-linux-kernel-wsl-2/

mxrd2
()
Ответ на: комментарий от vertexua

docker run -it mcr.microsoft.com/dotnet/core/runtime:3.0-alpine /bin/sh

Не очень понял, что ты хотел показать.

dotnet publish --output bin/Release/linux-x64 --runtime linux-x64 --self-contained --verbosity minimal

dotnet publish --output bin/Release/win10-x64 --runtime win10-x64 --self-contained --verbosity minimal

Этими командами ты получишь директорию с собранным самостоятельным приложением, которое можно распространять хоть в zip-архиве - на новом месте не потребуется предустановленный рантайм

.net core3 пошли дальше и завезли что-то похожее на golang-стиль - компиляция всего проекта в один сжатый бинарь, https://dotnetcoretutorials.com/2019/06/20/publishing-a-single-exe-file-in-net-core-3-0/

Ford_Focus ★★★★★
()
Последнее исправление: Ford_Focus (всего исправлений: 2)
Ответ на: комментарий от Ford_Focus

на какие угрозы? со стороны каких языков?

Что перспективней Python или C# (комментарий)

Со стороны всех языков.

Тот же JavaScript жрет долю и у C#. При этом они сами же активно способствуют продвижению и усилению JavaScript.

Сам факт существования vscode о многом говорит. Неслыханно. Microsoft разрабатывает для Linux программистский редактор. Обычно когда компания куда-то лезет особенно так необычно, то делает это для продвижения своих интересов и во благо своим продуктам и технологиями. Особенно MS всегда щепетильно относилась к инструментам для разработчиков. Это и техническое усиление своих продуктов (теперь оно умеет не только x но и y), и маркетинговое. В случае с vscode, MS своей технологией считает JavaScript.

mxrd2
()
Ответ на: комментарий от Ford_Focus

Да я уверен что это чушь. Ты на полном серьезе считаешь, что WPF не переносят из-за того, что MS технически сложно отвязать его от directx? Ты серьезно?

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

Наивный. Если мы MS хотя бы немного, самую-самую малость хотел, то WPF завелся бы на Linux за несколько месяцев.

mxrd2
()
Ответ на: комментарий от mxrd2

Да я уверен что это чушь. Ты на полном серьезе считаешь, что WPF не переносят из-за того, что MS технически сложно отвязать его от directx? Ты серьезно?

лучше расскажи - зачем им это делать? какой профит они с этого получат? чтобы один ноунэйм с лорчика зауважал msft и поставил свой царский лойс под новостью?

Ford_Focus ★★★★★
()
Ответ на: комментарий от vertexua

HTML5 не имеет отношения к гуи-тулкитам. Это мусор из спанов, кусочка img, липкой ленты, дивов, соплей и backgroud-image. В гуи-тулкитах контролы, а не вышеназванное.

mxrd2
()
Ответ на: комментарий от Ford_Focus

один ноунэйм с лорчика зауважал msft и поставил свой царский лойс

что это значит? я никогда не сомневался в их компетенции. я же сказал, как-то очень давно сталкивался с WinForms и VS. Считаю, что по качеству это технологии очень круты. Что до C#, то это замечательный язык, единственная проблема которого, что он так распух по возможностям и синтаксу, что уже превышает пределы сложности восприятия.

у меня сомнения в намерениях MS.

mxrd2
()
Ответ на: комментарий от mxrd2

Вообще-то они уже озвучили свои намерения - у них нет планов портировать wpf на другие платформы в рамках .net core. WinForms тоже. Для gui-приложений используйте Mono.

Ford_Focus ★★★★★
()
Последнее исправление: Ford_Focus (всего исправлений: 2)
Ответ на: комментарий от Ford_Focus

Если тебе для веб-гуи сразу нужны какие-то дополнительные фреймворки (для тех самых спанов, кусочка img, липкой ленты, дивов, соплей и backgroud-image) - то значит HTML5 не гуи-технология. А встроенных контполов в браузере нет. То, что есть, это кривые дисфункциональные уроды и почти-отсутствующим API.

Чего только стоит тот факт, что встроенный DatePicker в HTML появился (таки появился или еще нет) спустя много лет после того как я совсем перестал заниматься вебом. DatePicker был, если не путаю, даже в VB6, в 1998 году.

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

mxrd2
()

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

anonymous
()
Ответ на: комментарий от Ford_Focus

Для чего тогда нужен с точки зрения C#?

  • писать браузерные-GUI нельзя и неизвестно можно ли будет [1]
  • писать гуи для десктопа нельзя [2]
  • писать под мобильные нельзя [3]

Остается:

  • писать для Linux http сервер и делать запросы к базе - можно. писать консольные программы - можно. Но для этого есть другие языки. Это не general-purpose язык. Сравни с той же Java.

[1] Блазора пока нет, неизвестно взлетит ли он, неизвестно не закроют ли его как неудачный эксперимент

[2] С точки зрения MS - GUI программы для десктопа пишутся на JavaScript+electron

[3] Технология Xamarin кажется? Мой товарищ сказал, что по его опыту - до сих пор неготовая технология. Она неотшлифована, постоянно какие-то проблемы, не похожа на продукт MS. Продвижением этой технологии MS как-то не особо занимается. Маркетинга я не вижу. Технологии уже много лет, но того и гляди, что недавний flutter окажется популярнее чем Xamarin. Что делали во flutter правильно - технологию или маркетинг? Может быть там человек высоко забрался и пихает свой флуттер используя ресурсы гугла? Ок, тогда что мешает Microsoft c Xamarin сделать C# языком для Android и iOS?

mxrd2
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.