Ni zgruszki ni z pietruszki padło na mnie, że musze przygotowac jakiś test dla paru kandydatow....

Pytania ogólne: Jakie jest Twoje preferowane środowisko programistyczne? (system operacyjny, edytor, przeglądarki, narzędzia itd.) Opisz kolejne zadania podczas tworzenia strony internetowej? Opisz różnicę między stopniowym ulepszaniem (progressive enhancement) i wdzięczną degradacją (graceful degradation)? Dodatkowe punkty za opisanie wykrywania obsługi cech (feature detection) Wyjaśnij, co kryje się za terminem "semantyczny HTML". Jak optymalizowałbyś zasoby strony internetowej? Dlaczego serwowanie zasobów strony przez wiele domen jest lepsze? Ile zasobów pobiera przeglądarka z danej domeny w jednej chwili? Podaj 3 sposoby na zmniejszenie czasu ładowania strony. (postrzeganego lub rzeczywistego czasu ładowania) Jakich narzędzi używasz do sprawdzenia wydajności swojego kodu? Gdybyś mógł opanować jedną technologię w tym roku, jaka byłaby to technologia? Czym jest FOUC? Jak unikasz FOUC? (Flash of unstyled content) Troche technicznych  Pytania HTML: Jaka jest różnica między trybem standardów a trybem dziwactw (quirks mode)? Jak serwujesz stronę z treścią w wielu językach? Co jest ważne przy projektowaniu i tworzeniu stron wielojęzycznych? Jaka jest przydatność atrybutów data- Opisz różnice między cookies, sessionStorage i localStorage. Pytania JS: Wyjaśnij delegację zdarzeń. Wyjaśnij jak działa this w JavaScripcie. Wyjaśnij jak działa dziedziczenie prototypowe. Jak radzisz sobie z testowaniem swojego kodu JavaScript? AMD kontra CommonJS? Czym jest tablica mieszająca (hashtable)? Co oznaczają komunikaty undefined i undeclared dla zmiennych? Czym są domknięcia, jak i po co są używane? Ulubiony wzorzec używany do ich tworzenia? argyle (Dotyczy tylko IIFE) Jakie znasz typowe użycie funkcji anonimowych? Wyjaśnij pojęcie "Moduł JavaScript" i kiedy jest warte stosowania. Dodatkowe punkty za wzmiankę na temat czystości przestrzeni nazw. Co jeśli Twój kod nie używa przestrzeni nazw? Jak organizujesz swój kod? (moduły, klasyczne dziedziczenie?) Jaka jest różnicza między obiektami typu host i native? Różnica między: function Person(){} var person = Person() var person = new Person() Jaka jest różnica między .call i .apply? Wyjaśnij Function.prototype.bind? Kiedy optymalizujesz swój kod? Wyjaśnij działanie dziedziczenia w JavaScript? Kiedy użyłbyś document.write()? Wiele generowanych reklam używa document.write() choć nie jest to mile widziane Jakie są różnice między wykrywaniem obsługi funkcji, wnioskowaniem obsługi funkcji i używaniem ciągu UA? Omów AJAX jak najbardziej szczegółowo. Wyjaśnij działanie JSONP (i dlaczego nie jest właściwie AJAX). Czy kiedykolwiek używałeś szablonów w JavaScript? Jeśli tak, jakie to były biblioteki? (Mustache.js, Handlebars itd.) Wyjaśnij pojęcie "hoisting". Opisz bąbelkowanie zdarzeń. Jak jest różnica między "atrybutem" i "właściwością"? Czemu rozszerzanie obiektów wbudowanych w JavaScript jest złym pomysłem? Czemu rozszerzanie to dobry pomysł? Jak jest różnicą między zdarzeniami load i ready dla strony internetowej? Jaka jest różnica między == i ===? Wyjaśnij ewentualny sposób pobrania parametrów z adresu URL w oknie przeglądarki. Wyjaśnij politykę same-origin w odniesieniu do JavaScript. Opisz wzorce dziedziczenia w JavaScript. Opisz strategię zapamiętywania (unikanie powtarzalnych obliczeń) w JavaScript. Dlaczego mówimy wyrażenie trójkowe, co dokładnie oznacza słowo "trójkowy"? Czym jest arity funkcji? Co oznacza "use strict";? Jakie są zalety i wady takiego rozwiązania? Pytania CSS: Opisz, czym jest plik "reset" dla CSS i dlaczego jest użyteczny. Opisz jak działa właściwość float. Jakie znasz techniki kasowania (clearing) i kiedy wskazane jest ich stosowanie? Wyjaśnij technikę "CSS sprites" oraz sposób jej wdrożenia na stronie. Jakie są Twoje ulubione techniki zastępowania obrazów i kiedy je stosujesz? Haczyki właściwości CSS, warunkowe dołączanie plików .css lub... coś innego? Jak serwujesz strony dla przeglądarek z ograniczonym wsparciem funkcji? Jakie techniki stosujesz? Jakie istnieją sposoby wizualnego ukrycia treści (uczynienia ich dostępnymi tylko dla czytników ekranu)? Czy używałeś 'media queries' lub tworzyłeś konkretne układy i arkusze dla urządzeń mobilnych? Czy miałeś styczność ze stylizacją SVG? Jak optymalizujesz swoje strony do druku? Jakie stosujesz "sztuczki" przy pisaniu efektywnych CSS? Czy używasz narzędzi do przetwarzania CSS? (SASS, Compass, Stylus, LESS) Jeśli tak, opisz cechy, które lubisz i nie lubisz w używanych narzędziach. Jak tworzysz i wdrażasz projekt używający niestandardowych czcionek? Czcionki sieciowe (serwisy czcionek jak: Google Webfonts, Typekit itd.) Wyjaśnij jak przeglądarka określa elementy pasujące do selektora CSS?