1

Тема: Які мови програмування найкраще вчити у 2021 - 2030

я гадаю що найкращий вибір це JS та Python.
Нині ринком править JS і генеруєтся багато кода який в майбутньому буде потрібно підтримувати.
Python для роботи з ШІ та базами даних

як гадаєте ви?
які мови програмування будуть потрібні через 5 років?

Подякували: ch0r_t1

2

Re: Які мови програмування найкраще вчити у 2021 - 2030

якби в мене була б купа часу, то я б до свого JS також додав би як раз того Python'а, і може ще Go, або Rust, просто шоб було, може згодиться, але цього замало, також варто шарити в різних фреймворках, бо js саме по собі це файно, але знання самої мови недостатньо, треба знати DOM API для роботи в бравзері, Node.JS API, для роботи на операційках, також різні React'и, Vue'и, SASS'и для css, з webpack мона ознайомитись, Swagger, Storybook, git'ом, Docker'ом, CI/CD + різні сервіси від aws, Redux теж най буде, для реакту зара популярна є ліба react-query, ну і звісно ж, TypeScript, якшо вже вчите JS.

mamkin haker написав:

Python для роботи з ШІ та базами даних

шо? до чого тут бази даних? вони взагалі не є чимось створеним конкретно для Python, і я б радив розібратись хоч трохи з якоюсь реляційною бд, як от mysql, і nosql бд, як от mongodb, до цього ще мона додати ORM/ODM, як от mongoose для mongodb, а для реляційок я хз, бо не бавлюся з ними

Подякували: mamkin haker1

3

Re: Які мови програмування найкраще вчити у 2021 - 2030

Фреймворки назразок Django пропонують можливість працювати з БД, не використовуючи SQL взагалі. Цікаво, наскільки реально обійтися без знайомства з SQL на реальному проекті з базами даних?

4 Востаннє редагувалося Torbins (07.10.2021 15:33:15)

Re: Які мови програмування найкраще вчити у 2021 - 2030

C#, Java, Swift, C++ - це мови великих операційок, від яких нікуди не дітися, тому на період до 10 років це безпрограшний варіант.
SQL, Python і JS мабуть також можна вчити, бо у кожного є своя велика галузь застосування.
З усієї решти мені цікавими здаються лише Go та Rust. За Go стоїть Гугл, з ним усе зрозуміло, а Rust - це така собі сучасна спроба переосмислити C++, викинувши з нього усю екзотику та езотерику.
Pascal/Delphi має шанси на ріст лише якщо дозволить писати службові слова будь-якою мовою, а не лише англійською. І після цього повернеться в школи.
Загалом ще раджу глянути рейтинги, може ще щось цікаве побачите: https://dou.ua/lenta/articles/language-rating-jan-2021/

Подякували: ch0r_t, mamkin haker, P.Y., leofun014

5 Востаннє редагувалося ch0r_t (07.10.2021 15:43:08)

Re: Які мови програмування найкраще вчити у 2021 - 2030

Ця тема рівно на 5років краща за цю https://replace.org.ua/topic/12604/ . Fair enough.

Те що пан Torbins сказав. +1.

Torbins написав:

а Rust - це така собі сучасна спроба переосмислити C++,

ймовірно невдала. Створити systems programing lang. на якому не написати ОС не додавши С. Компілятор кажуть добрий, але думати про код написаний на ній важче (це може й плюс, як в Haskell, який вимагає осмислити річ повністю перед тим як записувати її) Боже бережи півмісяць з хрестами, зміни йдуть, що піднімуть його ще вище.

Подякували: mamkin haker1

6 Востаннє редагувалося ch0r_t (07.10.2021 16:14:16)

Re: Які мови програмування найкраще вчити у 2021 - 2030

Питання не повне. Тому на нього неможливо відповісти, не відповівши перед цим на питання "А що ти зібрався робити". В чому інтерес?
Одна мова підійде, очевидно, для одного, вдовольнить потреби там, де не вдовольнить де інде.

Подякували: mamkin haker1

7 Востаннє редагувалося mamkin haker (07.10.2021 16:25:09)

Re: Які мови програмування найкраще вчити у 2021 - 2030

tchort написав:

Тому на нього неможливо відповісти, не відповівши перед цим на питання "А що ти зібрався робити".

ну припустимо щоб не залишитись без роботи після університету :D
дякую за поради, спробую подивитись що то таке за мова GO

а так то я для себе вчу пайтон та трішечки С++ :3 маю ще деякі знання в JS(jQuery) хоч і поверхневі, також знаю HTML та CSS (цікаво було свій перший сайт робити :D, якщо його можна так назвати))))
цікава ця вся штука з нейро мережами (викликають захоплення всі ці формули які придумали розумні дядки) :3
С++ чисто почав вчити щоб зрозуміти такі штуки як патерни проектування, поліморфізм, upcast, а ще хотів навчитись робити чіти тому спочатку його почав вчити через те )))

8 Востаннє редагувалося ch0r_t (08.10.2021 11:36:20)

Re: Які мови програмування найкраще вчити у 2021 - 2030

mamkin haker написав:

цікава ця вся штука з нейро мережами :3

Все Машинне навчання це статистика з новим ім'ям. Статистика і математика. Готуйтесь до головного болю.

Прихований текст

https://replace.org.ua/uploads/images/10563/29f2f49810be95b5c07e9877f7deabf7.jpg

Подякували: mamkin haker1

9

Re: Які мови програмування найкраще вчити у 2021 - 2030

tchort написав:
mamkin haker написав:

цікава ця вся штука з нейро мережами :3

Це статистика з новим ім'ям. Статистика і математика. Готуйтесь до головного болю.

дякую за співчуття :D
прикупив собі таблетки ще місяць тому :D

хоч і важко розумієтся але всерівно дуже цікаво зробити власними руками алгоритм який вміє "думати"

10 Востаннє редагувалося P.Y. (07.10.2021 23:29:11)

Re: Які мови програмування найкраще вчити у 2021 - 2030

Torbins написав:

Pascal/Delphi має шанси на ріст лише якщо дозволить писати службові слова будь-якою мовою, а не лише англійською. І після цього повернеться в школи.

Не думаю, що проблема в цьому — сучасні школярі знають англійську краще, ніж покоління, що вчило Pascal y школах 20-30 років тому. І це далеко не COBOL чи SQL, де не просто англійські ключові слова, а імітація цілісного англійського тексту — алголоподібні мови (до яких належить і Pascal) відійшли від цього.

Біда всіх навчальних мов — ставлення до них як до навчальних. Це означає, що потім усе одно доведеться переучуватись. Якщо так, то вадою стають відмінності навчальної мови від професійної. BASIC процвітав, поки мейнстрімом був FORTRAN, але почав втрачати актуальність, коли цю нішу заповнили C/C++. Pascal давав непоганий ґрунт для C, а концепції, прийняті в Delphi, легко переносились у Java. Але коли актуальними стали професійні мови з низьким порогом входження (такі, як JS i Python), потреба в окремій навчальній мові, перевантаженій дидактичністю, поступово відпала.

Виходить, щоб отримати нове життя, паскалеподібні мови, з одного боку, повинні знизити поріг входження, але, з іншого, отримати сферу професійного застосування. Delphi, власне, і було рухом у напрямку до професійної мови — проте, проблемою Delphi була вузькість основної задачі (накидати кнопочок, запустити формочку — лише десктопні GUI, тоді як нові актуальні сфери, такі як веб, опинились поза увагою). Для порівняння, Java, що піднялася на аплетах, потім переорієнтувалась на десктопи, веб-бекенд, мобільний фротнтенд.

Проте, паскалям пощастило більше, ніж бейсікам — у яких мейнстрімним діалектом зробили ООП-монстра, надто важкого для навчальної мови (і несумісного з кодом на старих «дитячих» діалектах), але й недостатньо «професійного» для комерційної розробки. Узагалі, цю мову довго й методично псували, намагаючись надати їй рис «професійних» мов і очистити від «дитячих» рис (назразок GOTO чи суфіксної типізації) — що не зробило її професійною, але легкість входження знизило. Delphi, принаймні, зберігає кодову сумісність з TP, код достатньо легко переноситься між діалектами — загальний процедурний каркас паскалів мало змінився. При цьому, мейнстрімний нині Python на початковому рівні чимось дуже нагадує класичні BASIC-діалекти (хоча, здавалось би...).

Подякували: mamkin haker1

11

Re: Які мови програмування найкраще вчити у 2021 - 2030

Так, посидівши зі словником, можна розібратися в усіх тих function, print, button і так далі. Але чи це ефективний спосіб розібратися в основах програмування? Навіщо взагалі потрібен оцей додатковий шар магії? Яка користь від англійських ідентифікаторів саме на перших кроках? Я ніякої користі не бачу, лише шкоду. Простий алгоритм перетворюється на незрозумілу абракадабру. Значно пізніше, коли уже мова йде про олімпіади чи ще якісь змагання, тоді так, потрібна уніфікація. Але знаючи програмування з україномовними ідентифікаторами, не так важко перемкнутися на англомовні, тим більше, що потрібно це не всім. Але це все звичайно при умові, що мова програмування використовує достатньо довгі ідентифікатори та ключові слова. Брейнфак перекладай - не перекладай, зрозумілим він не стане.

12

Re: Які мови програмування найкраще вчити у 2021 - 2030

P.Y. написав:

Цікаво, наскільки реально обійтися без знайомства з SQL на реальному проекті з базами даних?

Думаю, що це лише питання часу. Або якийсь специфічний проект.
P.S.

P.Y. написав:

Фреймворки назразок Django пропонують можливість працювати з БД, не використовуючи SQL взагалі.

Hibernate теж "пропонував заміну" для SQL - HQL :) А, якщо глянути на Spring Data JPA, то початківцям, зазвичай здається, що дійсно сенсу вивчати "застарілий" SQL немає :)

13 Востаннє редагувалося P.Y. (07.10.2021 23:19:56)

Re: Які мови програмування найкраще вчити у 2021 - 2030

Torbins написав:

Так, посидівши зі словником, можна розібратися в усіх тих function, print, button і так далі. Але чи це ефективний спосіб розібратися в основах програмування? Навіщо взагалі потрібен оцей додатковий шар магії? Яка користь від англійських ідентифікаторів саме на перших кроках? Я ніякої користі не бачу, лише шкоду. Простий алгоритм перетворюється на незрозумілу абракадабру. Значно пізніше, коли уже мова йде про олімпіади чи ще якісь змагання, тоді так, потрібна уніфікація. Але знаючи програмування з україномовними ідентифікаторами, не так важко перемкнутися на англомовні, тим більше, що потрібно це не всім. Але це все звичайно при умові, що мова програмування використовує достатньо довгі ідентифікатори та ключові слова. Брейнфак перекладай - не перекладай, зрозумілим він не стане.

Ну, запам'ятати десяток-півтора ключових слів узагалі не проблема (тим більше, потім вони все одно знадобляться, і більше, ніж «поки», «доки» й «допоки», чи що там вигадають наші перекладачі-пуристи).

От button та інша візуальщина — перша підказка, чому старт з ООП — не дуже добре. Бо стандартний ввід-вивід мало змінився за останні пів століття, і там усього дві команди треба знати на початку, тоді як майже будь-який графічний інтерфейс — це щось переускладнене й недовговічне, і все те розмаїття класів, з якими ми знайомились у Delphi, щоб написати мінімальну програму, ніколи не знадобиться в веб чи андроїді (чи й навіть на десктопі, але з іншими мовами програмування) — хіба що деякі схожі назви, але з зовсім іншою внутрішньою начинкою. Стартова мова має бути простою, з мінімумом слів узагалі (байдуже якою мовою) — покажіть мені життєздатну ООП-бібліотеку, яку можна звести до десятка ідентифікаторів.

Що справді треба перекладати, так це документацію до цієї навчальної мови. Нема нічого складного в тому, щоб вивчити іноземне слово (зрештою, школярі на уроках англійської такі слова десятками вчать), але його точне значення в мові програмування відрізнятиметься від значення в живій мові — все це треба пояснити людською мовою.

Втім, не бачу причин, чому мова з українськими ключовими словами не має права на існування. Просто треба зробити так, щоб її роль не обмежувалась навчальною, щоб на ній можна було робити реальні проекти. Зробити препроцесор з макросами, що підставлятиме «program» замість «програма», «var» замість «змінна», і т.д., досить просто — тільки хто ним користуватиметься? В сімдесяті-вісімдесяті існували мови чи локалізації мов з російськими ключовими словами, на них писались реальні програми — в наш же час це сприймається як програмістський жарт. Виняток — офісні програми назразок екселю, де в локалізаціях імена функцій також перекладені.

Р.Ѕ. Довгі ключові слова — зло. Важче запам'ятати, легше зробити одрук, довше вводити. Користі початківцеві від них — нуль. 5-6 літер — оптимально, довші — муштра заради муштри.

14

Re: Які мови програмування найкраще вчити у 2021 - 2030

P.Y. написав:

Виняток — офісні програми назразок екселю, де в локалізаціях імена функцій також перекладені.

Я колись бачив італійський VBA, так у ньому все не по-нашому написано (с)

Подякували: P.Y.1

15

Re: Які мови програмування найкраще вчити у 2021 - 2030

Щодо Go, кажуть, шо це C 21-го сторіччя, але ж вклинюватись в програми написані на C через Go не мона буде, тобто мається на увазі перегляд та зміну коду застосунків до лінуха і т.д., тому може такий краще вже C спершу вчити, а якшо Go - це простіша для сприйняття версія C, то його після C буде набагато легше вивчити, ніж з нуля?

16 Востаннє редагувалося ch0r_t (08.10.2021 12:07:50)

Re: Які мови програмування найкраще вчити у 2021 - 2030

На мою думку, не варто і не обов'язково вчити C до Go або C++.
Деякі навіть стверджують що то не на користь (можна набратись "не тих" звичок, "неправильних підходів").

FakiNyan написав:

якшо Go - це простіша для сприйняття версія C

Не певен щодо цього допущення, в C свої складнощі, Go десь спрощує речі а десь додає своїх складностей. *

FakiNyan написав:

після C буде набагато легше вивчити, ніж з нуля?

Знання будь якої C-подібної мови, тим паче системної, полегшить і пришвидшить вивчення Go. Але це скоріше самоочевидно.

*C відносно легко вивчити але важко стати майстром, важче створити безпечну і коректну програму (для того вимагається більше досвіду) ніж на Go.

Подякували: leofun011

17

Re: Які мови програмування найкраще вчити у 2021 - 2030

FakiNyan написав:

тому може такий краще вже C спершу вчити

Підтримую - С це сила, а Go - гіпстерське породження.

Подякували: bebyk1

18 Востаннє редагувалося ch0r_t (08.10.2021 16:22:05)

Re: Які мови програмування найкраще вчити у 2021 - 2030

0xDADA11C7 написав:

Підтримую - С це сила, а Go - гіпстерське породження.

Прихований текст

https://i.ibb.co/9vS4FYz/c1.png

Прихований текст

https://i.ibb.co/1LjTw7C/c2.png

Прихований текст

https://i.ibb.co/NYcGf0H/c3.png

Подякували: mamkin haker, leofun012

19

Re: Які мови програмування найкраще вчити у 2021 - 2030

mamkin haker написав:

як гадаєте ви?

Я вчу Rust, хоча жодної вакансії в Україні не бачив. Подобається як влаштована мова і її головна сфера застосування. А планую писати FOSS заради задоволення, тож на ринок українського аутсорсу плюс-мінус пофіг у цьому сенсі.

mamkin haker написав:

які мови програмування будуть потрібні через 5 років?

С.

Щодо інших не певен, хоча в Rust вірю.

Ви обережніше з Python і JavaScript. У 2000-ому, здається, теж ніхто не гадав, що Perl, найтрендовіша тоді мова програмування, за кілька років помре.

20 Востаннє редагувалося frz (08.10.2021 18:57:55)

Re: Які мови програмування найкраще вчити у 2021 - 2030

P.Y. написав:

Фреймворки назразок Django пропонують можливість працювати з БД, не використовуючи SQL взагалі. Цікаво, наскільки реально обійтися без знайомства з SQL на реальному проекті з базами даних?

Це дещо холіварне питання, особливо коли в дискусії бере участь DBA. Звісно, якщо DBA на проекті взагалі нема, тоді на етапі впровадження обійдеться без жодних холіварів, та й взагалі без дискусій. Та річ у тім, що в міру зростання кількості даних на проекті, якщо в девелопера нема бд-бекґраунду, то там швидше за все не будуть створені необхідні індекси, це непомітно спочатку, але потім - ой.

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

----

Вчити вирішив R і час від часу проходжу завдання. Це по приколу, бо вимог на даному проекті нема; в аналітику йти в принципі не збираюся. Але вакансії в принципі є (зв'язка SQL, Python, R).