Czy programowanie to już tylko łączenie klocków w całość?

Czy programowanie to już tylko łączenie klocków w całość?

Wątek przeniesiony 2022-04-29 11:46 z Off-Topic przez somekind.

AS
  • Rejestracja:prawie 3 lata
  • Ostatnio:prawie 3 lata
  • Postów:8
0

Czego sie teraz uczycie?

Czy programowanie to już tylko łączenie klocków w całość? W wątku o nauce pojawia sie konteneryzacja, cloud, ząrzadzanie. Cytując klasyka: "weź dwie klasy, pożen je i rozwiąrz problem biznesowy" Czy na pewno chcemy by to w tę stronę szlo? Czy to odpowiedni kierunek wedlug Was?

edytowany 1x, ostatnio: -AS-
PI
  • Rejestracja:ponad 9 lat
  • Ostatnio:3 miesiące
  • Postów:2787
4

A po co sądzić czy to odpowiednie czy nie? Tak po prostu jest - nowe funkcjonalności biznesowe są coraz większe, wszędzie się liczy time-to-market, więc jeśli biznes ma wyboru dwie opcje:

  • zespół deweloperów piszący od zera pewne zagadnienie, który w 1 rok zrobi PoC
  • zespół deweloperów używający bibliotek / środowisk / gotowych klocków (które są używane przez sporą część społeczności IT i przetestowane na różnych płaszczyznach) i dający gotowe rozwiązanie w 2 miesiące

To chyba nie muszę mówić co zostanie wybrane xd

To tak samo jak z tym, że "kobiety lubią bad boyów" - po co oceniać czy to "dobre" czy "złe"? Tak po prostu działa świat / wolny rynek, i albo się do tego przystosowujesz albo nie.

edytowany 1x, ostatnio: Pinek
KamilAdam
  • Rejestracja:ponad 6 lat
  • Ostatnio:8 dni
  • Lokalizacja:Silesia/Marki
  • Postów:5505
6
-AS- napisał(a):

Czego sie teraz uczycie?

Czy programowanie to już tylko łączenie klocków w całość? W wątku o nauce pojawia sie konteneryzacja, cloud, ząrzadzanie

Ale nie wiesz na jakim poziomie są ludzie którzy się wypowiadają. Może już umieją programować wystarczająco i teraz potrzebuję się na uczyć tylko opsowania?
Nie wiesz nawet czy to jeszcze programiści. Część programistów jest znudzona programowanie i tym nieszczęsnym Scrumem i postanawiają się przekfalifikować na Cloud inżyniera czy innego Ops Inżyniera.

-AS- napisał(a):

Cytując klasyka: "weź dwie klasy, pożen je i rozwiąrz problem biznesowy" Czy na pewno chcemy by to w tę stronę szlo? Czy to odpowiedni kierunek wedlug Was?

BTW jeśli istnieją dobre gotowe klasy w bibliotekach to czemu ich nie użyć? Jeśli potrzebujesz bazy danych do przechowywania stanu aplikacji to bierzesz postgresa czy piszesz własną bazę danych? Oczywiście są wśród nas tacy którzy piszą własną bazę danych, ale to mniejszość

BTW2 W pracy szczęśliwie nie płacą mi od linijki kodu, tylko za to żebym jak najszybciej zaklepał rozwiązanie więc wszyscy cieszą się jak użyję jak najwięcej gotowych rozwiązan i jak najszybciej dostarczę działąjące rozwiązanie


Mama called me disappointment, Papa called me fat
Każdego eksperta można zastąpić backendowcem który ma się douczyć po godzinach. Tak zostałem ekspertem AI, Neo4j i Nest.js . Przez mianowanie
edytowany 1x, ostatnio: KamilAdam
W0
  • Rejestracja:ponad 12 lat
  • Ostatnio:5 minut
  • Postów:3543
3

Wyciągnąłeś trochę zły wniosek. Cloud i konteneryzacja jest czymś względnie nowym więc dużo osób się tego uczy. Gdyby nagle HFT stało się popularne to byś zapewne widział ludzi co się uczą HFT.

Jeśli chodzi o resztę - to tak, dużo pracy na rynku to wykorzystywanie istniejących narzędzi. I nie ma w tym nic złego, tak samo jak nie ma nic złego w korzystaniu z łopaty zamiast rąk do bicia po głowach zombi.

IK
  • Rejestracja:ponad 7 lat
  • Ostatnio:prawie 2 lata
14

Programowanie zawsze było łączeniem klocków w całość, tylko klocki są na coraz wyższym poziomie.

PaulGilbert
I jest ich coraz więcej.
Miang
  • Rejestracja:prawie 7 lat
  • Ostatnio:około godziny
  • Postów:1659
6

gorzej jak ktoś potrzebuje jednego klocka a ma go wpiętego w budowlę i całą tę budowlę do projektu doda ;)


dzisiaj programiści uwielbiają przepisywać kod z jednego języka do drugiego, tylko po to by z projektem nadal stać w miejscu ale na nowej technologii
KamilAdam
Różne kulty cargo są, czasem szalony architekt chce żeby dodać jakiś framework mimo że nie jest potrzebny :D Słynne nie da się programować w Javie bez Springa
LukeJL
No właśnie. Sytuacje, gdzie jakaś biblioteka zawiera fajny ficzer X, jednak biblioteka ma architekturę dość monolityczną, więc musisz użyć całej biblioteki. Ew. zrobić forka i spróbować zekstraktować dany ficzer, ale to też byłoby kłopotliwe.
S4
  • Rejestracja:około 3 lata
  • Ostatnio:ponad rok
  • Postów:1268
2
-AS- napisał(a):

Czy programowanie to już tylko łączenie klocków w całość? W wątku o nauce pojawia sie konteneryzacja, cloud, ząrzadzanie. Cy

To nie ma znaczenia czego my chcemy tylko co wykreuje rynek. A wykreuje to, co będzie bardziej opłacalne. To nie kościół, żeby przez 2k lat nic się nie zmieniało.

Miang napisał(a):

gorzej jak ktoś potrzebuje jednego klocka a ma go wpiętego w budowlę i całą tę budowlę do projektu doda ;)

To może on nie potrzebuje tego klocka, żeby stawiać coś po swojemu, tylko może użyć tej budowli.

S9
  • Rejestracja:ponad 4 lata
  • Ostatnio:około 2 lata
  • Lokalizacja:Warszawa
  • Postów:1092
8

W wątku o nauce pojawia sie konteneryzacja, cloud, ząrzadzanie. Cytując klasyka: "weź dwie klasy, pożen je i rozwiąrz problem biznesowy" Czy na pewno chcemy by to w tę stronę szlo? Czy to odpowiedni kierunek wedlug Was?

A czego mam się uczyć po ponad 5 latach komercyjnego kodzenia? Wiadomo że kodować już ogólnie umiem, więc trzeba ogarniać już lepiej konkretne narzędzia takie jak Kafke pod konkretne projekty.
Stworzyłem i tworzę soft z którego korzystają miliony. Oczywiście staram się też poprawiać ogólne umiejętności, ale to jest proces stały i często myślę jak to lepiej ogarnąć czy to na poziomie architektury pojedynczej aplikacji czy systemów rozproszonych.


edytowany 3x, ostatnio: scibi_92
PI
miliony userów? 1kk request problem? ;> Inwalidacja cache'y? Skalowalność?
S9
@Pinek: edytowalem żeby było wiadomo o co mi chodzi
ML
  • Rejestracja:ponad 19 lat
  • Ostatnio:około 3 godziny
  • Postów:856
5

Gdybyś chciał zbudować samochód to kupisz potrzebne części czy pójdziesz do kopalni po rudę żelaza?

ledi12
  • Rejestracja:ponad 5 lat
  • Ostatnio:20 dni
  • Lokalizacja:Wrocław
2

Biznes się rozwija więc i wymagania rosną. Tak jak było wspomniane wcześniej, liczy się czas a czas to pieniądz. Są gotowe rozwiązania, które działają i dostarczają wartość biznesową, więc się ich używa. Pociesze Cię (a może jednak nie), ale tego będzie tylko więcej.


Robię http response status cody w martwych ciągach
several
  • Rejestracja:ponad 15 lat
  • Ostatnio:około 2 godziny
5

Programowanie nie. Praca programisty w biznesie często tak.


Aventus
  • Rejestracja:prawie 9 lat
  • Ostatnio:ponad 2 lata
  • Lokalizacja:UK
  • Postów:2235
6

Wszystko zależy od tego gdzie postawimy granicę między abstrakcją a potrzebą implementacji. Wtedy dopiero można próbować definiować co jest, a co nie jest "klockami". Jak niektórzy już wcześniej wspomnieli w przykładach, programowanie nie różni się od innych sfer życia/branży. Firma budowlana nie wypala cegieł, firma jubilerska nie kopie diamentów w kopalni- można by wymieniać. Podobny stan rzeczy w firmach gdzie pisze się oprogramowanie biznesowy nie powinien więc dziwić- zamiast wynajdować koło na nowo, używa się gotowych narzędzi. Ale zwróć uwagę że ten tok rozumowania można by odwrócić- czy kogoś zdziwi jeśli ktoś piszący sterowniki w C albo system operacyjny, nie będzie pisał złożonego systemu biznesowego?

Reasumując:

Czy na pewno chcemy by to w tę stronę szlo? Czy to odpowiedni kierunek wedlug Was?

To nie "idzie" w żadnym kierunku bo jest zwyczajnie odzwierciedleniem rzeczywistości. Pracuję się "manualnie" nad konkretnym, wyspecjalizowanym produktem, i wspomaga innymi produktami- tym, nad czym inni pracowali "manualnie" i upewnili się że ich produkt działa jak należy, korzystając z innych produktów, itd.


Na każdy złożony problem istnieje rozwiązanie które jest proste, szybkie i błędne.
edytowany 1x, ostatnio: Aventus
CO
  • Rejestracja:około 7 lat
  • Ostatnio:8 miesięcy
  • Postów:27
1

Zależy od projektu. Jeżeli projekt jest mocno standardowy i bardzo powtarzalny to są gotowe klocki, których można użyć do jego budowy.
Natomiast im bardziej projekt jest unikalny tym trudniej znaleźć gotowe części, które by pasowały. Często okazuje się, że jakiś framework/biblioteka w teorii pasuje, a w praktyce trzeba by ją przerabiać i że łatwiej napisać swoje.

SE
  • Rejestracja:prawie 6 lat
  • Ostatnio:8 dni
  • Postów:321
2

Czasami korzysta sie z gotowych rozwiazan, ale do "laczenia klockow" to jeszcze dluuuga droga.

SW
Czasami? co ty robisz, że tylko "czasami"?
SE
RE
  • Rejestracja:prawie 5 lat
  • Ostatnio:12 miesięcy
  • Postów:17
0

Tak, najważniejsza jest wartość dodana

CZ
  • Rejestracja:ponad 8 lat
  • Ostatnio:około miesiąc
  • Postów:2284
1

Tak to wygląda, ale z drugiej strony to dobrze chyba, bo wieksza automatyzacja, prostszy kod to i prościej go utrzymywać.
A jak ktoś będzie chciał to myślę że znajdzie pracę przy tworzeniu tych klocków

Satanistyczny Awatar
  • Rejestracja:ponad 6 lat
  • Ostatnio:minuta
  • Postów:695
0

Zależy gdzie pracujesz. Jak piszesz stery do drukarek to inaczej to wyglada niż w webdev a inaczej jak piszesz jakiś baremetal na customową SoC firmy. Jest też cała masa pozycji gdzie sie w zasadzie prawie w ogóle nie programuje tylko analizuje kod innych ale trzeba mieć przy tym sporą wiedzę programistyczną.

CZ
W c++ na utrzymaniowkę starego wielomilionowego g... biorą glownie juniorów, albo kogokolwiek, bo nikt tam nie chce pracować. Też się tylko analizuje kod innych a programuje się prawie wcale
Satanistyczny Awatar
Są i takie przypadki. Można dopisać do listy.
LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:5 minut
  • Postów:8399
1

Programowanie to zawsze było łączenie gotowych elementów. Pierwsi programiści cieszyli się, jak mieli gotowe mnożenie dwóch liczb przez komputer (a do takiej głupoty też trzeba zrobić układ elektroniczny). My to bierzemy jako pewnik i naszymi klockami raczej są biblioteki czy usługi chmurowe.

Tylko jeśli jakiś tool robi za dużo, to programista nie ma już wiele do roboty. I programowanie wtedy przestaje(!) być budowaniem z klocków, a zaczyna być klejeniem taśmą złożonych przez kogoś innego zestawów.

Tylko mi się to nie podoba za bardzo, bo:

budowanie z klocków = kreatywność
klejenie taśmą gotowych zestawów = prowizorka


edytowany 1x, ostatnio: LukeJL
SL
  • Rejestracja:około 7 lat
  • Ostatnio:23 minuty
  • Postów:866
3

Przecież tak zawsze było. Wszystkie procesory wspierają dodawanie liczb w zapisie binarnym ale to nie jest pierwotna forma. W prymitywnej maszynie turinga wszelakie operacje to sklejanie jedynek. Programowanie to zawsze było sklejanie klocków tyle, że klocki się zmieniają

edytowany 1x, ostatnio: slsy
piotrpo
  • Rejestracja:ponad 7 lat
  • Ostatnio:około 15 godzin
  • Postów:3277
4

Sorki, ale to coś na kształt:
Czy dzisiaj w budowlance chodzi już tylko o łączenie cegieł? Nikt już sam nie robi okien, desek podłogowych, tylko składa to wszystko do kupy?

A już nieco bardziej merytorycznie:
Duża część programowania to rozwój narzędzi wspierających procesy biznesowe. Czyli pan Zenek klika, ze chce urlop, jego przełożony to klika, informacja leci do pani Jadzi z kadr i do księgowości. Liczy się biznes, czyli taki system przyniesie zysku i ile będzie kosztował. Tylko trzeba pamiętać o paru rzeczach:

  • ktoś te klocki napisał, pewnie programista
  • pisanie kodu jest dość banalne, ale to nie jest jedyny element procesu produkcji oprogramowania, a już na 100% nie jest ani najtrudniejszy, ani najbardziej czasochłonny
  • istnieje oprogramowanie inne niż to wspierające biznes.
WeiXiao
  • Rejestracja:około 9 lat
  • Ostatnio:około 14 godzin
  • Postów:5108
2

@-AS-:

Czy programowanie to już tylko łączenie klocków w całość? W wątku o nauce pojawia sie konteneryzacja, cloud, ząrzadzanie. Cytując klasyka: "weź dwie klasy, pożen je i rozwiąrz problem biznesowy" Czy na pewno chcemy by to w tę stronę szlo? Czy to odpowiedni kierunek wedlug Was?

A czym według ciebie jest programowanie? co według ciebie tam powinno się pojawić - tak ze 3 przykłady daj chociaż

ZI
  • Rejestracja:ponad 8 lat
  • Ostatnio:około 13 godzin
  • Postów:228
4

Dzięki Ci Panie boże ze to łączenie klocków. Kto pracował w autorskim firmowym frameworku (gdzie oczywiście na rynku jest 10 sprawdzonych robiących to samo i to jeszcze lepiej) na pewno to docenia.

LukeJL
Dokładnie. Mimo ze w swoich projektach mam podejście „reinventing the wheel”, to jak wchodzę w większy zespołowy projekt to ostatnie czego chce, to zrobiony na pół gwizdka autorski framework ze słaba dokumentacja. Może nie umiem grać zespołowo, ale mam w dupie to, ze jakiś inny doświadczony programista robił go pół roku na podstawie wymagań biznesowych. Jeśli zrobił go kijowo, to jest to kijowy framework.
jarekr000000
  • Rejestracja:ponad 8 lat
  • Ostatnio:około godziny
  • Lokalizacja:U krasnoludów - pod górą
  • Postów:4707
14

Czy programowanie to już tylko łączenie klocków w całość?
screenshot-20220429182215.png

Spytała jedna programistka ENIACa drugą programistkę ENIACa.
(Fakt, że klocki były większe)


jeden i pół terabajta powinno wystarczyć każdemu
edytowany 1x, ostatnio: jarekr000000
AS
Kij z klockami Ty zyjesz :) Umiesz wskrzesic Shaloma?
flowCRANE
Shalom jak będzie chciał to wróci. Na razie nie chce — ani jako użytkownik, ani tym bardziej jako moderator.
jarekr000000
Coście mu zrobili, NIEGODZIWCY?
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)