{"id":2982,"date":"2023-11-26T04:27:09","date_gmt":"2023-11-26T04:27:09","guid":{"rendered":"http:\/\/www.goncalo.pt\/por\/?page_id=2982"},"modified":"2023-11-26T04:27:09","modified_gmt":"2023-11-26T04:27:09","slug":"programacao","status":"publish","type":"page","link":"https:\/\/www.goncalo.pt\/por\/programacao\/","title":{"rendered":"Programa\u00e7\u00e3o"},"content":{"rendered":"\n<p>H\u00e1 uns anos, antes de me dedicar \u00e0 Forma\u00e7\u00e3o enquanto nova carreira, tive a ideia de criar centenas de v\u00eddeos a ensinar a programar, e mais tarde criar outros para C e C++ e Assembly.<\/p>\n\n\n\n<p>Tal como aconteceu com as outras ideias, esta ficou em Stand-By, mas pelo menos deixarei aqui uma dessas playlists, que tem perto de 20 v\u00eddeos, e vou dar \u00eanfase a alguns, um que foi criado em 2022 mesmo para efeitos formativos (para estudo em casa por parte de formandos que tive), e outros que eram de h\u00e1 uns anos atr\u00e1s, apenas para a Internet em geral.<\/p>\n\n\n\n<p>Quem sabe um dia n\u00e3o crie mesmo as tais centenas de v\u00eddeos sobre Programa\u00e7\u00e3o.<\/p>\n\n\n\n<p>Primeiro, nos pr\u00f3ximos anos, quero criar nalgum tempo livre, v\u00eddeos usados apenas em Forma\u00e7\u00f5es que d\u00ea, come\u00e7ando pelos de Design de VideoJogos (<a href=\"https:\/\/www.goncalo.pt\/por\/mini-curso-sobre-criacao-e-design-de-videojogos-e-uso-de-game-engines\/\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.goncalo.pt\/por\/mini-curso-sobre-criacao-e-design-de-videojogos-e-uso-de-game-engines\/<\/a>), e pelos de Linux (<a href=\"https:\/\/www.goncalo.pt\/por\/mini-curso-de-linux\/\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.goncalo.pt\/por\/mini-curso-de-linux\/<\/a>), os outros ficam para o Futuro.<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>Primeiro deixo aqui um v\u00eddeo, criado para efeitos formativos, com um resumo sobre como criar um portal com login encriptado usando LAMP (Linux + Apache + MySQL\/MariaDB + PHP):<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Como criar um sistema de autentica\u00e7\u00e3o num website, atrav\u00e9s de LAMP (Linux+Apache+MySQL+PHP) 20220425\" width=\"800\" height=\"450\" src=\"https:\/\/www.youtube.com\/embed\/JpFpTHed-ZY?list=PLswCft9xAHt_Cqaz_xBig52GZFfkmmsfy\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen><\/iframe>\n<\/div><figcaption>Como criar um Sistema de Autentica\u00e7\u00e3o num Website, atrav\u00e9s de LAMP (Linux+Apache+MySQL+PHP)&#8230;<\/figcaption><\/figure>\n\n\n\n<p>No v\u00eddeo acima eu falo r\u00e1pido, \u00e9 mesmo para encaixar em duas horas, e porque como imaginam, sou muito r\u00e1pido nestas coisas, mas podem sempre meter os v\u00eddeos mais lentos para os compreender melhor.<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>A seguir um exemplo do curso que quis iniciar h\u00e1 uns anos, mas que deixei a meio na altura, com alguns extras, come\u00e7ando pela sua playlist no YouTube:<\/p>\n\n\n\n<p><a href=\"https:\/\/www.youtube.com\/watch?v=Ax_twHuDZOQ&amp;list=PLswCft9xAHt_Cqaz_xBig52GZFfkmmsfy\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.youtube.com\/watch?v=Ax_twHuDZOQ&amp;list=PLswCft9xAHt_Cqaz_xBig52GZFfkmmsfy<\/a><\/p>\n\n\n\n<p>O primeiro v\u00eddeo deste projecto em Stand-By virado para o p\u00fablico na Internet na altura:<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Introdu\u00e7\u00e3o ao Curso &quot;Programar do Zero&quot;\" width=\"800\" height=\"450\" src=\"https:\/\/www.youtube.com\/embed\/Ax_twHuDZOQ?list=PLswCft9xAHt_Cqaz_xBig52GZFfkmmsfy\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>Deixo um outro exemplo de v\u00eddeos com programa\u00e7\u00e3o associada a certos temas, este foi o primeiro de dois v\u00eddeos que ensinavam a criar de forma b\u00e1sica um script em PHP para imitar o funcionamento do ContentID system do YouTube:<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Como Criar um &quot;Content ID&quot; Como o da YouTube - Parte I - FingerPrinting\" width=\"800\" height=\"450\" src=\"https:\/\/www.youtube.com\/embed\/L4FnFzuWOHc?list=PLswCft9xAHt_Cqaz_xBig52GZFfkmmsfy\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>Mas o v\u00eddeo acima, para quem n\u00e3o saiba o que s\u00e3o hashes, s\u00f3 deve ser visto ap\u00f3s verem a diferen\u00e7a entre os v\u00e1rios tipos de hashes (que criei para uma playlist sobre Cyber-Seguran\u00e7a que criei na altura e deixei de novo&#8230; em Stand-By):<\/p>\n\n\n\n<p><a href=\"https:\/\/www.youtube.com\/watch?v=A6DukurqCxU&amp;list=PLswCft9xAHt_Cqaz_xBig52GZFfkmmsfy&amp;index=10\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.youtube.com\/watch?v=A6DukurqCxU&amp;list=PLswCft9xAHt_Cqaz_xBig52GZFfkmmsfy&amp;index=10<\/a><\/p>\n\n\n\n<p>E \u00e9 seguido deste que j\u00e1 mostra como se programa (assim em PHP como se estivessemos a falar para uma crian\u00e7a de 5 anos), um sistema estilo o do YouTube:<\/p>\n\n\n\n<p><a href=\"https:\/\/www.youtube.com\/watch?v=q3sPOpBomNU&amp;list=PLswCft9xAHt_Cqaz_xBig52GZFfkmmsfy&amp;index=12\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.youtube.com\/watch?v=q3sPOpBomNU&amp;list=PLswCft9xAHt_Cqaz_xBig52GZFfkmmsfy&amp;index=12<\/a><\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>S\u00e3o apenas exemplos das minhas boas inten\u00e7\u00f5es no Passado de tentar partilhar o meu know-how em v\u00e1rias \u00e1reas com todo o mundo para ajudar terceiros a iniciarem-se nestas andan\u00e7as.<\/p>\n\n\n\n<p>Tenho at\u00e9 outros no YouTube a explicar como criar certas coisas em Javascript e outras linguagens (como o sistema de cookies para o RGPD\/GDPR que est\u00e1 na playlist acima, etc).<\/p>\n\n\n\n<p>Mas como hoje em dia iniciei uma carreira como formador, vou primeiro criar v\u00eddeos espec\u00edficos para forma\u00e7\u00e3o que possa dar.<\/p>\n\n\n\n<p>Mas quem sabe um dia retome estas coisas! \ud83d\ude42<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>2023-11-26.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>H\u00e1 uns anos, antes de me dedicar \u00e0 Forma\u00e7\u00e3o enquanto nova carreira, tive a ideia de criar centenas de v\u00eddeos<\/p>\n","protected":false},"author":1,"featured_media":3019,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-2982","page","type-page","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Programa\u00e7\u00e3o - Gon\u00e7alo Ferreira<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.goncalo.pt\/por\/programacao\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Programa\u00e7\u00e3o - Gon\u00e7alo Ferreira\" \/>\n<meta property=\"og:description\" content=\"H\u00e1 uns anos, antes de me dedicar \u00e0 Forma\u00e7\u00e3o enquanto nova carreira, tive a ideia de criar centenas de v\u00eddeos\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.goncalo.pt\/por\/programacao\/\" \/>\n<meta property=\"og:site_name\" content=\"Gon\u00e7alo Ferreira\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/11\/Curso-de-Aprender-a-Programar-do-Zero.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1280\" \/>\n\t<meta property=\"og:image:height\" content=\"720\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/programacao\/\",\"url\":\"https:\/\/www.goncalo.pt\/por\/programacao\/\",\"name\":\"Programa\u00e7\u00e3o - Gon\u00e7alo Ferreira\",\"isPartOf\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/programacao\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/programacao\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/11\/Curso-de-Aprender-a-Programar-do-Zero.jpg\",\"datePublished\":\"2023-11-26T04:27:09+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/programacao\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.goncalo.pt\/por\/programacao\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/programacao\/#primaryimage\",\"url\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/11\/Curso-de-Aprender-a-Programar-do-Zero.jpg\",\"contentUrl\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/11\/Curso-de-Aprender-a-Programar-do-Zero.jpg\",\"width\":1280,\"height\":720,\"caption\":\"Curso de Aprender a Programar do Zero...\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/programacao\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.goncalo.pt\/por\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Programa\u00e7\u00e3o\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/#website\",\"url\":\"https:\/\/www.goncalo.pt\/por\/\",\"name\":\"Gon\u00e7alo Ferreira\",\"description\":\"[Game Engine\/Software\/Simulation\/Trading Systems\/Full Stack] Developer, Musician, Composer, Painter, Writer, IT Trainer, Sys Admin, Ex-Trader, Skater, Strongman, Vegan, Self-Taught Neuro-Divergent Polymath, and 1001 things more. Welcome to my world!\",\"publisher\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.goncalo.pt\/por\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/#organization\",\"name\":\"Gon\u00e7alo Ferreira\",\"url\":\"https:\/\/www.goncalo.pt\/por\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/08\/cropped-Goncalo-Ferreira-Logo-With-Face.png\",\"contentUrl\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/08\/cropped-Goncalo-Ferreira-Logo-With-Face.png\",\"width\":389,\"height\":90,\"caption\":\"Gon\u00e7alo Ferreira\"},\"image\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"http:\/\/www.linkedin.com\/in\/GoncaloPT\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Programa\u00e7\u00e3o - Gon\u00e7alo Ferreira","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.goncalo.pt\/por\/programacao\/","og_locale":"en_US","og_type":"article","og_title":"Programa\u00e7\u00e3o - Gon\u00e7alo Ferreira","og_description":"H\u00e1 uns anos, antes de me dedicar \u00e0 Forma\u00e7\u00e3o enquanto nova carreira, tive a ideia de criar centenas de v\u00eddeos","og_url":"https:\/\/www.goncalo.pt\/por\/programacao\/","og_site_name":"Gon\u00e7alo Ferreira","og_image":[{"width":1280,"height":720,"url":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/11\/Curso-de-Aprender-a-Programar-do-Zero.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.goncalo.pt\/por\/programacao\/","url":"https:\/\/www.goncalo.pt\/por\/programacao\/","name":"Programa\u00e7\u00e3o - Gon\u00e7alo Ferreira","isPartOf":{"@id":"https:\/\/www.goncalo.pt\/por\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.goncalo.pt\/por\/programacao\/#primaryimage"},"image":{"@id":"https:\/\/www.goncalo.pt\/por\/programacao\/#primaryimage"},"thumbnailUrl":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/11\/Curso-de-Aprender-a-Programar-do-Zero.jpg","datePublished":"2023-11-26T04:27:09+00:00","breadcrumb":{"@id":"https:\/\/www.goncalo.pt\/por\/programacao\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.goncalo.pt\/por\/programacao\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.goncalo.pt\/por\/programacao\/#primaryimage","url":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/11\/Curso-de-Aprender-a-Programar-do-Zero.jpg","contentUrl":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/11\/Curso-de-Aprender-a-Programar-do-Zero.jpg","width":1280,"height":720,"caption":"Curso de Aprender a Programar do Zero..."},{"@type":"BreadcrumbList","@id":"https:\/\/www.goncalo.pt\/por\/programacao\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.goncalo.pt\/por\/"},{"@type":"ListItem","position":2,"name":"Programa\u00e7\u00e3o"}]},{"@type":"WebSite","@id":"https:\/\/www.goncalo.pt\/por\/#website","url":"https:\/\/www.goncalo.pt\/por\/","name":"Gon\u00e7alo Ferreira","description":"[Game Engine\/Software\/Simulation\/Trading Systems\/Full Stack] Developer, Musician, Composer, Painter, Writer, IT Trainer, Sys Admin, Ex-Trader, Skater, Strongman, Vegan, Self-Taught Neuro-Divergent Polymath, and 1001 things more. Welcome to my world!","publisher":{"@id":"https:\/\/www.goncalo.pt\/por\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.goncalo.pt\/por\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.goncalo.pt\/por\/#organization","name":"Gon\u00e7alo Ferreira","url":"https:\/\/www.goncalo.pt\/por\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.goncalo.pt\/por\/#\/schema\/logo\/image\/","url":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/08\/cropped-Goncalo-Ferreira-Logo-With-Face.png","contentUrl":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/08\/cropped-Goncalo-Ferreira-Logo-With-Face.png","width":389,"height":90,"caption":"Gon\u00e7alo Ferreira"},"image":{"@id":"https:\/\/www.goncalo.pt\/por\/#\/schema\/logo\/image\/"},"sameAs":["http:\/\/www.linkedin.com\/in\/GoncaloPT\/"]}]}},"_links":{"self":[{"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/pages\/2982"}],"collection":[{"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/comments?post=2982"}],"version-history":[{"count":1,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/pages\/2982\/revisions"}],"predecessor-version":[{"id":3020,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/pages\/2982\/revisions\/3020"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/media\/3019"}],"wp:attachment":[{"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/media?parent=2982"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}