eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingProgramista iOS - Łódź › Re: Programista iOS - Łódź
  • Data: 2014-03-25 20:48:32
    Temat: Re: Programista iOS - Łódź
    Od: Wojciech Muła <w...@g...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    On Tuesday, March 25, 2014 7:39:49 PM UTC+1, Sebastian Biały wrote:
    > >> Średniej krajowej *programisty* czy sredniej krajowej?
    > > Programisty oczywiście.
    >
    > Interesujące. Masz jakies badania?

    Nie. To moje obserwacje na próbce z pewnego dużego miasta.

    > > Żeby zrobić Twój wymyślony grafik sprzątaczek, to jednak trzeba coś tam
    > > wiedzieć, np. jak wykrywać kolizje przedziałów czasowych. I poprawnie
    > > obsłużyć równoległe zmiany w bazie. Wiesz jak się to ostatnie robi,
    > > czy masz bibliotekę? :)
    >
    > W innym języku mam boost::range.

    Zadanie jest proste: mamy n przedziałów, mają na siebie nie nachodzić,
    ale jeśli nachodzą, trzeba podać ich listę, ale na zasadzie: "przedziały
    A, C i D kolidują", bez wnikania, które pary konkretnie.

    Jak to zrobisz z pomocą tej biblioteki boostowej? I jak to zrobisz
    boostem, jeśli żądam, żeby test wykonał się czasie O(n log n)?
    (Odpuszczam złożoność pamięciową, nie mam serca wymagać O(1)).

    > IMHO nie napiszę lepiej, szczególnie jesli nikt na swiecie tego nie
    > robi w tym języku. Albo inaczeju: gdyby ktokolwiek na serio tego
    > potrzebował i był dobrym programistą to by napisał taką bibliotekę,
    > może niekoniecznie OS oczywiście.

    Nie chcę abyś poczuł się urażony, ale mój dobry kolega (PHP-owiec)
    też głęboko wierzy w moc bibliotek - dostrzegam podobieństwo. :)

    > Równległe zmiany w bazie obsługuje baza. Zazwyczaj. Bywa że jak nie
    > obsługuje to się zmienia bazę (częste podejście wiekszych firm).

    Nie na tym polega problem: masz dwa wątki (niechby i std::thread),
    one sobie czytają z bazy, aktualne na daną chwilę, listę przedziałów,
    sprawdzają czy mogą dodać nowy przedział i wtedy go dopisują; baza
    danych nie weryfikuje poprawności (w sensie: constrainty w bazie).
    Nie ma tutaj wzajemnego wykluczania wątków, więc baza może stać się
    niespójna. To jest trudne w sytuacji webowej, gdzie nie ma mutexów.

    > > No to nie każdy dostanie takie zadanie. Powiem nawet więcej: nieliczni
    > > programiści C++, Javy, czy Pythona są w stanie to zrobić. I nie każdy
    > > absolwent wyższej uczelni wie, że istnieją takie cuda, jak drzewa BST
    > > (nie mówiąc o ich wyważonych wariantach).
    >
    > Ilu programistów powiedzmy C++ slyszało o drzewach w ogóle a ilu
    > PHPowców?

    Nie wiem, z tych co znam to pewnie sporo. Natomiast teraz siłą rzeczy
    obserwuję rekrutację programistów C++ i bywają tacy, że daj Panie
    Boże zdrowie.

    > Jeśli niewielu PHPpowców w ogóle wie co to jest to zapewne nie
    > ma tego w języku. A jak nie ma tego w języku to nieliczni co slyszeli
    > zaczynają tworzyć kwadratowe koła. Efektem czego masz 50 implementacji i
    > każda popsuta. To nie jest dobry język. Nie zapewnia nawet minimum
    > zaplecza. To cud jakiś że w ogóle mają sortowanie.

    Hm, kolega dwa biurka dalej to samo uważa o bibliotece standardowej C++.
    Ale on jest dziwny, bo chce mieć sortowanie wielowątkowe. :)

    > Absurd osiągnięto w momencie stwierdzenia że "jak czegoś nie ma to sobie
    > można napisać, to dobry język".

    Wyolbrzymiasz.

    > > W ciągu kilkunastu miesięcy pracy w PHP nie zetknąłem się chyba z ani
    > > jednym problemem tego typu.
    >
    > Ja po 5 minutach zabawy dostałem w łeb =, ==, ===. Może kwestia
    > szczęscia, nie wiem. Ale jakoś nie tylko ja narzekam.

    Kwestia niezrozumienia. Praktycznie to samo jest w Pythonie, tylko
    zamiast === masz słówko "is". W javascripcie też jest === i to dokładnie
    to samo działanie. Niedobre w PHP jest to, że == sam z siebie rzutuje
    w mało rozsądny sposób. BTW C++ też ma niejawne konwersje, które są
    nieoczywiste.

    > Ponadto środowisko PHPowców ma coś wsólnego ze środowiskiem Delphi.

    Ja się obracałem w środowisku skupionym wokół frameworka Symfony.
    I widzę, że to jest zupełnie inna grupa, tutaj liczy się jakość,
    testowanie, dobre wzorce projektowe. Jest też sensowne zarządzanie
    zależnościami itp.

    (BTW na Symfony stoi YouPorn, to jako ciekawostka).

    > Oni też potrafili się wykłucać że uniwersalny kontener na wszystko
    > jest lepszy niż specjalizowane o znanych złożonościach "bo kto
    > obrabia więcej niż 200 wpisów".

    Akurat dość rozsądny argument. Przywołaj proszę jakiś mniej sensowny.

    > I niby C++ jest używany profesjonalnie? C++ jest używany z różnych
    > przyczyn, ale raczej nie z powodu bycia profesjonalnym.

    Hm, to ja czegoś nie wiem o swojej pracy. :)

    > Nie rozumiesz. Gdyby w PHP problemem byla *tylko* dynamiczność to możesz
    > sobie robić flame. Ale problemów w PHP jest tak wiele, że ta
    > dynamicznośc nie ma żadnego znaczenia przy wyborze języka. To jest nic w
    > porównaniu z masą idiotycznych pułapek które po wielokroć ten język
    > przekreślają w parze ze słowem "profesjonalny", "bankowy", "dobry".

    Ale sorry, sam pisałeś, że miałeś jakąś krótkotrwałą przygodę z PHP-em,
    więc ciągle posługujesz się fragmentaryczną i przestarzałą wiedzą.

    > W pewnych sytuacjach. W innych musisz recznie żebrać. I proszę, nie
    > dopytuj kiedy, bo nie mam ochoty szukać w backupach kodu pisanego 4 lata
    > temu, oby nigdy więcej.

    O panie! Cztery lata temu to jeszcze po Ziemi chodziły dinozaury
    i programiści LISP-a.

    > > Z przeglądarką nie jest związany żaden stan, pewnie myślisz o sesji.
    >
    > Myślę o ustawieniach.

    Ale przeglądarki? Chyba coś mieszasz.

    > Zaryzykuje ze składnia i gramatyka C++ jest bardziej spójna niż PHP. Co
    > wydaje sie niemożliwe przy bałaganie C++...

    Gramatyka PHP-owa jest regularna (albo prawie regularna), C++ nie jest
    regularna --- C++ do sparsowania wymaga znajomości typów (nie mówiąc o
    preprocesorze).

    > Gdzie one są, żeby je zobaczyć? I żeby nie mialy MySQLa ani HTTP, ale za
    > to miały równania nieliniowe. Czy kto widział, kto?

    Sorry, ale nie dostaniesz dostępu do bankowego intranetu. Ja też już
    nie mam szans, więc nie zadowolę nikogo w tym wątku.

    w.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: