Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Pytania na rozmowie rekrutacyjnej
Forum PHP.pl > Inne > Hydepark
Stron: 1, 2, 3, 4, 5
red.orel
Cytat(!*! @ 1.04.2013, 20:01:58 ) *
A co mają do tego starsze języki? I czy te wartości nie powinny być inne/większe, tak dla "urozmaicenia" ;)


Kiedyś (dziś zapewne nadal) m.in. w C, tworzyło się tzw. wstawki asemblerowe - zmuszało to do odkrywania nowych horyzontów, nagrodą zabawy była wydajność.
lobopol
aras785 nie smile.gif
Może zmienię nieco treść
  1. $x = 'a3gfdgfgfgfdg';
  2. $y = 'bsdf33fgfgdfs';

a wynik oczywiście
  1. $y = 'a3gfdgfgfgfdg';
  2. $x = 'bsdf33fgfgdfs';

smile.gif

redeemer
Cytat(lobopol @ 1.04.2013, 20:26:58 ) *
aras785 nie smile.gif
Może zmienię nieco treść
  1. $x = 'a3gfdgfgfgfdg';
  2. $y = 'bsdf33fgfgdfs';

a wynik oczywiście
  1. $y = 'a3gfdgfgfgfdg';
  2. $x = 'bsdf33fgfgdfs';

smile.gif

list

W przypadku stringów ciekawym rozwiązaniem (pomijając jego praktyczność) jest też użycie substr smile.gif
  1. $x = $x.$y;
  2. $y = substr($x,0,strlen($x)-strlen($y));
  3. $x = substr($x,strlen($y));
r4xz
@lobopol - wpierw pytanie: po co? nie widzę zastosowania dla takiej operacji w php...
lobopol
@redeemer, można i tak, ale nie nazwałbym tego ładną metodą smile.gif można to rozwiązać dosłownie w jednej linijce, nie licząc spacji w 15 znakach smile.gif

@r4xz, w zasadzie masz racje, ale takie zadanie pokazuje znajomość mechanik programowania (i technicznie jest szybsze, choć w przypadku php nie ma to większego znaczenia)
redeemer
Cytat(lobopol @ 1.04.2013, 21:10:15 ) *
@redeemer, można i tak, ale nie nazwałbym tego ładną metodą smile.gif można to rozwiązać dosłownie w jednej linijce, nie licząc spacji w 15 znakach smile.gif

Napisałem list, myślałem, że będzie jasne wink.gif
  1. list($x, $y) = array($y, $x);

Spawnm
Cytat(lobopol @ 1.04.2013, 19:46:10 ) *
Zadanko bardzo proste, jak zna się inne (starsze języki tongue.gif )

Nie widzę praktycznego zastosowania tego zadania.
Czy to jakieś zadanie na poziomie uczelnianym gdzie trzeba zastosować coś głupiego, np. zapis do pliku?
  1. $x=1;
  2. $y=2;
  3. file_put_contents('dupa', $x);
  4. $x=$y;
  5. $y=file_get_contents('dupa');
!*!
Cytat(Spawnm @ 1.04.2013, 21:12:22 ) *
Nie widzę praktycznego zastosowania tego zadania.
Czy to jakieś zadanie na poziomie uczelnianym gdzie trzeba zastosować coś głupiego, np. zapis do pliku?


To po prostu test, wysilenie szarych komórek. Wersja liczbowa opiera się na dodaj, odejmij, wyświetl (ta z 1 i 2).
lobopol
Ok o brniecie trochę w niedorzeczne rozwiązania smile.gif
  1. $x^=$y^=$x^=$y;
  2. var_dump($x, $y);
redeemer
Cytat(lobopol @ 1.04.2013, 21:17:52 ) *
Ok o brniecie trochę w niedorzeczne rozwiązania smile.gif
  1. $x^=$y^=$x^=$y;
  2. var_dump($x, $y);

Przy stringach to zadziała tylko wtedy, kiedy będą równej długości.
lobopol
dlatego w zadanku jest równa długość smile.gif
Adi32
Ja ostatnio zastanawiam się czy zrobiłbym takie coś:

Powiedzmy mamy tabelę, 100 rekordów - pytań i odpowiedzi.

Jak zrobić generator krzyżówki, w PHP - tak aby wygenerowało HTMLową tabelkę.
Zdaje się, że ciężka sprawa, muszę kiedyś spróbować.
emp
Cytat(lobopol @ 1.04.2013, 18:46:10 ) *
Ja mam ciekawe zadanie (właściwie banalne, ale 90% programistów php będzie googlować)
Nie wolno:
-tworzyć nowych zmiennych
-wpisywać wartości na sztywno (np. x=1; y=2)
-zmieniać typów tych zmiennych (np. zamieniać je tablice/obiekty)


Zadanie jest głupie i bezsensowne i to jest jedyna dobra odpowiedz na rozmowie kwalifikacyjnej.
Tego typu zadania to w 100% strata czasu tego kto sprawdza czyjąś wiedze i tego kto jest sprawdzany.
Ja bym pytał odrazu o GRASP-a, model dziedziny, wzorce projektowe, refaktoring, dobre praktyki, draje, kisy i wiem czy gościu potrafi tworzyć oprogramowanie, a takie zadania to totalna strata czasu.
Jakby mi ktoś takie zadania na rozmowie kwalifikacyjnej dawał odrazu miał bym pacjenta za lamera i się zmył.
Przecież trzeba być jakimś zakompleksionym fetyszsta żeby takie bezsensowne, totalnie oderwane od rzeczywistości zadania wymyślać w celu sprawdzenia czyiś umiejętnośći programowania.
Na pewno nie chciałbym z takimi zwyrodniałymi, zdegenerowanymi, wynaturzonymi, wykolejonymi dewiantami pracować, co to mają takie fiksacje i uważają ze to jest spoko w jakimkolwiek kontekście.
W robocie się robi, a nie podwala.
lobopol
@emp: wow, ale agresja na podstawie dość prostego zadania. Szczerze to takie zadanie jest dość fajnym testem osoby jakby ktoś zareagował dokładnie jak ty pracy by nie dostał, bo po napotkaniu problemu uznałeś go za głupi i bezsensowny. Prawdą jest, że w samym php czegoś takiego nie użyjesz raczej nigdy, ale jak to pokazali chłopacy ni znając tej metody co podałem też sobie mogli poradzić. Takie zadania są bardzo fajne do weryfikacji:
-odporności na stres
-kreatywnego myślenia
-wiedzy na temat bardziej zaawansowanego programowania

Dzięki takim zadankom mona odróżnić klepacza kodu od programisty
redeemer
@emp: Bzdury piszesz (1 kwietnia?).

Cytat(lobopol @ 1.04.2013, 21:25:56 ) *
dlatego w zadanku jest równa długość smile.gif
To moim zdaniem powinno to być w treści zadania. Zresztą poprawną odpowiedź podał już na początku @red.orel. Ale to już się tzw. "czepiam" smile.gif
lobopol
W zasadzie mogłem dać lepszy opis
Tuminure
Cytat
w zasadzie masz racje, ale takie zadanie pokazuje znajomość mechanik programowania (i technicznie jest szybsze, choć w przypadku php nie ma to większego znaczenia)

Szybsze? Wykorzystanie dodatkowej zmiennej byłoby szybsze - zarówno jeżeli chodzi o wydajność, jak i szybkość pisania kodu. I czytelniejsze dla osób, które nie znają XORa. Moim zdaniem takie zadanie nie pokazuje też żadnej znajomości mechanik programowania.

Jak moim zdaniem najlepiej wykonać zadanie tak, żeby rozwiązanie było zgodne z zasadami, było szybkie i czytelne?
  1. $x = 1;
  2. $y = 2;
  3.  
  4. $_POST = $x;
  5. $x = $y;
  6. $y = $_POST;
  7.  
  8. echo $x;
  9. echo $y;

Nie stworzyłem nowych zmiennych. Nie wpisywałem wartości na sztywno. Nie zmieniłem typów tych ($x i $y) zmiennych. Jest szybciej i czytelniej.
!*!
@up facepalmxd.gif
@lobopol - pokazać komuś ciekawostkę biggrin.gif
Tuminure
Cytat
@up facepalmxd.gif

Mam to samo, gdy patrzę na swoje rozwiązanie wink.gif. Ale mam także to samo widząc te zasady wink.gif.
lobopol
@Tuminure:
1. Napisałem ciekawe zadanko, co prawda nie napisałem wszelakich warunków bo pisałem je z głowy na szybko
2. Nie twoje rozwiązanie nie jest szybsze
3. Jednak pokazuje, bo mało który programista PHP wie co to xor, a jeżeli już to raczej z czasów studenckich

4. Prawidłowo zadanie powinno brzmieć mniej więcej tak:
dane są dwie zmienne:
  1. $x = 12321993;
  2. $y = 322;

Korzystając tylko i wyłącznie z tych 2 zmiennych, nie zmieniając im typu, zamień miejscami ich wartości. Zmiennych nie możesz zapisywać w plikach/memcache/etc.

I powtarzam jest to zadanie ciekawostka, w zasadzie bardziej sprawdzi jak się ktoś zachowa po jego dostaniu bo mało kto będzie wiedział jak je zrobić xor-em.


Tuminure
Cytat
2. Nie twoje rozwiązanie nie jest szybsze

Chcesz powiedzieć, że w PHP 3 przypisania, są wolniejsze od 3 przypisań, na których wykonywany jest jeszcze XOR?
lobopol
Tak, ale różnica powinna być minimalna, a właściwie nawet pomijalna.
Daiquiri
To ja może trochę z innej strony "dołożę" do pieca ;-). Potraktujcie te odpowiedzi z przymrużeniem oka.

Cytat(lobopol @ 1.04.2013, 22:11:44 ) *
(...)Prawdą jest, że w samym php czegoś takiego nie użyjesz raczej nigdy, ale jak to pokazali chłopacy ni znając tej metody co podałem też sobie mogli poradzić.
Zatem może lepiej sprawdzić, czy programista posiada wiedzę, która będzie mu potrzebna w pracy - a nie na kolokwium w technikum / pierwszym roku studiów ;-)?


Cytat(lobopol @ 1.04.2013, 22:11:44 ) *
Takie zadania są bardzo fajne do weryfikacji:
-odporności na stres
-kreatywnego myślenia
-wiedzy na temat bardziej zaawansowanego programowania
Heh, co do sposobu na weryfikację "bardziej zaawansowanego programowania" się nie zgodzę. Chyba, że szukasz programisty C.

Niemniej jednak weryfikacja wiedzy jest zadaniem naprawdę trudnym. Ba, ciężko jest znaleźć złoty środek pomiędzy przesadzonym zestawem zadań na parę godzin do domu, a pierdołą do wykonania na bieżąco, która niczego nie zweryfikuje. Taki już żywot programisty.
lobopol
Nie twierdzę, że rozwiązanie czy nie rozwiązanie tego zadania powinno stanowić o zatrudnieniu danej osoby, ale wyobraźmy sobie taką sytuację przychodzi A na rozmowę przechodzi n różnych pytań technicznych i osobowych. Dostaje tego typu małe zadanko zakładając, że nie zna tego rozwiązania mamy kilka opcji:
-wkurza się jak emp
-stara się znaleźć jakieś obejście (mniej lub bardziej prawidłowe)
-poddaje się przyznając, że nie ma pomysłu (od razu)
-jw. ale po pewnym czasie zastanowienia

Łatwo wtedy odrzucić bądź przyjąć niektórych kandydatów. Rekruter musi znać się na ludziach.
thek
@lobopol: wszystko zależy od firmy. Co innego taka, gdzie leci się hurtem te same rzeczy, w zasadzie od szablonu, a co innego, gdy jednak masz do czynienia z faktyczną pracą indywidualną pod klienta. Ja brałem w różnych rekrutacjach udział. Także w tych, gdzie odpowiedź na pytanie nie jest jednoznaczna. Także takich, gdzie w zasadzie jedyna poprawna odpowiedź nie istnieje, a całość wymaga przemyślenia, wyjaśnienia całego ciągu przyczynowo-skutkowego i jego wpływu na rozwiązanie oraz optymalność. To są pytania otwarte, które potrafią położyć zarówno teoretyków, jak i praktyków. Pierwsi polegną, bo z optymalizacją pod kątem wykonania mają mniej wspólnego, zaś drudzy potkną się na tym, że znają zazwyczaj niewielką ilość podejść do problemu, a wynikającą z faktu stosowania określonych rozwiązań. Po prostu zastosują znany sobie schemat do zbliżonego lub identycznego typu problemu jaki im przedstawiono.
skowron-line
Jedno, jedyne pytanie jakie zadałem kandydatowi na rozmowie do naszej firmy (bo akurat się wtoczyłem do pokoju) to było

Ja: "Jaki jest adres manuala questionmark.gif"
On: "he he he he he"


r4xz
Cytat(skowron-line @ 2.04.2013, 16:45:22 ) *
Jedno, jedyne pytanie jakie zadałem kandydatowi na rozmowie do naszej firmy (bo akurat się wtoczyłem do pokoju) to było

Ja: "Jaki jest adres manuala questionmark.gif"
On: "he he he he he"


to pytanie jest genialne!, dopiero jak zacząłem pisać na klawiaturze to wiedziałem co mam pisać (odruchowo szło), tak bym nie wiedział... biggrin.gif
artuross
Fakt, pytanie genialne, ale z drugiej strony, ja tez nie pamietalem kiedy spojrzalem na to pytanie z prostej przyczyny, wpisuje php w pasek adresu i samo mi autouzupelnia.
ActivePlayer
panowie rozpatrując temat od strony kandydata, warto również poza samymi umiejętnościami programistycznymi pokazać zdolność i chęć do rozwiązywania problemów. Nastawienie na osiągnięcie rezultatu również jest bardzo istotne. Raczej mało firm będzie premiowało wiedzę na temat mikro optymalizacji php'a. Dużo jednak bardzo przekona jeśli pokażecie że w Waszym podejściu jest zaangażowanie i chęć do rozwiązania problemów.

Nie ma nic gorszego niż niechęć programisty do zmieniających się wymagań - a życie to niestety ciągłe zmiany.
Adi32
Witam,

chciałbym delikatnie ożywić temat, ale od drugiej strony.

Będę zajmował się rekrutacją od strony technicznej. Jakie typy zadań/zadania polecilibyście zadać aby dobrze sprawdzić kandydata?
redeemer
Cytat(Adi32 @ 30.04.2014, 18:08:20 ) *
...
Jakie typy zadań/zadania polecilibyście zadać aby dobrze sprawdzić kandydata?
Zadania zależą od tego, co było wpisane w "wymagania" odnośnie pracy. Natomiast parę przykładowych pytań, które możesz zadać to:

* Are you familiar with MVC and other design patterns?
* What about frameworks, template engines and ORMs?
* Are you familiar with web security issues?
* Do you have any personal projects you are currently working on / github account?
* What blogs and resources do you follow to keep your skills "up to date"?
* Are you familiar with database optimization issues?

Oczywiście rozmowa powinna być odpowiednio rozwijana w zależności od tego jak kandydat odpowiada.
Pyton_000
To wszystko zależy od tego, co w firmie jest bardziej przydatne. Jeżeli nikt nie korzysta z XML'a częściej niż 4x w tygodniu to nie ma sensu o to pytać jakoś dogłębnie.
Pomyśl i zobacz jakie umiejętności się Wam najbardziej przydadzą.
skowron-line
Mialem okazje przeprowadzić kilka rozmów z kandydatami i pytanie na które 100% nie odpowiedziało to
Czy się różni printf od sprintf
Na pytanie o JS
Czym się różni $(document).ready o $(window).load odpowiedziała 1 osoba i to też ledwo
Adi32
Przy ostatniej rekrutacji otrzumałem bardzo ciekawe zadanie. Nie rozwiązałem go na czas.

Otrzymuję 4 współrzędne dwóch odcinków na płaszczyźnie kartezjańskiej.
Funkcja ma zwrócić true jeśli odcinki się przecinają, false jeśli nie.

Jedno z trudniejszych zadań. Rozwiązanie zajeło mi aż 2 dni (po około 4h dziennie) bez szukania gotowego rozwiązania w internecie.
Jedyne co wyguglałem to wzór na sinusa kąta między wektorami.
Turson
Do jakiej pracy to była rekrutacja, bo chyba nie na programistę dry.gif
Adi32
Cytat(Turson @ 14.05.2015, 14:41:21 ) *
Do jakiej pracy to była rekrutacja, bo chyba nie na programistę dry.gif

A na programistę i to do bardzo fajnej firmy. Pozostałe zadania były ściśle powiązane z programowaniem.
markuz
Ja otrzymałem kiedyś fajne zadanie dot. JS. Wskaż co zwróci (true/false) w if(wyrażenie):

Kod
new Boolean(false)
1
'a'
new Object()
{}
'false'
0


Dokładnie nie pamiętam, ale wiem od tamtego czasu, że new Boolean(false) zwraca true ;d
solificati
Cytat(Adi32 @ 14.05.2015, 14:34:41 ) *
Przy ostatniej rekrutacji otrzumałem bardzo ciekawe zadanie. Nie rozwiązałem go na czas.

Otrzymuję 4 współrzędne dwóch odcinków na płaszczyźnie kartezjańskiej.
Funkcja ma zwrócić true jeśli odcinki się przecinają, false jeśli nie.

Jedno z trudniejszych zadań. Rozwiązanie zajeło mi aż 2 dni (po około 4h dziennie) bez szukania gotowego rozwiązania w internecie.
Jedyne co wyguglałem to wzór na sinusa kąta między wektorami.

Mając dwa punkty można wyznaczyć równania prostych. Jeśli współczynniki kierunkowe są takie same a wyrazy wolne różne to się nie przetną. Jeśli różne to wyznaczamy punkt przecięcia i prosto sprawdzamy czy należy do obu odcinków (proste mogą się przeciąć, ale nie w miejscu gdzie są odcinki).

Za to zadania jakie dostał markuz to największe zło na rozmowach. Jak się dostaje takie zadanie to lepiej wyjść z rozmowy bo świadczy to co najmniej o tym, że rekrutacja jest oderwana od procesu tworzenia oprogramowania - zwykle HRy układają pytania z internetu. W najgorszym wypadku oznacza, że w taki kiepski sposób się tam programuje.
Comandeer
@markuz bardzo łatwe pytanie wink.gif new Boolean(false) zwraca obiekt, a obiekt jest zawsze "truthy value". Co innego Boolean(false), które wykonuje po prostu rzutowanie i działa "zgodnie z logiką". Pomijam fakt, że nie wiem po co ktoś w JS robi se coś typu new String('a') skoro typy prymitywne i tak mają interfejs obiektowy…
Pyton_000
Tępy HR lub programista który chce pokazać jaki to Ty cienias jesteś, jak to My wymiatamy i znamy wszystkie głębokie zakamarki wszystkich języków (Prawie jak Bogowie Programowania)
pyro
Cytat(solificati @ 14.05.2015, 14:14:13 ) *
Mając dwa punkty można wyznaczyć równania prostych. Jeśli współczynniki kierunkowe są takie same a wyrazy wolne różne to się nie przetną. Jeśli różne to wyznaczamy punkt przecięcia i prosto sprawdzamy czy należy do obu odcinków (proste mogą się przeciąć, ale nie w miejscu gdzie są odcinki).

Za to zadania jakie dostał markuz to największe zło na rozmowach. Jak się dostaje takie zadanie to lepiej wyjść z rozmowy bo świadczy to co najmniej o tym, że rekrutacja jest oderwana od procesu tworzenia oprogramowania - zwykle HRy układają pytania z internetu. W najgorszym wypadku oznacza, że w taki kiepski sposób się tam programuje.


Jeżeli u Ciebie w firmie ktoś nie wie co przy rzutowaniu na bool zwróci true / false, to życzę powodzenia w tworzeniu czegoś bardziej skomplikowanego niż księgę gości. Ja bym zdecydowanie nie chciał współpracować z kimś, kto tego nie wie, bo przy bugach z tym związanych nie wiedziałby nawet jak je znaleźć wink.gif . Jest to bardzo dobre pytanie na odfiltrowanie paczki osób.

Natomiast zadanie z wektorami jest o tyle ciekawe, że słysząc o punkcie przecięcia od razu kojarzy się to z punktem przecięcia prostych, a tutaj mamy wektory i trzeba się chwilę zastanowić, żeby dojść do wniosku, że wystarczy sprawdzić, czy punkt przecięcia należy do obu wektorów oraz sprawdzić oddzielny przypadek dla tego samego współczynnika przy x'ie (równoległość). Natomiast jeżeli nie aplikujesz na programistę silników gier czy czegoś podobnego, to zadanie nie ma najmniejszego sensu na rekrutacji, bo nie sprawdza to niczego, czego potrzebujesz w trakcie tworzenia oprogramowania (mam tutaj na myśli WebDev, bo jesteśmy na forum PHP). Ktokolwiek by chciał teraz napisać, że "ale przecież to zadanie sprawdza czy ktoś umie myśleć", niech się nad sobą zlituje wink.gif

Innymi słowy jest dokładnie na odwrót.
Spawnm
Bez sensu to dostał zadanie Adi32, wykładowca z okolicznej uczelni je układał? Raz mi się zdarzyło dostać tego typu zadanie to uznałem że szkoda mojego czasu.
Skowron-line i markuz bawili się pytaniami które jestem pewien że nie były wymagane aby dostać pracę, jedynie sprawdzały czy programista zna takie ciekawostki.
Redeemer wymienił najlepsze pytania.
pyro
@Spawnm, +1
Comandeer
@Spawnm czy ja wiem czy $(document).ready vs zdarzenie load to ciekawostka? W zależności od potrzeb te dwie rzeczy robią całkowicie inne rzeczy. Pierwsze odpala się po załadowaniu DOM, a drugie całej strony. Naocznie różnicę można zobaczyć tutaj: http://neo.infeo.pl/archiwum/dom_onload.html
solificati
Cytat(pyro @ 14.05.2015, 15:58:16 ) *
Ja bym zdecydowanie nie chciał współpracować z kimś, kto tego nie wie, bo przy bugach z tym związanych nie wiedziałby nawet jak je znaleźć wink.gif

I to jest Twój błąd. Jeśli piszesz kod, w którym mogą się takie konstrukcje pojawić to nie potrzebujesz specjalisty od potencjalnych bugów. Potrzebujesz specjalisty, który wprowadzi jakiekolwiek standardy w Twojej firmie. Kod w którym pojawiają się konstrukcje w stylu if(string) jest niejasny, wymaga dodatkowych komentarzy, utrudnia pisanie testów, utrudnia statyczną analizę kodu chociażby na potrzeby pokrycia testowego i na dodatek - nie ma żadnych zalet.

Na rekrutacji wypytywanie o szczegóły implementacji języka to jak rekrutowanie dziennikarzy według wyniku w scrabble.
pyro
Cytat(solificati @ 14.05.2015, 15:07:49 ) *
I to jest Twój błąd. Jeśli piszesz kod, w którym mogą się takie konstrukcje pojawić to nie potrzebujesz specjalisty od potencjalnych bugów. Potrzebujesz specjalisty, który wprowadzi jakiekolwiek standardy w Twojej firmie. Kod w którym pojawiają się konstrukcje w stylu if(string) jest niejasny, wymaga dodatkowych komentarzy, utrudnia pisanie testów, utrudnia statyczną analizę kodu chociażby na potrzeby pokrycia testowego i na dodatek - nie ma żadnych zalet.


Hola hola, nigdy nie mówiłem, że użycie takich składni w praktyce ma sens, tylko że jak ktoś chce aplikować na programistę / front-endowca, to powinien takie rzeczy zdecydowanie wiedzieć, więc trochę se dopowiedziałeś wink.gif

Cytat(solificati @ 14.05.2015, 15:07:49 ) *
Na rekrutacji wypytywanie o szczegóły implementacji języka to jak rekrutowanie dziennikarzy według wyniku w scrabble.


Błędna analogia. Prędzej by tu pasowało: wypytywanie o implementację języka X (bo szczegóły to to nie są) na rekrutacji na programistę języka X, to jak pytanie dziennikarza o interpunkcję i gramatykę (no bo przecież to tylko szczegóły).

Analogia dziennikarz-scrabble bardziej pasuje do zadania z wektorami. Dziennikarz - programista, zadanie z wektorami - scrabble.

Idąc Twoim tokiem myślenia przy aplikowaniu na stanowisko programisty aplikacji bazodanowych i otrzymaniu pytania "Co to są indeksy w bazach danych i do czego służą" powinno się odpowiedzieć "a co to za różnica, to tylko szczegóły, aplikacja będzie działać i bez tego". Jest to idealny przykład jak zrobić, żeby tworzone oprogramowanie było awaryjne i niskiej jakości.
solificati
Cytat(pyro @ 14.05.2015, 16:22:01 ) *
Hola hola, nigdy nie mówiłem, że użycie takich składni w praktyce ma sens, tylko że jak ktoś chce aplikować na programistę / front-endowca, to powinien takie rzeczy zdecydowanie wiedzieć, więc trochę se dopowiedziałeś wink.gif

Skoro nie ma sensu to po co to wiedzieć? Chcesz sprawdzić kandydata czy wie coś, czego nigdy nie użyje?

Cytat
Idąc Twoim tokiem myślenia przy aplikowaniu na stanowisko programisty aplikacji bazodanowych i otrzymaniu pytania "Co to są indeksy w bazach danych i do czego służą" powinno się odpowiedzieć "a co to za różnica, to tylko szczegóły, aplikacja będzie działać i bez tego". Jest to idealny przykład jak zrobić, żeby tworzone oprogramowanie było awaryjne i niskiej jakości.

Nie chodzi o to, że truthy values to detal. Chodzi o to, że to część, której należy unikać. Pytania o szczegóły są ok, pytania o szczegóły, co do których jest ogólny konsensus, że są idiotyczne - nie są ok. Moim tokiem myślenia dla bazodanowca bezsensownym pytaniem byłoby: "Jakie są reguły zwracania nazw pól bez użycia AS w SELECT?". Bezsensowne, bo trudne a i tak należy zawsze używać AS.
pyro
Cytat(solificati @ 14.05.2015, 16:46:34 ) *
Skoro nie ma sensu to po co to wiedzieć? Chcesz sprawdzić kandydata czy wie coś, czego nigdy nie użyje?


Dla kogo coś jest szczegółami to już chyba rzecz subiektywna. Według mnie na jaki bool rzutowane są dane typy jest sprawą dość oczywistą i nie jest to pytanie typu: "W jakiej kolejności i jakie dane zwraca tablica z getimagesize()" (takie pytanie byłoby całkowicie bez sensu, bo dość jasnym jest, że każdy pracując zawodowo używa IDE, a IDE podpowiada takie rzeczy). Poza tym w tym zawodzie często bywa tak, że trzeba korzystać z blbliotek 3rd party (kiepskiej jakości, jest kruchy deadline, a skrypt pomimo swojej jakości spełnia swoją rolę) albo poddawać refaktoryzacji kiepskiej jakości kod, gdzie takie rzeczy się zdarzają i trzeba je rozumieć. Np.

  1. // Nigdy nie róbcie tego w domu
  2. class User {
  3.  
  4. private $username;
  5.  
  6. public function __construct($username) {
  7. $this->username = $username;
  8. }
  9.  
  10. public function getElegantUsername() {
  11. return "<b><i>".$this->username."</i></b>";
  12. }
  13.  
  14. }
  15.  
  16. $user = new User("xyz");
  17. echo $user->getElegantUsername();


Taki kod od strony architektury jest całkowicie bez sensu i błędny, natomiast w przeglądanym kodzie takie kruczki nie raz się zdarzają i teraz jako programista nigdy byś czegoś takiego nie napisał, ale powinieneś wiedzieć, że takie coś wyświetli:

Kod
<b><i>xyz</i></b>


Cytat(solificati @ 14.05.2015, 16:46:34 ) *
Nie chodzi o to, że truthy values to detal. Chodzi o to, że to część, której należy unikać. Pytania o szczegóły są ok, pytania o szczegóły, co do których jest ogólny konsensus, że są idiotyczne - nie są ok. Moim tokiem myślenia dla bazodanowca bezsensownym pytaniem byłoby: "Jakie są reguły zwracania nazw pól bez użycia AS w SELECT?". Bezsensowne, bo trudne a i tak należy zawsze używać AS.


j/w, "konsensus" w tym przypadku to raczej subiektywna opinia i umyślne popadnięcie w skrajność z nieskrajności. Oczywistość w idiotyczności pytania zawiera się np. w "Jaka jest 14 linijka kodu index.php w domyślnej instalacji Sf2" przy aplikacji nawet na Sf2 guru, a to co innego...
solificati
Upierasz się cały czas, że to coś kto powinien coś wiedzieć, jednocześnie nie pokazując korzyści z zastosowania takiej wiedzy. A w szczególności czemu takie coś sprawdzać na rozmowie kwalifikacyjnej, skoro wydaje się tak mało ważne.
pyro
No to nie wiem, teraz popadamy w hipokryzję? Kiedy ostatnio wykorzystałeś w praktyce (w WebDev) wiedzę na temat punktu przecięcia się dwóch wektorów?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.