innerHTML, czyli najbardziej banalna furtka do XSS

Bardzo często popełnianym błędem, na który zwracam uwagę praktycznie w każdym kolejnym Weekly JavaScript Challenge, jest niewłaściwe wykorzystywanie innerHTML. Ten wpis chciałem poświęcić tylko i wyłącznie tej właściwości oraz zagrożeniom, które płyną z jej nieprawidłowego wykorzystania. Będę analizował konkretny przykład kodu z nadesłanego rozwiązania i pokażę jak przeprowadzić prosty atak na ten kod. Zapraszam! XSS Atak, który tutaj pokażę nazywa się XSS. …

Kurs TypeScript – część 3

Ten wpis jest 4 częścią z 4 w kursie TypeScript

Kontynuuję serię wpisów na temat TypeScript. Pisząc poprzedni post złapałem się na tym, że dobijałem już do blisko 1800 słów. Uznałem, że to zdecydowanie za dużo jak na jeden wpis i stąd tak szybko kolejna część 😉 W tym odcinku mówię o zaawansowanych typach, aliasach i literałach. Dodatkowo poruszam również temat inferencji typów. Zapraszam do czytania 🙂 Zakładam, że czytelnicy są zaznajomieni z JavaScriptem, a w szczególności …

Kurs TypeScript – część 2

Ten wpis jest 3 częścią z 4 w kursie TypeScript

Poprzedni wpis na temat TypeScript cieszył się niemałym zainteresowaniem i wiele osób pisało do mnie z pytaniem, kiedy pojawi się kontynuacja. I oto ona! W tym artykule nauczymy się korzystać z klas, klas abstrakcyjnych i dziedziczenia. Dodatkowo będziemy implementować interfejsy i zobaczymy czym różnią się od klas abstrakcyjnych. Zapraszam do czytania! Zakładam, że czytelnicy są zaznajomieni z JavaScriptem, a w szczególności z konceptami dodanymi w ECMAScript 2015 …

3. Weekly JavaScript Challenge

Zakończył się trzeci Weekly JavaScript Challenge. Grupa zyskuje co raz większą popularność, zapisały się do niej już 494 osoby. Dziękuję wszystkim, którzy rozwiązują zadania i komentują pod rozwiązaniami innych osób! Weekly JavaScript Challenge to grupa na Facebooku. Celem jej istnienia jest wspólna nauka JavaScriptu poprzez rozwiązywanie prostych zadań i wzajemną ocenę kodu. Pamiętajcie, że poprzednie zadania można rozwiązywać …

2. Weekly JavaScript Challenge

Dobiega końca drugi Weekly JavaScript Challenge, którego jestem organizotorem. Jeśli jeszcze nie wiesz o co chodzi, to już wyjaśniam! Jest to grupa na Facebooku, na której mniej-więcej raz w tygodniu pojawia się nowe zadanie do wykonania w JavaScripcie. Celem istnienia grupy jest wzajemna pomoc i nauka JS-a. A wszystko to pro bono, dla powszechnego dobra i całkowicie za darmo. Zachęcam wszystkich początkujących programistów do spróbowania swoich …

1. Weekly JavaScript Challenge

Jakiś czas temu zainspirowałem się dość mocno Facebookową grupą Weekly WebDev Challenge i postanowiłem utworzyć grupę siostrzaną: Weekly JavaScript Challenge. Jest to miejsce, w którym średnio raz w tygodniu będę wrzucał nowe zadanie do wykonania. Celem jest wspólna nauka JavaScriptu, code review i wzajemna pomoc. Kilka liczb… Pierwszy Weekly JavaScript Challenge dobiegł końca. Na początek muszę powiedzieć, że jestem …

Dependency Injection w Angular 2

Ten wpis jest 5 częścią z 5 w kursie Angular 2

Angular 2 aktywnie korzysta ze wzorca projektowego Dependency Injection. Ten wpis poświęciłem wyłącznie implementacji DI w tym frameworku. Jest ona bardzo rozbudowana i niezwykle ciekawa, a jej dokładne poznanie pozwoli na lepsze zrozumienie wstrzykiwania zależności w Angularze oraz sprawi, że będziemy tworzyć aplikacje bardziej świadomie i łatwiej. Samemu tematowi Dependency Injection przeznaczyłem osobny wpis. Piszę tam o wzorcu projektowym, niezależnie …

Nowy font na GitHubie – font systemowy

Zauważyliście, że GitHub zmienił fonta? Zainteresowało mnie to, gdy zauważyłem, że teraz strona wygląda inaczej na OS X i inaczej na Windowsie. Po sprawdzeniu źródła okazało się, że GitHub korzysta teraz z domyślnego fonta systemowego, który zależy od użytkownika. Jak to jest zrobione? Font systemowy w CSS Jeśli zajrzymy do CSS–ów zobaczymy takie, ciekawe ustawienie fonta: font-family: -apple-system, BlinkMacSystemFont, „Segoe UI”, Roboto, Helvetica, Arial, …

TypeScript – część 1

Ten wpis jest 2 częścią z 4 w kursie TypeScript

„TypeScript – typowany nadzbiór JavaScriptu, kompilowany do czystego JavaScriptu” – głosi napis na stronie głównej typescriptlang.org. Używam go praktycznie codziennie, w różnych projektach, z różnymi technologiami. Od pewnego czasu, w dużej mierze za sprawą Angulara 2, ale nie tylko, TS zaczął zyskiwać sporą popularność i uznanie w społeczności webdeveloperów. W tym artykule zakładam, że czytelnicy są zaznajomieni JavaScriptem, a w szczególności z konceptami dodanymi w ECMAScript 2015 …