Webrebel 3 - OOP a Laravel

napísal , 30 Aug 2015

Nový kurz WordPress pre programátora

V minulom článku som detailne popísal Webrebel 2 kurz. Sú tam všetky informácie, ktoré potrebujete. Ak nie sú tam, možno budú v komentároch.

Napríklad informácia, že kurz sa rozdeľuje na 2 časti. Prvá sa volá Webrebel PHP a MySQL a je už ukončená. Má to 20 hodín, 116 videí, 13 domácich úloh, desiatky materiálov, kopu zdrojákov a funkcií na posťahovanie... v článku je zoznam všetkých videí.

Druhá časť sa volá Webrebel OOP a Laravel a na tej pracujem teraz. Bude podobného rozsahu, kto si kurz kúpi teraz, dostane obe časti (PHP + MySQL aj OOP + Laravel). Plán je, aby sa neskôr dali kúpiť aj samostatne, keď sa všetko dokončí.

Ako spraviť Laravel blog za 2 minúty (alebo 60):

Vo videu používam tento helper file.

Kurz sa dá zakúpiť tu:
:: Webrebel 3: OOP a Laravel

Kurzy sa dajú kúpiť samostatne. PHP/MySQL je jeden kurz, OOP/Laravel je druhý kurz.

Do OOP a Laravel časti postupne pribúdajú videá. Chcel som mať miesto, kde s vami budem zdieľať progres. Kde bude rastúci zoznam kapitol. Aby ste vedeli, do čoho idete. Tento článok je to miesto.

Edit (19. október 2015): týmto dňom považujem Webrebel OOP/Laravel kurz za dokončený. Má 120 videí. Čo je, podobne ako v PHP/MySQL kurze, okolo 20 hodín videa. Žiaden bullshit v nich, sú nekompromisne prestrihané, bez toho by to bolo ešte o kus viac, ale toto je čistých 20 hodín učenia. A blbých vtipov. Je toho veľa. Idem oddychovať.

Edit (16. máj 2019): Kurz webrebel 3: oop a laravel vznikol pár rokov dozadu. Medzitým vyšlo niekoľko nových verzií laravelu. Zmenili sa názvy súborov, adresárov, funkcií. Nie všetok kód, ktorý som v kurze vytvoril, dnes funguje.

Funguje, ak ho prepíšeš na novšie zápisy. Ale to otravné, to znamená, že každé video musíš sledovať s otvorenou dokumentáciou a hľadať zmeny. Práve som do kurzu pridal 37 nových videí.

Kde nakódim od nuly blog, komplet na najnovšej verzii laravelu (čo momentálne je verzia 5.8) Je to blog, má registráciu, prihlasovanie, články, komentáre. Nový laravel, nový kód, kurz je vďaka tomu znova aktuálny.

Nechám v kurze aj tie staršie videá - v nich idem pri každej téme do väčšej hĺbky. Keďže všetka teória, obkecy, vysvetľovačky, rady, tipy, triky, toto všetko stále platí, len niektoré zápisy sa rokmi zmenili... čiže aj tie staré videá stále majú obrovský význam.

V kurze je teraz 160 šťavnatých videí.

Týchto 37 videí, ktoré som práve pridal, vzniklo pre môj nový Vue.js kurz - čiže v týchto videách robím aj frontend a používam Vue.js, ale len v menšine.

:: nový kurz Vue.js + SPA (single page aplikácie)

Nepotrebuješ Vue.js poznať a nepotrebuješ Vue.js kurz sledovať, aby si pochopil tieto videá - absolútna väčšina každej minúty každého videa je čistý, aktuálny, moderný laravel kód. Čiže choď do toho:) Laravel kurz je znova aktuálny, pozeraj ako vyrobím blog v najnovšej verzii frameworku.

A toto je zoznam videí:

  1. Úvod do kurzu - Prečo, čo, kedy, načo frameworky a koľkej?
  2. v01 Laravel 01 inštalácia, routes, artisan, VS Code pluginy
  3. v02 Laravel 02 controllers, views
  4. v03 Laravel 03 login, register, auth, databáza, migrations
  5. v04 Client-side vs. server-side rendering

rozbaliť zvyšných epizód

  1. v05 Ako rozbeháš stiahnutý kód (+ Laravelu bude o kúsok viac)
  2. v06 Laravel/Composer update a čo bude ďalej (v kurze, nie živote)
  3. v07 Master layout a Config súbory
  4. v08 69 nice (Vue a frontend v Laraveli)
  5. v09 Databáza, migrácie
  6. v10 Modely, kolekcie, z databázy na stránku, juj!
  7. v11 Vzťahy medzi modelmi, auto dopĺňanie 'use'
  8. v12 FAKER (laravel sám naplní databázu, DB SEED)
  9. v13 Usporiadanie dát z databázy, @include šablóny
  10. v14 Escaping, JS frameworky v Laraveli, pluralizácia textu
  11. v15 CRUD, REST, Resource controllers
  12. v16 Podstránka pre kontkrétny článok cez PostController
  13. v17 Fajné formátovanie dátumu cez Carbon... a komentáre!
  14. v18 Cibri™ si vkus
  15. v19 @guest @auth / login / logout / register
  16. v20 Form pre koment, hlavná navigácia, named routes a route()
  17. v21 Form problém 01 CSRF (Cross Site Request Forgery)
  18. v22 Form problém 02 Mass Assignment Exception, odoslanie formu
  19. v23 Uloženie do DB cez vzťah, usporiadanie vzťahov
  20. v24 Validácia formuláru, výpis chýb, lepšie zabezpečenie formu
  21. v25 SLUG v adrese pre lepšie SEO, unique index v DB cez migrate
  22. v26 Debug cez Laravel TELESCOPE, efektívne SQL cez EAGER LOADING vzťahov
  23. v27 Vue FlashMessage komponent
  24. v28 Session, Laravel flash message
  25. v29 Prechod na ES6 import syntax, ESLint a Prettier sú späť
  26. v30 Vue inline-templates
  27. v31 Edit a delete linky, doubleclick, blur, contenteditable
  28. v32 Práva usera, Authorization Policy, @can, iba autor môže zmazať koment
  29. v33 Editácia a mazanie cez AXIOS ajax (aj bez neho)
  30. v34 Polish time! (Poľský čas!) Dokončím úpravy, vyladím mazanie
  31. v35 Vyladím edit komentu, autovyznačím text a blur vráti pôvodný
  32. v36 Flash notifikácia po (ťažko úspešnom) edite a delete
  33. Nastavíme Mac pre web development - Skryté súbory, plné cesty k súborom, klávesnica
  34. Nastavíme Mac - Rýchle animácie, lepšia konzola, command line devtools
  35. Nastavíme Mac - PHP, Environment Variables, PATH
  36. Nastavíme Mac - Hombrew package manager
  37. Nastavíme Mac - Node, npm, bower, composer, xdebug, brew tap
  38. Nastavíme Mac - Princíp package managerov a PHP Composer
  39. Nastavíme Mac - Inštalujeme Laravel, Xdebug, Dash
  40. Nastavíme Windows pre web development - Nastavenia systému, Windows admin práva
  41. Nastavíme Windows - Klávesnice, Cmder git cygwin konzola
  42. Nastavíme Windows - MAMP, systémové premenné
  43. Nastavíme Windows - Nastavenia php.ini, package / dependency manager
  44. Nastavíme Windows - Environment variables, PATH
  45. Nastavíme Windows - Composer, node.js, npm, bower
  46. Nastavíme Windows - PHP xdebug
  47. [BONUS] - Chyba "CLI prestal fungovať" vo Windows konzole
  48. Inštalácia Laravelu, Prehľad súborov a adresárov frameworku
  49. Prehľad súborov a adresárov frameworku, PART 2
  50. Routes, Views, Laravel IDE Helper na dopĺňanie kódu
  51. Laravel Views, HTML šablóny, Master layout
  52. Premenné v šablónach, 3 spôsoby posielania dát do views
  53. Controller, REST, Model-View-Controller (MVC) princíp
  54. Error messages, 404 stránka, Maintenance mód
  55. Prehodenie HTML stránky do Laravelu, Rozšírenie sekcíi, Unescaped výpisy
  56. Ako získať všetky routes + Berte pravidlá s rezervou
  57. Namespaces, Ako zdieľať dáta / poslať dáta do všetkých views
  58. URL parametre, Ako odchytiť všetky adresy, jedna route pre všetko
  59. Pridávanie Laraval packagov, HTML/Form Builder, CSRF
  60. Form Builder PART 2, Request method injection
  61. Validácia PART 1, zobrazenie validačných errorov, predvypĺňanie inputov
  62. Validácia PART 2, uloženie do databázy, flash message
  63. Blade 2 (2002) - forelse, unless, include, partials
  64. PHPStorm - Rozdiel medzi text editorom a IDE
  65. PHPStorm - Téma, Color Scheme, Fonts
  66. PHPStorm - Command Palette, filtrovatelné zoznamy, nastavenia editora
  67. PHPStorm - Minimalizmus, Search Everywhere, klávesové skratky, viac kurzorov
  68. PHPStorm - Klávesové skratky a ťažké PHPStorm frajeriny
  69. PHPStorm - Skratky, obaľovanie kódu Emmetom, automatický Code Formatting
  70. PHPStorm - Generovanie, refactoring, automatické vytváranie kódu
  71. PHPStorm - File Templates, Dash, Xdebug, rady pre zrýchlenie PHPStormu
  72. Ako spraviť Laravel blog za 2 minúty (alebo 60) (1/3)
  73. Ako spraviť Laravel blog za 2 minúty (alebo 60) (2/3)
  74. Ako spraviť Laravel blog za 2 minúty (alebo 60) (3/3)
  75. Laravel Blog - čisté PHPčko vs. framework
  76. PHP webserver, ako s Laravel aplikáciou na skutočnom hostingu
  77. Laravel Blog - rozbiehame novú aplikáciu
  78. Implicit Routes, Implicit Controllers
  79. Named Routes, RESTful Resource Controllers
  80. Laravel IDE Helper, naučíme editor dopĺňať kód z Forms & HTML packagu
  81. Laravel Blog - Login a Register formulár na 2 spôsoby
  82. Pripojenie na DB, kontrolné výpisy, Artisan Tinker
  83. Database Migrations 01
  84. Migrations 02 - artisan make migration, rollback, reset
  85. Migrations 03 - Laravel Generators Package
  86. Migrations 04 - Kedy, načo a prečo
  87. AUTH - login a registrácia v Laravel 5.1
  88. Úprava vstavaného AUTH systému, PHP Traits, Flash messages
  89. Middleware - ako na podstránku pustiť iba ak je user prihlásený
  90. Laravel sa mení, v nových verziách môžu veci fungovať inak
  91. Models, Eloquent ORM
  92. Mass Assignment Exception, generovanie modelov, Route Groups
  93. Accessors, Mutators, JSON Formatter
  94. Ako pridať vlastný helper file + funkcie špecifiké pre model
  95. 404 Not Found page, ak nenájdeme podstránku
  96. Rozšírenie model objektu o nové atribúty (cez Eloquent Accessors)
  97. Eloquent vzťahy medzi modelmi (hot)
  98. Tagy, usporiadanie a sychronizácia many-to-many (M:N) vzťahov
  99. Vytváranie formulárov, Konzolové aliasy, PHPStorm Live Templates 1
  100. PHPStorm Live Templates 2
  101. Manuálna validácia, ako vytvoriť model napojený na iný model
  102. Automatická validácia cez Request
  103. DELETE, PUT, PATCH http requesty, Edit form, Fom Model Binding
  104. Update validácia, Refactoring, čistiace práce
  105. View Composers, automatické posielanie dát do konkrétnych views
  106. Prechod z ID na Slugy
  107. Čistiace práce pokračujú, Pagination, rozdelenie postov cez viac stránok
  108. Mazanie, Autorizácia, práva používateľov, aby každý mohol mazať len vlastné
  109. Autorizácia cez ACL (Access Control Lists)
  110. OOP 01 - objektovo orientované programovanie - trieda vs objekt
  111. OOP 02 - konštruktor, $this
  112. OOP 03 - dedenie, extends
  113. OOP 04 - procedurálne vs objektovo orientované programovanie
  114. OOP 05 - getters, setters
  115. OOP 06 - public, private, protected
  116. OOP 07 - namespaces, psr-4 autoloading
  117. OOP 08 - static
  118. OOP 09 - abstract, interface, trait
  119. OOP 10 - blog na objektovo orientovaný spôsob
  120. OOP nie je všetko
  121. OAuth 01 - Prihlásenie sa cez Github účet
  122. OAuth 02 - Prihlásenie cez Github, Access Token teória
  123. OAuth 03 - Prihlásenie sa cez Facebook účet
  124. Preklad 01 - Multi-jazyčná stránka
  125. Preklad 02 - Multi-jazyčná stránka
  126. Preklad 03 - Množné čísla, dátumy
  127. Preklad 04 - Prepínanie medzi jazykmi, každý user si môže zvoliť vlastný jazyk
  128. Úvod do API - CURL, JSON Formatter, Postman
  129. HTTP Requesty z PHP aplikácie cez Guzzle, získame OAuth chránené údaje z Githubu
  130. API - Lumen, Route Prefixes, Namespaces
  131. RESTful API 01
  132. RESTful API 02 - Transform, POST request, Basic Auth
  133. Cache
  134. Eventy + Dôležitá optimalizácia Laravel stránky pred vypustením do sveta
  135. Práca so súbormi, Export do Excelu
  136. Import z Excelu, Log do súboru
  137. Cron
  138. Roles, Permissions, či má používateľ Admin práva
  139. Upload súborov 01 - validácia poľa hodnôt, vlastné validačné správy
  140. Upload súborov 02 - uloženie, presunutie a premenovanie súboru
  141. Upload súborov 03 - evidovanie súborov v databáze
  142. Upload súborov 04 - vylistovanie a mazanie súborov
  143. User Edit Form - zmena mena, hesla, pridanie avatar ikonky
  144. Upload Refactor 01 - Ako volať metódu controllera z iného controllera
  145. Upload Refactor 02 - Morphovanie modelov, upload súborov k rôznym modelom
  146. Upload a spracovanie obrázkov 01
  147. Upload a spracovanie obrázkov 02 - avatar ikonka
  148. Diskusia - Pridávanie komentárov
  149. Diskusia - Pridávanie komentárov cez AJAX
  150. Záver kurzu
  151. OCD

Viac informácii o celom kurze v článku Webrebel 2 - PHP, MySQL, Laravel 5. A, btw, stále funguje a existuje prvý HTML / CSS / jQuery Webrebel, takže učiť sa môžete koľko len chcete:)

Webrebel 2 - PHP, MySQL, Laravel 5

napísal , 30 Apr 2015

Nový kurz WordPress pre programátora

V kurze Webrebel som spomenul, že vývoj (pompézne slovo pre "robenie") webových aplikácií (pompézne slovo pre "stránky") sa delí na front-end a back-end. Webrebel je o front-ende. Čiže vieme spraviť to, čo používateľ vidí, na čo kliká, čo používa. Ale ak nám ten poskytne nejaké údaje, nevieme ich spracovať.

Na to treba back-end. To, čo beží na serveri. Čo presne to znamená? Ja vám poviem, čo presne to znamená. A čo sa s tým robí. A ako sa to robí. A prečo sa to robí.

V novom kurze Webrebel PHP - Mysql - Laravel ;)

Kto pozná HTML a CSS, vie spraviť tzv. statické stránky. HTML kód sa vezme taký, aký je, a vyprdne sa na obrazovku. Kto pozná back-endové jazyky (PHP, Ruby, Python, ...) vie robiť tzv. dynamické stránky. Kde človek príde na adresu stránky a server zoberie alebo vygeneruje kúsky HTMLka a poskladá ich do výslednej stránky.

Jednak nám to umožní nejakú tú automatizáciu (napr. môžem vyrobiť jeden header a footer a nechať ho vložiť do každej podstránky) a jednak počas skladania stránky do nej môžem nahádzať veci vytiahnuté z databázy - články, produkty, whatever. A môžem mať používateľov. A registrácie a prihlasovanie a napojenia na facebooky a kade tade a odosielanie emailov a spracúvanie údajov z formulára, ...

Všetko toto a kopu ďalšieho sa naučíte v tomto novom kurze. Budú sa "dynamizovať" stránky a vytvárať rôzne mini aplikácie a možno aj nejaké tie maxi aplikácie a todo listy a blogy a fóra a skutočnejšie firemné stránky a API rozhrania a všetko možné. Úplne že naozajstné stránky, také že naozajstné, so všetkým!

Budeme sa učiť PHP a MySQL a Laravel.
A ľudia sa budú pýtať, že prečo tieto veci a prečo nie iné veci.
Pre nich som spravil videá.

:: Webrebel PHP: Čo sú backend jazyky a prečo PHP?
:: Webrebel PHP: Čo sú frameworky a prečo Laravel?

Teraz si môžete hovoriť, že o tom rozprávam akosi vágne. A nekonkrétne. Pretože, PRETOŽE! A tu príde tá zaujímavá časť - kurz ešte nie je dokončený:) (edit: už je, viď dole) A napriek tomu si ho môžete kúpiť! A učiť sa PHP! Už dnes! Pretože už existujú videá! Zopár.

Rozhodol som sa ho spraviť v Early Access štýle. To je to, kde si na Steame môžete kúpiť hru, kým ešte nie je dokončená a sledovať celý progres až do finišu. Prípadne ho ovplyvňovať. Ide to o to, že si seriál môžete kúpiť hneď, aj keď esťe nie je hotový a pozerať nové videá okamžite, ako ich dokončím. Budete to dostávať postupne. Namiesto čakania na hotový produkt.

Tieto veci trvajú. Niekoľko mesiacov. A v poho môžete počkať, nebudem nikoho nútiť, aby išiel do nedokončeného seriálu. V pohode môžete počkať a keď bude všetko hotové, naraz kúpiť balík desiatok a desiatok (a ďalších desiatok?) videí. Kto sa však chce učiť hneď, má tú možnosť. Byť pri tom od začiatku. Zapájať sa do diskusie, dávať návrhy a pripomienky a sťažnosti a tým pádom korigovať vývoj seriálu.

Kurz bude koncipovaný tak, aby z neho všetci niečo mali. Podobne ako Webrebel. Čiže prejdeme aj cez úplné základy všetkého a budú tam aj videa s absolútnymi základmi programovania. Tak začneme a postupne prejdeme k pokročilým veciam. Je to však kurz primárne určený začiatočníkom. Možno s výnimkou Laravel časti, ktorá predpokladám, že bude na konci zakúpiteľná samostatne.

Bude sa robiť množstvo stránok. Budú sa robiť v čistom PHP, pridá sa k tomu MySQL, budeme sa venovať aj MySQL samostatne, neskôr sa budú robiť v Laraveli. Nie je to iba Laravel kurz. Je to kurz o troch technológiách (PHP, MySQL, Laravel) podobne ako Webrebel bol o troch technológiách (HTML, CSS, JavaScript). Je to kurz pre začiatočníkov a teda nebudeme hneď skákať do frameworkov.

Kurz bude v podobnom rozsahu ako Webrebel, ktorý má cez 120 videotutoriálov, okolo 22 hodín videa a množstvo kontrolovaných domácich úloh (edit 28.6.2015: ok, momentálne je tam cez 50 videí a som možno v štvrtine, takže rozsah bude určite väčší, ako v prvom kurze).

A kto si ho zakúpi v "Skorom štarte", čiže teraz, bude prakticky na úrovni Revolucionárov. Kupujete si to isté, čo mali Revolucionári a tí to mali za 199. Toto stojí 129. Uvidíme, ako sa cena zmení za konci, ale kým kurz nie je dokončený, máte to za zľavnených 129€.

Edit: cena 129 platí do konca mája, potom do konca júna 149, po dokončení bude kurz stáť 199eur. Takže kto má záujem, ponáhľajte:) Samostatný Laravel sa zatiaľ objednať nedá. To potom, keď budú hotové všetky videá.

Edit (2. júl): zmena, odsunul sa dátum "Ostrého štartu" PHP kurzu na 31. augusta. Takže máte zľavnenú cenu o mesiac dlhšie, wheeee! Prečo? Pretože nestíham. Prečo nestíham? Pretože kurz sa rozrastá - bude toho viac, ako som zamýšľal. Každá časť (PHP + MySQL, OOP + Laravel) bude takmer v rozsahu prvého Webrebela, bude toho kopa. Takže odsúvame dátum finišu na neskôr a tiež sa zvyšuje finálna cena. Čo vám ale nemusí vadiť, pretože vy ste šikovní a kupujete kurz teraz, kým je vo vývoji a v akciovej cene:) Samozrejme kto si kurz už kúpil, toho sa zmeny cien netýkajú.

To je myslím pre začiatok dosť infa:) Kurz už beží. Momentálne, ako píšem tento článok, existuje 8 videí (nižšie v článku je neustále rastúci zoznam videí, ktorých je výrazne viac, než 8). A okamžite ako dokončím nové, pribudne tam. A takto sa budú zbierať. Jedno za druhým. Až k finišu. Takže kto pri tom chce byť od začiatku, nech sa páči:) Kto sa chce učiť už dnes, nech sa páči. Registrácie sú otvorené, kurz beží, ideme do toho! Poď aj ty:)

edit: Pôvodne som v článku napísal, že Webrebel má 8 hodín videa. Neviem, odkiaľ som vyhrabal to číslo, možno HTML časť má toľko, Webrebel má dokopy okolo 22 hodín videa a k podobnému číslu chceme smerovať aj v novom kurze.

edit 2: aktuálny (stále rastúci) zoznam epizód ( 4. august 2015 )

edit 3 (4. august 2015): týmto dňom považujem výrobu PHP + MySQL časti za ukončenú. Pôvodne som písal, že PHP + MySQL + Laravel bude trvať okolo 20 hodín. Toľko trvá iba samotné PHP + MySQL. Kurz sa teda rozdeľuje na 2 kurzy, druhý sa bude venovať OOP a frameworku Laravel, bude podobného rozsahu. Kto si kurz kúpi teraz v Skorom štarte, dostane oba (PHP + MySQL aj OOP + Laravel). Neskôr bude možné zakúpiť každú časť samostatne.

  1. Úvod do kurzu, statické vs dynamické stránky
  2. Čo sú backend jazyky a prečo PHP?
  3. Čo sú frameworky a prečo Laravel?
  4. Rozbitie stránky na kúsky + programátor má byť lenivý

rozbaliť zvyšných epizód

  1. Ako zistíme, na ktorej podstránke sme
  2. Navigácia, menu stránky cez PHP + keď neviem, gúgľujem
  3. Automatizujeme navigáciu + nájdeme súbory cez PHP
  4. Automatizujeme navigáciu, part 2
  5. Úvod do tvorby webových aplikácií - Klient / Server princíp
  6. Úvod do tvorby webových aplikácií - Request / Response princíp
  7. Localhost, PHP server na počítači, AMP Stack (Apache, MySQL, PHP)
  8. Nastavíme Mac pre web development - Skryté súbory, plné cesty k súborom, klávesnica
  9. Nastavíme Mac - Rýchle animácie, lepšia konzola, command line devtools
  10. Nastavíme Mac - PHP, Environment Variables, PATH
  11. Nastavíme Mac - Hombrew package manager
  12. Nastavíme Mac - Node, npm, bower, composer, xdebug, brew tap
  13. Nastavíme Mac - Princíp package managerov a PHP Composer
  14. Nastavíme Mac - Inštalujeme Laravel, Xdebug, Dash
  15. Nastavíme Windows pre web development - Nastavenia systému, Windows admin práva
  16. Nastavíme Windows - Klávesnice, Cmder git cygwin konzola
  17. Nastavíme Windows - MAMP, systémové premenné
  18. Nastavíme Windows - Nastavenia php.ini, package / dependency manager
  19. Nastavíme Windows - Environment variables, PATH
  20. Nastavíme Windows - Composer, node.js, npm, bower
  21. Nastavíme Windows - PHP xdebug
  22. [BONUS] - Chyba "CLI prestal fungovať" vo Windows konzole
  23. TODO appka - Úvod a proces výučby
  24. TODO appka - PHPStorm a HTML kód aplikácie
  25. Spracovanie dát z formuláru, GET request, POST request, query string
  26. Na čo sú nám databázy a zobrazovanie PHP chýb?
  27. Zobrazenie PHP errorov a zmena php.ini nastavení
  28. Ako pridať package cez composer require
  29. PHP include vs require vs require_once a spojenie s databázou
  30. Databáza - DB SELECT, načítanie údajov z databázy
  31. Databáza - DB INSERT, vloženie údajov do databázy
  32. Composer update, PHP Error, Whoops a užitočnejšie výpisy chýb
  33. Databáza - Ako vytvoriť databázu a rozchodiť appku u vás doma, SQL import
  34. AJAX - jQuery cez bower, exclude adresárov v PHPStorme
  35. AJAX - Uloženie novej položky do databázy cez AJAX
  36. AJAX - Zobrazenie AJAXom vloženého prvku cez fajnú animáciu
  37. AJAX - Ovládanie klávesnicou a rozmýšľanie nad prioritami
  38. Editačný formulár a vlastná 404 not found stránka
  39. Tvorba kódu, konzistentnosť, refactoring, prepisovanie a hrdosť na kód
  40. Databáza - DB UPDATE, upravenie hodnoty v databáze na novú
  41. Edit a Delete linky na editačný formulár
  42. Dizajn aplikácií, rozmýšľanie nad prioritou a pointou každej feature
  43. Databáza - DB DELETE, vymazanie záznamu z databázy, crawlers & robots
  44. Ako prepojiť HTML element s DB riadkom cez IDčko + globálne premenovanie
  45. Nech PHP aj AJAX používajú ten istý HTML kód, AJAX edit / delete linky
  46. Adresa stránky v Javascripte, ako v JS čítať hodnoty a nastavenia z PHP a CSS
  47. JSON, json_encode, json_decode, preposielanie dát medzi PHP a Javascriptom
  48. PHP funkcie isset, empty, global, vlastné PHP funkcie show_404 a get_item
  49. PHP is_ajax, ako v PHP zistiť, či request je AJAX, učesanie TODO appky
  50. Programovanie - Základy programovania
  51. Programovanie - Filozofovanie o programovaní
  52. Nastavenie Live Edit v PHPStorme, automatický resfresh stránky
  53. Programovanie - Premenné
  54. Programovanie - PHP premenné v praxi, správne názvy premenných
  55. Programovanie - Dátové typy, čísla, integer, float, modulus, type casting
  56. Programovanie - Boolean, if else elseif, ako PHP vyhodnocuje hodnoty a typy
  57. Programovanie - PSR-2 coding style, Content Type header
  58. Programovanie - Stringy, apostrofy vs. úvodzovky, zalamovanie textu
  59. Programovanie - Skryté znaky, new line, line feed LF, carriage return CR
  60. Programovanie - Polia, PHP Array, unset count sort push pop shift unshift
  61. Prechádzanie cez polia, cykly, PHP Loops, foreach while
  62. For loop, vyskočenie z cyklu, continue break, array_filter array_values
  63. Multi-dimenzionálne, asociatívne polia (for real, skutočný názov)
  64. Explode implode map trim, skrátený zápis pre PHP echo
  65. Objekty, PHP Object, kedy asociatívne pole a kedy object, a konverzie medzi nimi
  66. PHP dokumentáciia kedy použiť PHP kedy Ruby, užitočné array a string funkcie
  67. Matice, cyklenie v cykloch, ako zisťovať a overovať dátové typy premenných
  68. Funkcie 1 - Kedy ich vytvárať, ternárny operátor, parametre a argumenty funkcií
  69. Funkcie 2 - Správne názvy funkcií, premenné vo vnútri a mimo funkcie
  70. Funkcie 3 - Funkcií pre lepšiu čitateľnosť kódu, formátovanie čísel v PHP
  71. Funckie 4 - Default hodnoty, variabilný počet argumentov, DocBlock komentáre
  72. Funkcie 5 - Local global premenné, PHP $_SERVER a $GLOBALS
  73. Funkcie 6 - $_SERVER, HTTP_REFERER, redirect status code, func_get_args
  74. Zápisník - Zapisovnie do súboru, timestamp, JSON na ukladanie dát
  75. Zápisník - Čítanie zo súboru, default ?: operátor, formátovanie textu a dátumu
  76. Zápisník - JSON vs PHP serialize, == vs ===, ošetrenie vstupov a prihlásenie
  77. XSS Cross-site scripting, spracovanie viacerých inputov s rovnakým name
  78. MySQL úvod, syntax, databázové debug funkcie
  79. COOKIES, SESSIONS
  80. Session flash message, alerty o úspechu a neúspechu
  81. MySQL - SELECT, MySQL funkcie, formátovanie dátumu, textu a peňázov
  82. MySQL - SELECT 2, usporiadanie, limity, štatistické funkcie
  83. MySQL - INSERT, NULL, DEFAULT, IS NULL, NULLIF
  84. MySQL - UPDATE, DELETE, CREATE, TRUNCATE, DROP
  85. MySQL - SELECT 3, LIKE, COUNT(*) vs COUNT(1), úvod do JOIN
  86. MySQL - INNER JOIN, LEFT JOIN, RIGHT JOIN, OUTER JOIN, UNION, MULTI DELETE
  87. GROUP BY, HAVING vs WHERE, JOIN vs SUBQUERY, DISTINCT, poradie MySQL príkazov
  88. MySQL - Vytvorenie databázy pre Blog, CREATE TABLE a CREATE TRIGGER
  89. MySQL - Vzťahy 1:N, 1:1, M:N, PIVOT tabuľky, funkcia GROUP_CONCAT
  90. Blog - Magic konštanty __DIR__ a __FILE__, realpath cesty, filtrovanie dát, filter_var
  91. Blog - Čisté URL adresy, odstrániť index.php z adresy, .htaccess
  92. Blog - Čisté adresy, URI segmenty, Routing PART 1
  93. Blog - Čisté adresy, URI segmenty, Routing PART 2
  94. Blog - Pripojenie na databázu, PHP Data Objects, PDO Error modes
  95. PHP try catch, Exceptions, logovanie errorov do súboru
  96. Blog - Získanie, naformátovanie, očistenie a zobrazovanie príspevkov
  97. Blog - Automatická príprava postu na výpis, SQL Injection
  98. SQL Injection, PDO Prepared Statements
  99. Blog - Zoznam príspevkov patriacich tagu, Refactoring
  100. Blog - Editačný formulár, predvyplnenie hodnôt, predvyznačenie tagov
  101. Blog - Editácia, sanitácia, validácia, UPDATE príspevku
  102. Blog - Pridanie nového príspevku, INSERT post, validácia
  103. Blog - Mazanie, DELETE post, znovu-vyplnenie inputov ak neprejde validácia
  104. Login, PHP autentifikácia, autorizácia, HASH funkcie
  105. Autorizačné, Autentifikačné pekidže
  106. Nastavenie PHPAuth, PART 1
  107. Nastavenie PHPAuth, PART 2
  108. Registrácia používateľa, odosielanie emailov cez PHP
  109. Login, prihlásenie používateľa
  110. Login, logout, get_user, pomocné funkcie, skrytie obsahu za loginom
  111. Autorizácia, posty patria userom, majú autorov, KONIEC
  112. Záver PHP a MySQL kurzu

Keďže PHP + MySQL časť ja ukončená, pridal som ďalší článok, Webrebel 2 - OOP a Laravel, kde budem zdieľať info o tom, ako postupuje tvorba OOP + Laravel časti. Vrátane rastúceho zoznamu epizód.

---

Btw, prvý Webrebel stále existuje a funguje, tie videá sa dajú stále zakúpiť a zostanú vám naveky, takže môžete pozerať koľko chcete, kedy chcete, ako chcete, neexistuje žiaden "termín ukončenia", každý ukončí kurz kedy chce. Rovnako to bude pri tomto novom. Pointa je, že kto nemá zmáknuté HTML a CSS alebo Javascript, môže sa kedykoľvek doučiť;)

Webrebel žije!

Ako vymeniť klávesnicu a opraviť si MacBook

napísal , 17 Mar 2015

Minule som popísal moju strastiplnú púť - Ako vyčistiť klávesnicu a doj*bať si MacBook.
Teraz ideme túto krivdu osudu definitívne napraviť.

Prišiel som do Apple servisu (mzone). V momente, ako som povedal, že Keyboard Viewer ukazuje stlačené oba shifty, sa iba usmial a bez zaváhania a zvažovania možností povedal, že treba vymeniť celý Top Case. Nazývaný aj Upper Case.

To je celé to šasi (< -- dobré slovo), vrchá časť notebooku, ktorá obsahuje klávesnicu, touchpad, on/off tlačítko, signalizátor stavu baterky... Mac počítače pôsobia ako kus stroja. Iné sú často rozhegané, toto pôsobí ako jeden solídny kus. Prečo? Pretože TO JE JEDEN SOLÍDNY KUS.

A tento jeden solídny kus, bolo mi povedané, by stál okolo 200-300 Eur + aspoň 100 za robotu.

Toto je Apple, takže som čakal, že za môj dych zahmlievajúci ich vitrínu si vypýtajú 50 a šiel som tam s pesimistickým odhadom 200 Eur. Keby povie 200, čo je veľa, bol som ochotný nechať im ho tam a vyzdvihnúť si ho opravený.

Povedal 400.
WAT.

Ako vyčistiť klávesnicu a doj*bať si MacBook

napísal , 17 Mar 2015

Keď idem na záchod, rozmýšľam, kedy mi tam padne telefón a keď pijem kávu, rozmýšľam, kedy ju vylejem na notebook. Stalo sa to 3 týždne dozadu a nebol som prekvapený. Ale ani potešený.

Btw to slovo hore je dojebať. Pretože napríklad ja keď pozerám správy alebo noviny a dajú hviezdičku do slova, tak som strááášne zmätený a vôbec neviem, ktoré slovo asi tak mohli myslieť. A ja nechcem, aby ste boli zmätení. To slovo je dojebať. Dojebať MacBook.

Mac obliatie v pohode prežil, všetko šlapalo, akurát pravý shift a enter sa trošičku lepili, tak že šak dám dole klávesy, po jednom ich vyčistím a vyhrabem spod nich všetky tie chlpy a omrvinky a ďalšie chlpy a aspoň konečne vymením ten Y a Z, keďže QWERTY, a bude mi hej.

Vyčistiť klávesnicu na Macbooku je našťastie celkom jednoduché.

Ako vyčistiť MacBook klávesnicu

Chcel som si ale dať záležať, po vybratí som vyčistil každú jednu plastovú kachličku (jarová voda, drhnutie švédskou utierkou), vo vnútri som vyšparchal dutiny kefkou (k strojčeku na holenie, ale postačí aj stará zubná) a povytieral zákutie jemne navlhčenou handričkou. Jemne.

Čo by predsa nemalo vadiť, keď to v pohode rozbehalo straight up vyliatu kávu.
A samozrejme celý čas mašina vypnutá, odpojená z elektriny a pretrel som to suchou handrou a nechal odstáť aspoň 12 hodín.

Ale kým káva je v pohode, Steve Jobs asi nemal rád vodu, pretože keď som ho po hodinách odpočinku zapol znova, nabootoval sa do safe mode a nemohol som sa prihlásiť. Heslo ani za toho boha nefungovalo.

Registrácie otvorené, úspech, nový kurz

napísal , 9 Mar 2015

Registrácie do kurzu Webrebel sú znova otvorené. A pravdepodobne naveky. Čiže si to môžete kúpiť kedy chcete, iba ten support je časovo obmedzený do leta. To bol hlavný dôvod, prečo mal kurz v prvom kole obmedzené registrácie a štartovací dátum - aby sme obišli situáciu, že niekto si kurz kúpi o 3 roky a bude chcieť 3 mesačný support. To by som potom poskytoval podporu do konca života a nezostal by mi čas na iné veci.

Ako napríklad na nový kurz.

Začal som s frontendom, chce to nejaký backend. Po konzultácii s facebookom a twitterom voľba padla na PHP a Laravel framework. PHP nie je v posledných rokoch zrovna sexy jazyk, ale absolútna väčšina jobov u nás chce práve PHP programátorov. Entry-level joby sú PHP, preto je to stále solídna voľba pre začiatočníka. A na to netreba zabudnúť - toto bude seriál pre začiatočníkov. PHP možno "nie je budúcnosť", ale ak má ten kurz byť reálne užitočný, zvoliť najpoužívanejšiu technológiu neznie ako blbý nápad.

Ruby už má pokryté learn2code, s ostatnými klasikami nemám veľké skúsenosti a Node.js, React/Flux, Meteor sú zaujímavé skôr pre skúsených programátorov. Nechcem začiatočníkom modzgy mútiť všetkými tými javascriptovými divočinami a navyše pri nových technológiách si treba dať pozor. Taký Angular bol nedávno druhý príchod Krista, dnes sa naň už nadáva. Nechcem dať mesiace života do niečoho, čo na konci už možno bude out:) Takže bude to pre začiatočníkov a bude to overená technológia, ktorá ešte pár rokov nikam neodíde.

Ešte nemáme stanovený žiadny dátum, ale niekedy tento rok. Medzičasom sa môžete nahlásiť do Webrebela, prípadne ho podarujte známym, bude celý veselý z toho:) A tu je môj článok O úspechu. Rozoberám v ňom, či považujem rebela za úspech a čo vlastne to slovo pre mňa znamená. Tam budem dávať také osobnejšie veci, brm zostane na tech stuff.

24. 3. tiež začína ďalší learn2code Webdesigner kurz so mnou ako inštruktorom. To je ten, kde učím naživo, v triede s ľuďmi. Tak sa prihláste, kým je čas! Hlavne, ak ste ženy, pretože come on, hádam nenecháte mužov vyhrať:)

Webrebel verzia ZDARMA

napísal , 12 Dec 2014

Pridali sme do Webrebel kurzu verziu zdarma, ktorá obsahuje prvých 15 kapitol HTML a CSS kurzu. S tým, že ak sa vám videá budú páčiť, môžete si dokúpiť všetky ostatné.

Pri všetkých verziách to funguje tak, že dostanete prístup do aplikácie, kde môžete sledovať videá, diskutovať a budete cez ňu mať prístup k materiálom a domácim úlohám, ktoré tam budem uploadovať. Domáce sú dobrovoľné;)

Full disclosure: aplikácia zatiaľ nie je 100% hotová, preto je pri free verzii kurzu napísané, že videá sa odomknú 8. januára, spolu so všetkými ostatnými. Ja tlačím na to, aby sa free videá odomkli okamžite, keď bude aplikácia done. Čiže je možné, že na ne nebudete musieť čakať do januára. Tak by sa mi to páčilo.

Ok, takže behnite na webrebel.sk a hláste sa! Prípadne dajte babke vianočný darček a prihláste tú. Spolu s celou rodinou. A všetkými kamarátmi. Tak.

Vektorové obrázky, nový img srcset atribút, HTML <picture> element

napísal , 8 Dec 2014

S obrázkami je to v dobe retín komplikované. Webrebel kurz venuje niekoľko videí tematike zobrazovania obrázkov na displejoch rôznej veľkosti/hustoty. Toto je jedno z nich, kde sa pozerám na vektory a novinky v HTML - nový <img srcset> atribút a nový <picture> element. Yep, HTML má nový element!

Prihlásiť na kurz sa dá do janára, takže šup šup!
Viac info o kurze tu.