LINUX.ORG.RU

Сколько зарабатывает Pascal программист?

 , , ,


6

6

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

Ответ на: комментарий от maxcom

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

Ну да, фигня какая-то. Просто компилируете fpc с ключом -g и запускаете через gdb, всё работает.

Но я и говорил, IDE не нужны. Текстовый редактор отдельно, компилятор отдельно, дебаггер отдельно — всё есть, удобно, и отлично работает. А если вы хотите смешивать мух с котлетами в одной программе, то не удивляйтесь, если что-то не работает или неудобно.

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

Это просто демонстрация того, что программировать на паскале без секса не возможно. А, к примеру, на Python или Java – возможно.

Мыши плакали, кололись и жевали кактус.

Это демонстрация того что Lazarus в первую очередь предназначен для того чтобы формочки клепать. А для консольных приложений IDE уж точно не нужна. А разработка из текстового редактора + компилятора + дебаггера ничем не отличается в любом компилируемом языке, хоть Pascal, хоть C, хоть Java. Ну в интерпретируемом типа Python ещё REPL есть, а так то же самое.

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

Да, я топил за KOI8-R

Чем KOI8-R лучше CP866 или CP1251? Да, конечно, микрософтовские кодировки — это плохо, но стоит признать, что они намного более распространены, а в остальном ничем не хуже.

Читаемость при обрезании верхнего бита - это я не знаю сколько лет уже неактуально. Нормальный софт биты не режет.

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

В паскале тогда надо переходить на while, если условия сложные.

Так-то да, через while можно написать всё. Но переменные цикла перестают выделяться. Если читаемость не важна, то можно вообще через goto писать.

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

но по очевидности (особенно для новичка) по моему первое место безусловно у паскаля.

i := 0 to 10

очевиднее, чем

i from 0 to 10

?

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

Для такого есть sed, вообще-то, для чуть более сложного — перл

Ну это применение готового, я бы так и сделал. А если б надо было написать – си/паскаль для посимвольного перебора с заменой.

А реально обрабатывать строки через strcpy() и иже с ней, вручную следя за памятью под каждую переменную — это боль

Мне только первые несколько раз больно было, потом притерпелся – боль ушла, а потом даже начал удовольствие получать!

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

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

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

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

Зис. Попроси меня описать что такое аджайл – я только разрыдаться смогу. А вот что такое ТЗ я хорошо понимаю :)

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

В C/C++ вместо строк массивы

Нет, читай стандарт.

Плюс какая разница какими языки были в 1970-х

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

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

И все эти года язык оставался без изменений, а так же не появилось какого то компилятора с типами, верно?

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

действительно талантливых программистов на всех не хватает.

Это, имхо, главная проблема сегодня: спрос есть, платят хорошо и в программисты идут не по любви, а по расчету

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

Любая нетривиальная проблема - туши свет…

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

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

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

есть противоположное мнение: что по большому счету способ программирования на чем угодно – один. И не меняется уже полвека. Модные технолигии возникают и уходят, а люди которые умеют программировать с легкостью пишут на любом языке именно потому что само умение – универсально. Под это можно и нужно создать язык. И не переписывать его каждые два года и не будет такого ада как в плюсах

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

У вас какой-то неправильный аджайл.

Этим можно отбить критику любой непонятной системы. Астралогия не работает: а ты просто неправильно гадаешь! А как праильно? А так чтоб сбывалось!

В моём понимании его главная идея в декомпозиции задачи и наблюдения прогресса по каждому кусочку.

Против этой части я не возражаю: я возражаю против «ты сначала сделай как понял, а потом мы тебе начнем рассказывать что мы хотим». В результате постоянно приходится переделывать уже готовое, отлаженное, протестированное. На практике ваш аджайл означает – работай без ТЗ, там обсудим, если че – переделаешь, не сломаешься. Применимо к аналогии со строительством дома: ты сначала начни строить, а мы по-ходу будем смотреть и корректировать. Например, мы тебе можем сказать что квартиры должны быть не двушки, а – трешки (и это в разгар строительства!) а можем сказать что хотим подземную парковку и плевать что ты туда уже свай назабивал на которых весь дом стоит – сноси, выкапывай, строй поверх заново – вот она ваша готовность к изменениям по-ходу без предварительного плана.

Из жизни: сказали надо сделать веб-апи железке, чтоб, мол, пользователи могли ей рулить по веб апи. Ну сделали. Потом они придумали что бло бы круто чтоб можно было брать скриншоты че там железка показывает через это веб-апи – сделали. Потом они решили что на сервере на вкладке устройства они хотят этот скриншот показывать, ну сделелли – сервер делает запрос – получает скриншот, показывает. А ПОТОМ ВЫЯСНИЛОСЬ ЧТО НАДО ЧТО ОНО ЗА НАТОМ РАБОТАЛО. И никто разработчикам этого не говорил, это вскрылось в конце, когда все уже было сделано.

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

Фундамент на сколько этажей закладывать? И нагрузку на первые этажи.

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

Это частный случай и проскочило, а если тебе надо подземную парковку строить, а узнал ты об этом посреди строительства? Ведь это же – аджайл, правда?

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

способ программирования на чем угодно – один

Си, SQL и Idris настолько разные, что опыт в одном никак не поможет с другим.

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

Интересно как разговор перетекает из «расскажи чем плох аджайл» в истеричные вопли «ты адепт, ты фанатик, ты говоришь что аджайл хороший!!!11».

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

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

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

Нет, фундаментальное препятствие — это «у нас есть куча засохшего legacy, которое мы никому не отдадим».

Эт почему? Даже у идеи из примера есть СЕ которое лежит на гитхабе. Препятствие - как раз необходимость писать кастомный код под куду/попенсл/другие гпушные прослойки

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

«Менее популярное» != «мёртвое».

saahriktu ★★★★★

Ну с тобой я пожалуй спорить не стану на этот счёт

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

я тебе и на Раст это сделаю быстрее в разы этой твоей некромантии

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

Накалякать на питоне, конечно, быстрее. Только почему-то весь софт написан на си.

Тебе, наверное, показалось что я против скриптухи. Тебе показалось неправильно

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

Накалякать на питоне, конечно, быстрее. Только почему-то весь софт написан на си.

Лол ага абсолютно весь

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

Весьма сомнительно. Почему вы считаете, что можно пропустить? Откуда такие выводы?

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

Важно понимание именно базовых концепций. стоящих за программированием, а не синтаксиса конкретных языков.

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

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

я говорю, что это очень тяжело сделать на С

ты по-детству не пробовал «свою винду» написать что-ли? Я имею в виду именно свою оконную систему. Че там писать? (хоть на чем – 2000 строчек). Я помню текстовую на бейсике делал, потом на паскале

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

Ну попробуй написать какую-нибудь фигню с кнопками, скажем крестики нолики 3х3, на gtk, а потом на qt, и сравни потраченные усилия. Или попроси начинающего программиста это сделать и посмотри что получится.

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

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

нет, конструкция в целом очевиднее

в паскале нужно понимать
1) цикл, простую версию
2) увеличение переменной (простая конструкция, которая вероятнее всего _уже_ известна)

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

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

Это фигня. Дельфа только в СНГ котируется. Мировой рынок побоку. Нужно делать выборку по региону и сравнивать с отсечкой, где платят неприлично мало или неприлично много.

thegoldone ★★
()
Ответ на: комментарий от yu-boot

Как можно за goto «держаться», мне непонятно. Это откровенно неудобная хрень, которая ничего не упрощает

задача: перед тем как сделать ДЕЙСТВИЕ, нужно выполнить ряд ПРОВЕРОК, если хоть одна не пройдет – действие выполнять не надои остальные проверки тоже выполнять не надо.

...
если ПРОВЕРКА_1 не прошла то ГОТУ МЕТКА
если ПРОВЕРКА_2 не прошла то ГОТУ МЕТКА
если ПРОВЕРКА_N не прошла то ГОТУ МЕТКА
ДЕЙСТВИЕ

МЕТКА:
...

А как надо?

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

весь софт написан на си

4.2, куда только мордовороты смотрят.

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

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

Тебе, наверное, показалось, что я против статических нативно компилируемых языков. Тебе показалось неправильно, я как раз про Rust, ну и Си не забываю.

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

бог goto запретил использовать вложения и else, не иначе :)

это какая-то спецолимпиада шлангования? :)

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

Паскаль жив.

А у std::string в C++ под капотом char* как в Си. А char* - это массивы. Даже если они называются строками в стандарте.

А типа string в C/C++ нет. А в Паскале есть.

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

У Free Pascal'я тоже мощная стандартная библиотека. Только там в отличие от C/C++ можно, например, однобайтные варианты классических строковых функций перезагрузить юникодными. А в C/C++ классические строковые функции оставили однобайтными, а для юникода другие делают.

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

Нет, читай стандарт.

Практически всегда строки реализуются через массивы, нет? Другое дело, через массивы чего именно. Есть, Петька, нюанс.

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

Я не очень в современный Паскаль, а как там со строками в юникоде? Есть итерация или индексация по символам юникода хотя бы, ну и про более интересные операции с текстом хотелось бы узнать?

Что в С/С++ со строками ядерный швах, это всем известно.

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

Во Free Pascal'е со строками в юникоде всё прекрасно. Классические однобайтные строковые функции перезагружаются юникодными, а потом легко и просто можно из какого-нибудь «подберёзовик» получить «берёз» через copy(s, 4, 5).

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

Ну не настолько же на чем угодно: я имел в виду паскаль, си, какой-нибудь джаваскрипт и прочее подобное.

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

Интересно как разговор перетекает из «расскажи чем плох аджайл» в истеричные вопли «ты адепт, ты фанатик, ты говоришь что аджайл хороший!!!11».

А может я истеричный хейтер аджайла? :)

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

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

А, ну тогда я такой же любитель аджайла как и ты

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

Да нет же: практика менять задачу на ходу влияет на продукт

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

Не самый удачный пример так как даже вложенных if’ов не требует.

Вот довольно интересная статейка.

А вот здесь можно почитать мнение всеми уважаемого дядьки Линуса, пассаж про Паскаль тоже довольно интересен в контексте этого треда.

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

бог goto запретил использовать вложения и else, не иначе :)

Да нет, просто если написать со вложениями, или флаг там какой ввести – станет менее очевидно/красиво/читаемо

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

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

А как надо?

Вместо «ГОТУ МЕТКА» писать «Возврат» и весь кусок до метки делать отдельной процедурой.

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

Не самый удачный пример так как даже вложенных if’ов не требует.

это как? доп переменную заводить? Или проверку всех ПРОВЕРОК через И в условии определить? тогда оно все выполнятся после первой неудачной

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

Так делали, например, в Fortran 77 и раньше. Но потом в новых стандартах добавили конструкции else (if else), case select, do while.

А вот переменные real в циклах как счётчик лучше не использовать.

Но goto вполне себе используется в современном C, для имитации подхода RAII, например. Или если нужно выйти сразу из нескольких вложенных циклов.

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

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

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

Вместо «ГОТУ МЕТКА» писать «Возврат» и весь кусок до метки делать отдельной процедурой.

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

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

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

Perl, sed, awk или на крайняк Tcl для этого гораздо лучше подходят, чем Python.

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

Ну про if else соглашусь, в данном случае – торт. Я просто и против goto в данном случае ничего не имею: я согласен что организовывать на нем подпрограммы или циклы в наш век – не нужно. Но вот так сидеть и выдумывать как бы написать без использования goto потому что за это девки любить не будут, в том месте где оно вот явно само просится и никакого вреда от него не предвидится – ну такое для меня

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

Вот ты сам же и накосячил натягивая сову на глобус: выходить из цикла в случае успешного выполнения проверок кто будет?

Ну и по читаемости ни в какое сравнение с моим

pihter ★★★★★
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)