LINUX.ORG.RU

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

 , , ,


6

6

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

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

А если, например, админ для администрирования своих серверов напишет что-нибудь на Паскале, то это как?

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

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

Умеющий читать код на Паскале. Чему и учат в школах. Всё правильно.

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

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

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

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

ЛОР – еще торт!

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

а другой никогда.

слишком категорично: ситх что ли? :)

Возьми, да напиши себе утилитку какую-нибудь на паскале, рвсширь кругозор, поупражняй мозг взглядом на си с другого боку – вот и пригодится

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

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

Ну вот и выросло поколение :)

Какого рода обработка текста?

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

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

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

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

И это ещё не говоря о том, что у Turbo Pascal'я было своё конкретное IDE, которое далеко не всем нравится. А код для Free Pascal'я можно писать где угодно, включая любимый текстовый редактор.

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

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

Язык этот мертвый, он не развивается

По-твоему, все, что два раза в год переизучать не надо – мертво, потому что не развивается? Театр – развивается? Геометрия? Ньютоновская механика? Футбол? И, мое любимое, – методика забивания гвоздей молотком?

А надо ли, если проблема уже решена?

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

Да ладно, swift как и D очень годные языки. Очень. И их не спешат в репы внедрять. Потому, что никто их не форсит и не создаёт хайпа, не пишет для них IDE под Linux, не создаёт экосистему со всякими евангелистами, не пишут модные книжки. Тот же Go, Rust, net.core форсят корпрорации и создают рабочие места, щас в моде фп а не ооп, фп притащили в react, туда же тащат typescript и начинают усложнять виртуальные машины работающие на фронтенде, а на бекенде всё упрощают. Это приводит к примитивным язычкам по типу go, да и rust недалеко ушёл от си в плане работы с типами и архитектуры кода, всё крайне примитивно, зато относительно быстро работает и дешево в эксплуатации. А вот уже самые крутые компиляторы и вм по типу v8, llvm - пишут на нормальных мощных языках, как раз c++ во все поля

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

C++ – Это язык стандартизованный

и никто его не знает полностью, настолько он стандартезированный

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

Ну дык что поделать если у людей такие ассоциации с Паскалем.

А потом люди пишут:

Это не среда, а какой-то позор.

Т.е. в определённой степени их отношение к Паскалю определяется их отношением к IDE Turbo Pascal'я, поскольку других Паскалей они больше не встречали. А писать код на Паскале в чём-то другом при их знакомстве с Turbo Pascal'ем им просто не приходило на ум. Т.е. на тот момент это было ещё терпимо. А по прошествии десятилетий критерии уже поменялись и оно перестало быть терпимым.

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

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

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

Собсно, если подумать, любой популярный сегодня ЯП это продукт маркетологов. Бедные мы бедные…

А вот паскаль – нет :-Р не будь жертвой маркетологов – пиши на паскале! :)

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

Сейчас синтаксис и стд либы усложняют все: и питон, и раст, и кресты.

Да вот именно что не все, а только те, которые как оголтелые стремятся постоянно все «совершенствовать», через это их (языки) нельзя в полной мере изучить, потому что пока ты его изучаешь он меняется и ты вечно на положении недоучки – это меня одного раздражает?

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

Возьми, да напиши себе утилитку какую-нибудь на паскале, рвсширь кругозор, поупражняй мозг взглядом на си с другого боку – вот и пригодится

Делал задачки для новичков из учебника по общему программированию. Некоторые потом ради интереса переписал на Си. Ну плюс-минус то же самое. Хотя глубже я не лез, не зацепило как-то, да и привычнее Сишка.

Ну вот и выросло поколение :)

Ты правда серьёзно предлагаешь использовать Си для обработки текста?😬 Ну кроме регэкспов каких-нибудь или ещё каких узких мест.

Какого рода обработка текста?

Ну вот в последний раз помогал делать знакомым ребятам с обучающей игрой для школьников, там были задания вроде расшифровать фразу. К примеру, восстановить перепутанный порядок слов и букв в словах по цифровому ключу. На Пятоне это пара десятков строк. Вручную это делать мучительно, да и вероятность ошибиться крайне высока. Напомню, мы говорим про то, где пригодится ЯП человеку, который после школы не станет программистом)

Что там с Паскалем или Сишкой?) Они хоть в Юникод-строки-то уже умеют без сторонних либ?

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

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

да никто ж, в контексте обучения, и не против: можно и пропустить, просто народ выражает свое ИМХО – паскаль для обучения – самое оно.

Тут проблема в том, что если обучение начинается поцкалем оно им же и заканчивается. В итоге имеем армию поцкалистов, которые ничего больше не умеют, кроме как шлёпать формочки и таскать мышкой «компоненты». От пистонщиков будет побольше толку.

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

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

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

Кроме того, 50 строк решения почти всегда будут менее оптимальны, по сравнению с библиотечным. Например, если сравнить наивную реализацию сортировки с qsort из glibc

Замечательная иллюстрация, хорошо что вспомнил. Qsort работает только на непрерывных массивах, из-за чего нередко возникает ситуация «задача диктуется готовым решением». Да, можно повысить ставки, указав на std::sort, но он может работать только с итераторами. которые по сути являются тем же самым интерфейсом доступа к непрерывному массиву по указателю, где реализация доступа абстрагирована. Уже универсальнее. Оптимальнее ли это, чем 50 строк кастомной сортировки? А вот не факт. Если структура данных не любит произвольный доступ, то такая сортировка будет медленно ползать. Отсюда «задача диктуется решением» — «давайте оптимизировать произвольный доступ на нашей структуре данных». И вот уже не понятно, что там проще и что оптимизированнее.

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

Ты правда серьёзно предлагаешь использовать Си для обработки текста?

Смотря какой обработки: если тебе пробелы на подчеркушки позаменять – ничего проще и быстрее не придумать.

Что там с Паскалем или Сишкой?) Они хоть в Юникод-строки-то уже умеют без сторонних либ?

Никто ничего без либ не умеет, в том числе и питон. Даже текст в консоль выводить. Почему нельзя пользоваться библиотеками? Их для чего писали? Больше библиотек, чем есть у Си нет ни у кого.

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

Тут проблема в том, что если обучение начинается поцкалем оно им же и заканчивается. В итоге имеем армию поцкалистов, которые ничего больше не умеют, кроме как шлёпать формочки и таскать мышкой «компоненты». От пистонщиков будет побольше толку.

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

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

Для разных сфер используют более подходящие языки.

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

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

Нет такого понятия как «настоящий язык программирования». Динамическая типизация не является препятствием для создания достаточно сложных программных продуктов.

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

Макском либо не знает, либо не удосуживается пояснить, тогда поясню я.

Посмотри/нагугли бенчмарки жавы мы node.js. Как правило, они идут ноздря в ноздрю, и по производительности, и по потреблению памяти. Как так, ведь одно — православная статика, а второе — б-гмерзкая динамическая скриптовуха? Далее, как ты думаешь, почему жавоприложения почти никогда не падают с сегфолтом/выполнением стэка? Может быть потому, что:

1. Производительность определяется не динамической/статической типизацией, хотя большая производительность коррелирует со статической;
2. Надежность определяется не динамичностью/статичностью типизации.

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

Вот расскажи мне, например, насколько статичны целочисленные типы в C/C++? Это те, которые превращаются друг в друга неявно, теряют/получают знак, и тихо переполняются. Потому я говорю, что для надежности программы нужна проверка корректности применения-интерпретации данных, а не какой-то там мутный «тип». Прототип функции является подсказкой для компилятора, позволяющей заметить наиболее очевидные ошибки передачи данных — это особо хорошо видно на примере Си, в котором никаких прототипов у функций изначально вообще не было. Но эта подсказка не выполняет и половины работы по проверке корректности.

Далее, по производительности. Я уже не буду мучить вас плавными подходами: скажу сразу правильный ответ: в тормознутости кода Java/C#/C++ виноваты виртуальные функции и объекты размером по 1-4 байта, которые вместо плотных проходов всяким SIMD-ом (или даже классическим маш кодом) без прыганий по адресам вирт методов и бесконечных cache miss-ов по всей куче дают что дают. Даже в середине 90-х Java уже медленно бегала, из-за чего создали HotSpot.

Кагбэ при чем тут динамическая типизация? Можно сделать тэг и статичные функции, которые займут минимум места в памяти (снижение cache miss) и не будут требовать косвенных вызовов функций. Но вроде как по прежнему динамические типы же ж. В C++ есть std::variant, в Object Pascal есть Variant.

Другое дело, что проблемы конкретной скриптовухи с производительностью, как, например, CPython (но при этом НЕ JavaScript) связаны с устройством языка и стандартной библиотеки, которые не связаны с динамической типизацией. Например, в JS есть возможность явно вызвать какое-нибудь Array.prototype.map(val) — все современные интерпретаторы JS превратят это не в цепочку запросов к ассоциативному массиву по ключам «Array», «prototype», «map» (как это делает питон, между прочим), а к прямому доступу к функции «map». Далее уже через алгоритмы оптимизации V8 массивы могут из массива ссылок на объекты стать, например, сплошным массивом чисел int32.

Между прочим, оба упомянутых инструмента уже есть в Haskell, а именно, автоматически тэгированные данные и вручную объявленные unboxed ячейки. И уже не совсем ясно, кем является хаскель в твоей черно-белой дихотомии.

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

Ты бы еще предложил выдавать права на вождение только после экзамена на термодинамику ДВС. Я двоичную и аналоговую логику сам проектировал в свое время, но спустя годы у меня не возникало идеи «ах, как мне пригодилось знание принципов проектирования процессоров при написании кода отправки JSON формочки».

Для изучения программирования оптимален простой текстовый редактор, а IDE не нужны и даже вредны, пока не будет достигнут определенный уровень. Да и даже тогда всё равно vim или emacs удобнее

Vim/Emacs удобнее, если ты два года тренировался на них кодить. А это уже само по себе подразумевает, что наверное все-таки для изучения программирования не удобнее. Говорят, что на компьютерах есть какие-то там мышки, несколько приложений на одном экране, и что больше 120 столбцов влазит в экран, но я сам не проверял.

Опять же, в первом языке это не нужно. Ученику вначале нужно понять как делается то или другое действие. Что, например, перевод строки ‘1234’ в число 1234 — это нетривиальная операция, требующая определенный код. Чужие библиотеки стоит использовать только после того как написал хотя бы пару-тройку своих

Я в упор не понимаю это вашей риторики про обучения программированиям ребенков. Это как если бы я говорил про обучение детей сексу или играм в доту. Ладно, курсы оператора стиральной машинки и ПДУ телевизора. Блин, да я кодингу учился по книжкам 80-х годов про фортран и бейсик НА БУМАЖКЕ, а потом, как комп появился, воротил нос от виндовой консоли и мечтал писать скрипты на баше. Тот же кобол был создан бабушкой для бабушек — до сих пор бабушки на нем пишут и не жалуются. Реально серьезно учиться нужно для получения продвинутых навыков, которые порой не могут освоить даже мартышки с годами опыта.

Потому я бы сказал, что есть только одна проблема: отдельные конкретные ЯП имеют порог входа неоправдано выше, чем то требуется. Например, C/C++/Rust или Haskell.

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

Pascal задумывался как язык для обучения программированию, соответственно, он им и является

Это неправда, которая массово растиражирована.

https://dl.acm.org/doi/pdf/10.5555/63445.C1104358 - A contribution to the development of ALGOL - Niklaus Wirth, C. A. R. Hoare

(1) The language must provide a suitable technique for the programming of digital computers.... it should be possible to construct a fast, well-structured and reliable translator, translating programs into machine code which makes economic use of the power and capacity of a computer...
(2) The language must serve as a medium of communication between those engaged in problems capable of algorithmic solution....
(3) The language must present a conceptual framework for teaching, reasoning and research in both theoretical and practical aspects of the science of computation...
(4) The value of a language is increased in proportion to the range of applications in which it may effectively and conveniently be used. It is hoped that the language will find use throughout the field of algebraic and numeric applications, and that its use will begin to spread to non-numeric data processing in areas hitherto the preserve of special-purpose languages, for example, the fields of simulation studies, design automation...

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

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

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

Любой тред про Паскаль – он такой. В практически любом месте. Возможно, травмы детства не дают людям нормально жить.

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

если тебе пробелы на подчеркушки позаменять – ничего проще и быстрее не придумать

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

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

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

Без оптимизаций примерно одинаково. Оптимизировать fpc умеет плохо.

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

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

Liksys Mode On: В питоне есть типы, и их преобразования.

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

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

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

Любой язычек со своим компилятором будет сливать C/C++ которые по очевидной причине имеют лучшие компиляторы.

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

Это сложно и скучно, там еще не покажут визуализацию стека. Хотя если в видео какой то момент непонятен, можно и сайт с текстом открыть, да.

А книги в 21 веке это смешно, неудобный, примитивный и неинтерактивный источник знаний...

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

мухаха) иди на ютубе посмотри про типы памяти у мешков с костями. Видосики это как раз про неэффективное обучение

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

Qsort работает только на непрерывных массивах, из-за чего нередко возникает ситуация «задача диктуется готовым решением».

Вы так пишете, словно это что-то плохое.

Форма кирпичного здания определяется формой готовых кирпичей, а форма автомобиля доступными технологическими операциями.

Если задачу можно свести к типовой из LAPACK, то почти всегда именно этот вариант даст наилучший результат.

Отсюда «задача диктуется решением» — «давайте оптимизировать произвольный доступ на нашей структуре данных».

Давайте нашу структуру данных делать массивом. А если она не массив, а список, то использовать другую библиотечную сортировку (mergesort).

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

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

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

Ты еще скажи лепка и письмо детям не нужны :) А потом мелкая моторика руки будет заточена под два больших пальца. И шея под остеохондроз от залипания в лопатофон. Ноги в 21м веке? Это долго, скушно. БЕЗНОГNM прогрессивное перемещение на моторколесах.

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

Ты еще скажи лепка и письмо не нужны :)

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

Лепку из школ выкинуть, письмо заменить на клавиатурное.

Ноги в 21м веке?

Их уже давно заменили где надо животными и повозками, а сейчас машинами, поездами итд.

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

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

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

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

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

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

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

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

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

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

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

Существует красный диван который еще и мягкий? Я пишу safety critical, у нас все доки и регламенты пишутся до и работаем по скраму/канбану.

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

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

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

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

А как же «Изменение требований приветствуется даже на поздних стадиях разработки.» из манифеста Agile?

И для safety critical тоже «Работающий продукт следует выпускать как можно чаще, с периодичностью от пары недель до пары месяцев.»?

работаем по скраму/канбану

К этим инструментам претензий нет.

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