Popularność i przyszłość Pascala

3
katakrowa napisał(a):

Każde narzędzie ma swoje uzasadnienie i zastosowanie w ODPOWIEDNIM miejscu.

To jest truizm.

Natomiast ciekawy jestem średniej wieku programistów Delphi - (pozwólmy już odejść Pascalowi - mówmy o Delphi) - obstawiam że coś koło 50 lat.
To jest problem porównywalny do problemu z wiernymi w Kościele - średnia wieku wysoka i umieralność też, Nie będzie wielkiego resetu niestety. Droga ku przepaści.
Nikt nikogo z tej drogi nie zawraca, tylko inni nią nie pójdą i tyle. Po pewnym czasie jednak chodzenie samemu staje się męczące.

0

Widzę, że dyskusja staje się coraz bardziej merytoryczna. ;)

5

Uuu kolejny hejt na delphi ? :) ... najbardziej mnie cieszy jak ludzie cisna beke z delphi a potem mowie im ile mi za to delphi płacą :D

2

Co do Delphi tak sobie mysle, jak to mozliwe ze przez tyle lat nie pojawilo sie nic gdzie rownie latwo mozna sobie UI wyklikac. (no dobra, moze C# jest blisko). Jesli jestem w bledzie, to chetnie sie dowiem jakie sa alternatywy.

Co do przyszlosci Delphi -> wlasnie przez brak alternatywy moze wciaz byc popularne tam gdzie robimy wewnetrzny desktopowy system dla specyficznej branzy. Albo gdy potrzebujemy szybko UI zrobic. Przy czym czesc takich projektow naturalnie idzie w strone UI przez WEB'a + backend w cloudzie i to bedzie czesc rynku odbierac.

4
WhiteLightning napisał(a):

Co do przyszlosci Delphi -> wlasnie przez brak alternatywy moze wciaz byc popularne tam gdzie robimy wewnetrzny desktopowy system dla specyficznej branzy. Albo gdy potrzebujemy szybko UI zrobic. Przy czym czesc takich projektow naturalnie idzie w strone UI przez WEB'a + backend w cloudzie i to bedzie czesc rynku odbierac.

Obiektywnie oceniając na dzień dzisiejszy nad konkurencją mają tylko w obszarze cross-platform i jak tego nie wykorzystają to znowu będą mieli posuchę w sprzedaży licencji.
Wszystkie pozostałe obszary doskonale pokrywają o wiele popularniejsze C# i JAVA.
Łatwość pisania i gotowość IDE do pracy zaraz po instalacji w systemie też powinna być sporą zaletą dla tych co zetkną się z tym pierwszy raz.
Dajesz "Nowy projekt" wybierasz rodzaj wstawiasz 3 guziki, komponent REST API, jakąś listę i za niecałe 30 minut masz napisaną aplikację, korzystając a z API 4Programmers i wyświetlającą newsy na Win, Andoid, Apple i nawet smartwatchach...

Próg wejścia aby robić dobre aplikacje jest niski... W przypadku aplikacji natywnych nawet łatwiej niż w PHP. Z serwerami już trudniej ale to dotyczy wszystkich języków.

screenshot-20221126161254.png

4

Moje trzy grosiki...Ostatnie Delphi jakie kupiłem i używałem to D2005. Kiedy mogłem sobie pozwolić na zatrudnienie informatyka kupiłem XE2.. ale Buildera (chociaż licencja na Delphi też była), bo jednak gość już z tzw. nowego rozdania edukacyjnego-czyli c++. Część mojej twórczości przepisał na c++. Kiedy przyszło do dopisywania własnych programów współpracujących z systemem Comarchu, nastąpił przeskok na c# w VS. Ja w międzyczasie zamieniłem D na fpc+Lazarus. Większość aplikacji które obecnie tworzę dotyczą styku elektroniki i automatyki. Wizualizacja procesów, komunikacja z mikrokontrolerami i takie tam. Np. obecnie kończę oprogramowanie w ladderze (PLC), które zdalnie kontroluje pracę robota przemysłowego i dedykowanej linii produkcyjnej. Wizualizację pracy robota i całej linii zrobię najprawdopodobniej na PascalScada a jeszcze mogę napisać serwer webowy używając fpweb/Brook +pas2js.. Oczywiście całość pisana używając środowiska Lazarus. Także ten...

1
lampasss napisał(a):

Natomiast ciekawy jestem średniej wieku programistów Delphi - (pozwólmy już odejść Pascalowi - mówmy o Delphi) - obstawiam że coś koło 50 lat.

Z osiemnastoletnią wersją IDE (wątek obok). W sumie jak jest pełnoletniość to pie się można

0

Zapytam inaczej... Jak długo fpc będzie otrzymywał aktualizacje, poprawki (o ile jakieś otrzymuje - ostatnia jest bodajże sprzed 18 miesięcy)? Jest to Waszym zdaniem kwestia raczej 5 czy 50 lat?

4

screenshot-20221201121648.png

Skoro od rozpoczęcia projektu minęło prawie 25 lat i nadal działają, to czemu by mieli porzucić?
Zauważ, że jest to środowisko/kompilator/pakiet/technologia/cokolwiek innego rozwijana przez pasjonatów, dla satysfakcji a nie dla zarobku, więc odpada tutaj argument w stylu przestało się opłacać, firma zaorała produkt. Mam wrażenie, że społeczność FPC/Lazarusa, wprawdzie nie jest jakoś mega liczna, ale jest stabilna i solidna. Byłeś kiedyś na forum Lazarusa/FPC? Praktycznie każdy problem zostaje rozwiązany, do tego udzielają się tam aktywnie ludzie, którzy sami tworzą te środowiska, więc masz bardzo wartościowe wsparcie z pierwszej ręki.

Poza tym masz rację - ostatni update FPC to jakoś półtora roku temu. Ale popatrz na changelog bliźniaczego/powiązanego projektu, czyli Lazarusa:

screenshot-20221201121903.png

Pytanie jest inne - czy masz jakiś konkretny powód, dla którego uważasz, że powinna wyjść teraz nowa wersja FPC? Czegoś konkretnego brakuje? Jest jakiś bug, który ma wpływ na bezpieczeństwo, albo powoduje wadliwe generowanie binarek? Czy taki zwykły onanizm numerkami, zmieńmy jakieś 3 linie, wypchnijmy jako kolejną wersję i niech się ludzie cieszą? :P

Wydaje mi się, że aktualizowanie samego kompilatora bez konkretnej potrzeby to taka sztuka dla sztuki. Za to Lazarus - czyli całe IDE do tworzenia aplikacji okienkowych, jest regularnie uaktualniane. Masz tam LCL, masz różne odwołania do funkcji systemowych (przypominam - Lazarus jest wieloplatformowy) i tam bardziej trzeba się skupić na łataniu błędów oraz aktualizacjach. I tutaj się panowie od FPC nie opieprzają, tylko robią co do nich należy.

2
skorupiak napisał(a):

Zapytam inaczej... Jak długo fpc będzie otrzymywał aktualizacje, poprawki (o ile jakieś otrzymuje - ostatnia jest bodajże sprzed 18 miesięcy)?

Przecież Lazarus i FPC są cały czas rozwijane i regularnie pojawiają się nowe wersje. Najświeższa wersja Lazarusa jest sprzed kilku tygodni. Nie zgaduj, a sprawdzaj — wszystkie informacje znajdziesz bez problemu w sieci, przede wszystkim na oficjalnej stronie Lazarusa.

Jest to Waszym zdaniem kwestia raczej 5 czy 50 lat?

Dowodem tego, że Lazarus nie upadnie, jest ilość czasu, jaką już istnieje. Po drugie, jest to projekt otwarty, więc chętnych do jego rozwoju (i używania) nie brakuje. Po trzecie, licencja pozwala na jego dowolne forkowanie, więc równolegle rozwijane są jego klony, w tym najpopularniejszy jest CodeTyphoon Studio. Absolutnie nie można twierdzić, że rozwij chyli się ku końcowi, bo nie ma na to żadnych dowodów, żadnych przesłanek. Można to brzydko podsumować, że „psy szczekają, karawana idzie dalej”, bo tak sprawy się mają. ;)

Przy czym należałoby zwrócić uwagę na to, że masa ludzi pisząc o „Pascalu”, nie ma na myśli 50-letniego dialektu, a właśnie Free Pascala oraz inne współczesne obiektowe Pascale.

0

OK. Więc jeszcze to przeformułuję... Jestem po 30-dziestce... i zamierzam dożyć przynajmniej 80-siątki. Przypuszczam, że pokaźny odsetek forumowiczów to ludzie z grubsza młodzi jak ja. Uświadommy więc sobie, że jeśli dziś zacznę jakiś projekt w Pascalu, będę musiał zapewnić mu wsparcie przez najbliższe 50 lat! Tj. drugie tyle, ile upłynęło od jego pojawienia się Pascala.

Nie martwią mnie tak bardzo nowoczesne "ficzery", ani problem nie tkwi w tym, jak często kompilator dostaje nowe numerki o ile wszystko sprawnie funkcjonuje. Tak serio martwi mnie tylko to, czy sam język w ogóle dożyje mojej śmierci za lat 50, bo przez ten czas ja będę musiał pascalowemu programowi zapewniać wsparcie... Obstawiam nawet, że przez najbliższe 50 lat pewne szanse ma przetrwać Fortran, choćby przez sentyment bo to był pierwszy wysokopoziomowy język lub z uwagi pokaźną ilość kodu w utrzymaniu w obiczeniach "naukowych", itd. Ale Pascal?

1
skorupiak napisał(a):

Jestem po 30-dziestce... i zamierzam dożyć przynajmniej 80-siątki. Przypuszczam, że pokaźny odsetek forumowiczów to ludzie z grubsza młodzi jak ja. Uświadommy więc sobie, że jeśli dziś zacznę jakiś projekt w Pascalu, będę musiał zapewnić mu wsparcie przez najbliższe 50 lat! Tj. drugie tyle, ile upłynęło od jego pojawienia się Pascala.

Przez podobnym wyborem stałem z 10 lat temu, kiedy jeszcze używałem Delphi — porzucić Delphi, czy jednak pozostać z Pascalami? Skończyło się na tym, że porzuciłem Delphi, ale na rzecz Lazarusa, nie C/C++, które brałem pod uwagę.

Przed takim wyborem również stałem w połowie tamtego roku, kiedy przymierzałem się do rozpoczęcia prac nad projektem gry, która docelowo miała być komercyjna. Zostać z Lazarusem, czy iść w C/C++? Potrzebuję wsparcia platform desktopowych, bo to byłby mój target, co najmniej przez kolejne 10 lat (bardziej 20 lat). Tutaj wybór też był podobny — zostaję z Lazarusem, biorę SDL-a i zaczynam działać.

Wybór w moim przypadku był jednak dość łatwy — język spełnia wymagania, IDE jest świetne i w zupełności spełnia moje oczekiwania, Free Pascala znam bardzo dobrze, więc od razu mogę przystąpić do pracy. Czyli w bardzo dużym skrócie — nie zmieniam poletka, bo nie ma to najmniejszego sensu. Różnica jest jednak taka, że ja z Pascalami mam do czynienia nieprzerwanie od 15 lat, a dla Ciebie @skorupiak to byłaby nowość.

Tak serio martwi mnie tylko to, czy sam język w ogóle dożyje mojej śmierci za lat 50, bo przez ten czas ja będę musiał pascalowemu programowi zapewniać wsparcie...

Nie da się tego określić — ani w przypadku Pascala, ani żadnej innej technologii. Za 50 lat równie dobrze świat może już nie istnieć, więc martwisz się bez potrzeby. Natomiast ja się o tę technologię nie martwię — Pascal istnieje od 50 lat, FPC od 25, Lazarus od 10, więc jest to grunt stabilny. Martwić bym się musiał, gdybym się zastanawiał nad wybraniem nowej technologii, która ma raptem rok czy kilka lat, bo takie są niepewne.

2

jeśli dziś zacznę jakiś projekt w Pascalu, będę musiał zapewnić mu wsparcie przez najbliższe 50 lat!

Kolego, ale o czym Ty piszesz? Jeśli stworzysz jakiś komercyjny produkt, który się utrzyma na rynku i będzie wykorzystywany przez klientów przez tyle lat, to ewentualna migracja nie powinna stanowić problemu. Nikt nie będzie takiego czegoś trzymać dla 230 zł miesięcznie, a jak będzie większa kasa, to i znajdzie się budżet na migrację. Zresztą - ewentualne zamknięcie projektu i zakończenie jego wspierania/rozwoju nie odbędzie się z dnia na dzień. A nawet jakby się tak stało - to i tak ostatnie wersje będą dostępne, będą nadal w pełni funkcjonalne, będziesz mógł w oparciu o nie dalej działać, dodawać nowe przyciski, okienka czy inne elementy interface, jednocześnie powoli sobie migrując na "lepszą" technologię.

Serio - wydaje mi się, ze to takie wymyślanie na siłę problemów. Trochę na zasadzie w sumie to bym kupił Ferrari, ale to takie głośne, twarde zawieszenie, nisko się siedzi, do tego dużo pali i nie wiem, czy za 50 lat będą do niego dostępne części w InterCars :P Poza tym, jeszcze w kwestii tych 50 lat - może Lazarus i Delphi się skończą. Ale masz gwarancję, że JavaScript, Flutter, PHP, CePłotek, Haskell (pozdrawiam @KamilAdam) i setki obecnie modnych i wykorzystywanych technologii się utrzyma? Wydaje mi się, że przyjąłeś błędną perspektywę, nie powinieneś planować projektów IT w perspektywie 30 czy 50 lat, a raczej 5, max 10. A w takim okresie jestem na 99% przekonany, że zarówno Delphi, jak i FPC/Lazarus będą dalej sobie śmigać.

0

Niestety specyfika moich niektórych (nie wszystkich) projektów WYMAGA planowania w perspektywie lat 50. Nie piszę gierek, duperelek - pisałem, że nie jestem zawodowym programistą... Taki być może utrzymuje program tak długo, jak mu za to płacą, potem zmienia firmę, a o wcześniejszej pracy zapomina. Ja pracuję nad oprogramowaniem o innym charakterze. Jakiś czas temu wypuściłem np. program do obliczeń naukowych, z dziedziny którą się zajmuję naukowo i jest to program dla bardzo wąskiego grona odbiorców, który jednak MUSI mieć wsparcie do końca mojego życia. Prawdopodobnie w styczniu ruszę z projektem open source dla przemysłu kosmicznego, który kurdę MUSI się kompilować przez najbliższe lat 50, lepiej 100.

1

No to dwie uwagi:

  1. Skoro nie podałeś specyfiki tego, co robisz, to ciężko, żebyśmy wiedzieli co konkretnie jest Ci potrzebne, jakie masz wymagana, co jak i dla kogo tworzysz itp
  2. Skoro to takie niszowe narzędzie, to wygląd jest sprawą drugorzędną. W takim razie - nie widzę powodów, dla których byś miał stracić możliwość dalszego pisania czy modyfikowania swojego programu, nawet jeśli FPC zakończy swój rozwój. Będziesz miał wersję ostatnią, która została wypuszczona, na niej będziesz mógł dalej modyfikować swój algorytm itp. OK, może nie dostaniesz wsparcia jakiegoś nowego wyglądu (typu Aero od czasów Windows Vista), ale to jedynie kwestia wizualna. Dodanie zmian w algorytmie nijak się ma do kwestii tego, czy wychodzą kolejne wersje FPC, czy nie.
0

Dzięki za odpowiedzi! Wiem, że nie podalem wielu detali, by się dało coś mi poradzić... Jak pisałem we wcześniejszych postach, jestem zdania, że optymalną dla mnie technologią jest Rust.

Niemniej Pascala darzę pewnym sentymentam z dzieciństwa, zastanawiam się, na ile wykorzystanie go w poważnym długoterminowym projekcie miałoby sens dziś. Poza tym, że Pascal jest "fajny", wielu argumentów nie znajduję. Również w postach wyżej o Ada pisałem całkiem na serio - nie liczy się dla mnie, czy język niszowy, liczy się, czy jest solidny i czy utrzymam w nim długoterminowy projekt.

3

Mogę doradzić jeszcze, abyś narzędzia do pracy dobierał według wymagań projektowych, a nie przez pryzmat sentymentów, bo to nie jest adekwatne podejście, wręcz nieprofesjonalne. Jeśli Pascal/Delphi spełnia wymagania to go po prostu użyj, a jeśli uważasz, że Rust lepiej się nadaje, to bierz Rusta.

Sentymentalne podejście zostaw tym, którzy nie szanują swojego czasu i swojej pracy.

0

Skoro pojawił się Pascal w kontekście kosmosu od razu przychodzą mi na myśl AstroJaWil i Nocny Obserwator. Aplikacje doskonale znane pasjonatom astronomii, napisane w Delphi przez Janusza Wilanda. Programy pisane i rozbudowywane przez długie lata ,Obecnie rozwijany jest nadal Nocny Obserwator, potężny kombajn, napiany przez jedną osobę! Co ciekawę autor przesiadł się na przestrzeni lat z bezpłatnego Delphi 7, na którąś z wersji komercyjnych (płatnych).

4
davout napisał(a):

Co ciekawę autor przesiadł się na przestrzeni lat z bezpłatnego Delphi 7, na którąś z wersji komercyjnych (płatnych).

Nie dziwię się, skoro Delphi 7 było przyspawane do Windowsów, wspierało tylko 32-bitowy kod, a ichni VCL nie ogarniał interfejsu systemów Vista+ (kto pamięta VistaAltFix, ten wie o co chodzi). W dodaktu Delphi 7 jako IDE było potwornie prymitywne w stosunku do ówczenych wersji Delphi czy Lazarusa, a do aktualnych jeszcze bardziej.

Ogólnie, jeśli ktoś tkwi w starym Delphi, a może zmienić IDE, to lepiej żeby jak najszybciej to zrobił.

0
furious programming napisał(a):

Mogę doradzić jeszcze, abyś narzędzia do pracy dobierał według wymagań projektowych, a nie przez pryzmat sentymentów, bo to nie jest adekwatne podejście, wręcz nieprofesjonalne. Jeśli Pascal/Delphi spełnia wymagania to go po prostu użyj, a jeśli uważasz, że Rust lepiej się nadaje, to bierz Rusta.

Sentymentalne podejście zostaw tym, którzy nie szanują swojego czasu i swojej pracy.

Dałem plusa, bo ogólnie jest to prawda co piszesz. Ale czasami jest też tak, że jak nie dostaniesz kopa, czyli nic się nie wydarzy, co zmieni twoje nastawienie, to ci się wydaje, że coś spełnia twoje potrzeby bo nie wiesz, że można lepiej, nie szukasz i nie chcesz wyjść ze swojej strefy komfortu.

2

@cerrato: wracając do tematu sprzed kilku miesięcy: właśnie instaluję nowe RAD Studio i widzę, że C++ już też ma obsługę androida:

screenshot-20230129145935.png

1

Próbowałem w Delphi pisać na Androida - no nie bardzo to wychodzi. W Kotlinie, który jest banalnie prosty ten sam temat rozwiązałem duuużo szybciej.
Jakoś sprawdza się w moim przypadku, że Delphi to WIndows, Kotlin to Android. Ale może ktoś ma inne doświadczenia. Delphi i Kotlin cenię za szybkość tworzenia programów i co się przekłada na wynagrodzenie.

0

W Delphi szybciej, bo tam jak np chcesz obsługę Rest to wstawiasz na formę TRest, w kodzie piszesz Trest1.open i pyk działa. W Kotlinie jakieś dziwne niezrozumiałe rzeczy trzeba robić.

0

Kotlin jako klient "restowy" - za serwer w delphi raczej mormot

1
gajusz800 napisał(a):

@Alley Cat: Co twój post wnosi do tematu oprócz obrażania ludzi?

Nikogo mój post nie obraża. Zgodnie z SJP PWN: pogrobowiec - «zwolennik idei, która przestała być aktualna»

Zwyczajnie uważam, że na chwilę obecną Pascal się nie liczy poza wąskim gronem jego zwolenników, a poza tym gronem jest w zasadzie martwy. W mojej opinii nie ma żadnych istotnych zalet w porównaniu chociażby z C/C++, ale ma za to liczne wady, których pozbawieni są jego główni konkurenci.

Jeszcze ta, nie przystająca do współczesnych standardów, dziwaczna składnia przypominająca BASIC lub COBOL.

Wystarczy poprzeglądać sobie oferty pracy, na przykładzie No Fluff Jobs: Pascal: 0 ofert, Delphi: 0 ofert.
Już nawet COBOL i Fortran bardziej się liczą i są jakieś pojedyncze oferty.

Technologia współcześnie rozwija się wystarczająco szybko, aby nie pozostawić zbytnio miejsca na sentymenty, a czasy świetności Pascala i Delphi już dawno minęły.

Kolega niech się zatem pogodzi z obecnym stanem rzeczy, bo na razie to chyba nieubłagana rzeczywistość kolegę "obraża", czyżby syndrom oblężonej twierdzy?

Uważasz osoby takie jak @katakrowa czy @furious programming za „pogrobowców”?

Nie wiem, nie lubię obgadywać za plecami. Jak będą chcieli, to zapewne sami się na swój temat wypowiedzą.

A ty jaką wiedzą się wykazałeś?

Nie o mnie ten wątek.

0
Alley Cat napisał(a):

(..) jest w zasadzie martwy. W mojej opinii nie ma żadnych istotnych zalet w porównaniu chociażby z C/C++, ale ma za to liczne wady, których pozbawieni są jego główni konkurenci.

Poproszę o dwie zalety, które maja konkurenci a nie ma Delphi oraz 2 wady
Warto także zwrócić uwagę na to, że RAD Studio o którym dziś wspomniałem to także C++ 17.

1
katakrowa napisał(a):

Poproszę o dwie zalety, które maja konkurenci a nie ma Delphi oraz 2 wady

Kolega raczył pomylić forum dla programistów z barem szybkiej obsługi XD

No ale niech będzie, wypiszę nawet więcej:

Zalety C / C++:

  1. Bezpośrednia kompatybilność ze standardowymi plikami nagłówkowymi (systemowymi i bibliotecznymi).
  2. Standardowe ABI (jeśli chodzi o C) i dobra współpraca z systemami operacyjnymi oraz bibliotekami.
  3. Składnia umożliwiająca szybkie rozpoczęcie pracy z językiem, jeżeli znamy inne współczesne języki.
  4. Liczne i różnorodne implementacje języków programowania.
  5. Liczne dobrze działające narzędzia, w tym IDE.
  6. Dużo ofert pracy.

Wady Delphi:

  1. Nietypowa składnia języka nie przystająca do współczesnych standardów, dziwaczne nazwy typów danych.
  2. Słaba przenośność kodu.
  3. Toporny edytor w IDE (i całe IDE też, brak dobrych alternatyw).
  4. Stosunkowo mało implementacji.
  5. Stosunkowo mało narzędzi.
  6. Bardzo mało ofert pracy.

Warto także zwrócić uwagę na to, że RAD Studio o którym dziś wspomniałem to także C++ 17.

To tylko potwierdza, że Pascal jest przestarzały. Nawet RAD Studio idzie z duchem czasu :)

0

@Alley Cat: to teraz zarób na odwrót — podaj wady C/C++, a następnie zalety Pascala/Delphi. ;)

0

Instalacja Biblioteki Allegro w środowisku Turbo Pascal Wrzucam swój stary temat na tym forum odnośnie Pascal'a jak by ktoś był zainteresowany i tak.. pascal jest staroświecki ale twierdzenie że dzisiaj korzystanie z niego jest archaiczne to daleko idąca bzdura.

2

@matej47 czy zdajesz sobie sprawę że Pascal jest młodszy (nowszy) niż C?
Więc jeżeli mówimy o staroświeckości to raczej C jest staroświecki.
Z tym że C doczekał się C++ z tym że Pascal doczekał się Obiektowego Pascala (czytaj Delphi).
Więc nadal C++ jest bardziej staroświeckości od Obiektowego Pascalu.
Pieje do tego że warto być ostrożnym z nazewnictwem :|)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.