https://www.codenewbie.org/

Eingereichte URL:
https://www.codenewbie.org/
Bericht beendet:

Die von der Seite ausgehenden identifizierten Links

LinkText
learn more
DEV
Forem
Visit CodeNewbie Community
Join the CodeNewbie Community Forem
Follow Us @CodeNewbies
RSS Feed

JavaScript-Variablen · 28 gefunden

Globale JavaScript-Variablen, die in das Window Object einer Seite geladen werden, sind Variablen, die außerhalb von Funktionen deklariert werden und von jeder Stelle des Codes innerhalb des aktuellen Bereichs zugänglich sind

NameTyp
onbeforetoggleobject
documentPictureInPictureobject
onscrollendobject
NREUMobject
webpackChunk:NRBA-1.275.0.PRODobject
newrelicobject
$function
jQueryfunction
Foundationobject
Pickerfunction

Konsolenprotokoll-Meldungen · 4 gefunden

In der Web-Konsole protokollierte Meldungen

TypKategorieProtokoll
errornetwork
URL
https://jwpsrv.com/library/of7EMFGdEeOjUiIACqoGtw.js
Text
Failed to load resource: the server responded with a status of 404 (Not Found)
errornetwork
URL
https://www.codenewbie.org/fonts/font-awesome/fa-solid-900.woff2
Text
Failed to load resource: the server responded with a status of 404 (Not Found)
errornetwork
URL
https://www.codenewbie.org/fonts/font-awesome/fa-solid-900.woff
Text
Failed to load resource: the server responded with a status of 404 (Not Found)
errornetwork
URL
https://www.codenewbie.org/fonts/font-awesome/fa-solid-900.ttf
Text
Failed to load resource: the server responded with a status of 404 (Not Found)

HTML

Der HTML-Rohtext der Seite

<!DOCTYPE html><html class=" js flexbox flexboxlegacy canvas canvastext webgl no-touch geolocation postmessage no-websqldatabase indexeddb hashchange history draganddrop websockets rgba hsla multiplebgs backgroundsize borderimage borderradius boxshadow textshadow opacity cssanimations csscolumns cssgradients cssreflections csstransforms csstransforms3d csstransitions fontface generatedcontent video audio localstorage sessionstorage webworkers no-applicationcache svg inlinesvg smil svgclippaths" style=""><head>
    <meta charset="utf-8">
<script type="text/javascript" async="" src="https://www.googletagmanager.com/gtag/js?id=G-1GCDTD7TDD&amp;cx=c&amp;_slc=1"></script><script type="text/javascript" async="" src="https://cdn.mxpnl.com/libs/mixpanel-2.2.min.js"></script><script async="" src="//www.google-analytics.com/analytics.js"></script><script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","errorBeacon":"bam.nr-data.net","licenseKey":"366af15e47","applicationID":"125227928","transactionName":"cl5fRkMNWQ9cRRgWU1ZUQh1ZDVgGSVZQAw==","queueTime":2,"applicationTime":50,"agent":""}</script>
<script type="text/javascript">(window.NREUM||(NREUM={})).init={ajax:{deny_list:["bam.nr-data.net"]}};(window.NREUM||(NREUM={})).loader_config={licenseKey:"366af15e47",applicationID:"125227928"};;/*! For license information please see nr-loader-rum-1.275.0.min.js.LICENSE.txt */
(()=>{var e,t,r={8122:(e,t,r)=>{"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555:(e,t,r)=>{"use strict";r.d(t,{Vp:()=>c,fn:()=>s,x1:()=>u});var n=r(384),i=r(8122);const o={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0},a={};function s(e){try{const t=c(e);return!!t.licenseKey&&!!t.errorBeacon&&!!t.applicationID}catch(e){return!1}}function c(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}function u(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.info=a[e])}},9417:(e,t,r)=>{"use strict";r.d(t,{D0:()=>g,gD:()=>h,xN:()=>p});var n=r(993);const i=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var o=r(2614),a=r(944),s=r(384),c=r(8122);const u="[data-nr-mask]",d=()=>{const e={mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,harvestTimeSeconds:10,autoStart:!0},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},feature_flags:[],generic_events:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},harvest:{tooManyRequestsDelay:60},jserrors:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},logging:{enabled:!0,harvestTimeSeconds:10,autoStart:!0,level:n.p_.INFO},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:o.wk,inactiveMs:o.BB},session_replay:{autoStart:!0,enabled:!1,harvestTimeSeconds:60,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){i(t)?e.mask_selector="".concat(t,",").concat(u):""===t||null===t?e.mask_selector=u:(0,a.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){i(t)?e.block_selector+=",".concat(t):""!==t&&(0,a.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,a.R)(7,t)}},session_trace:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},soft_navigations:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},spa:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},ssl:void 0,user_actions:{enabled:!0}}},l={},f="All configuration objects require an agent identifier!";function g(e){if(!e)throw new Error(f);if(!l[e])throw new Error("Configuration for ".concat(e," was never set"));return l[e]}function p(e,t){if(!e)throw new Error(f);l[e]=(0,c.a)(t,d());const r=(0,s.nY)(e);r&&(r.init=l[e])}function h(e,t){if(!e)throw new Error(f);var r=g(e);if(r){for(var n=t.split("."),i=0;i<n.length-1;i++)if("object"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}},3371:(e,t,r)=>{"use strict";r.d(t,{V:()=>f,f:()=>l});var n=r(8122),i=r(384),o=r(6154),a=r(9324);let s=0;const c={buildEnv:a.F3,distMethod:a.Xs,version:a.xv,originTime:o.WN},u={customTransaction:void 0,disabled:!1,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,onerror:void 0,ptid:void 0,releaseIds:{},appMetadata:{},session:void 0,denyList:void 0,timeKeeper:void 0,obfuscator:void 0},d={};function l(e){if(!e)throw new Error("All runtime objects require an agent identifier!");if(!d[e])throw new Error("Runtime for ".concat(e," was never set"));return d[e]}function f(e,t){if(!e)throw new Error("All runtime objects require an agent identifier!");d[e]={...(0,n.a)(t,u),...c},Object.hasOwnProperty.call(d[e],"harvestCount")||Object.defineProperty(d[e],"harvestCount",{get:()=>++s});const r=(0,i.nY)(e);r&&(r.runtime=d[e])}},9324:(e,t,r)=>{"use strict";r.d(t,{F3:()=>i,Xs:()=>o,xv:()=>n});const n="1.275.0",i="PROD",o="CDN"},6154:(e,t,r)=>{"use strict";r.d(t,{OF:()=>c,RI:()=>i,WN:()=>d,bv:()=>o,gm:()=>a,mw:()=>s,sb:()=>u});var n=r(1863);const i="undefined"!=typeof window&&!!window.document,o="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),s=Boolean("hidden"===a?.document?.visibilityState),c=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),u=c&&"undefined"==typeof SharedWorker,d=((()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);Array.isArray(e)&&e.length>=2&&e[1]})(),Date.now()-(0,n.t)())},1687:(e,t,r)=>{"use strict";r.d(t,{Ak:()=>c,Ze:()=>l,x3:()=>u});var n=r(7836),i=r(3606),o=r(860),a=r(2646);const s={};function c(e,t){const r={staged:!1,priority:o.P3[t]||0};d(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){e&&s[e]&&(s[e].get(t)&&s[e].delete(t),g(e,t,!1),s[e].size&&f(e))}function d(e){if(!e)throw new Error("agentIdentifier required");s[e]||(s[e]=new Map)}function l(e="",t="feature",r=!1){if(d(e),!e||!s[e].get(t)||r)return g(e,t);s[e].get(t).staged=!0,f(e)}function f(e){const t=Array.from(s[e]);t.every((([e,t])=>t.staged))&&(t.sort(((e,t)=>e[1].priority-t[1].priority)),t.forEach((([t])=>{s[e].delete(t),g(e,t)})))}function g(e,t,r=!0){const o=e?n.ee.get(e):n.ee,s=i.i.handlers;if(!o.aborted&&o.backlog&&s){if(r){const e=o.backlog[t],r=s[t];if(r){for(let t=0;e&&t<e.length;++t)p(e[t],r);Object.entries(r).forEach((([e,t])=>{Object.values(t||{}).forEach((t=>{t[0]?.on&&t[0]?.context()instanceof a.y&&t[0].on(e,t[1])}))}))}}o.isolatedBacklog||delete s[t],o.backlog[t]=null,o.emit("drain-"+t,[])}}function p(e,t){var r=e[1];Object.values(t[r]||{}).forEach((t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],o=e[2];n.apply(i,o)}}))}},7836:(e,t,r)=>{"use strict";r.d(t,{P:()=>c,ee:()=>u});var n=r(384),i=r(8990),o=r(3371),a=r(2646),s=r(5607);const c="nr@context:".concat(s.W),u=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&(0,o.f)(r).isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,o){!1!==o&&(o=!0);if(u.aborted&&!i)return;t&&o&&t.emit(e,r,n);for(var a=g(n),c=h(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var p=m()[s[e]];p&&p.push([f,e,r,a]);return a},get:v,listeners:h,context:g,buffer:function(e,t){const r=m();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach((([e,n])=>{s[n]=t,t in r||(r[t]=[])}))},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach((e=>{delete f.backlog[e]}))},isBuffering:function(e){return!!m()[s[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function g(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,c,(()=>new a.y(c))):new a.y(c)}function p(e,t){n[e]=h(e).concat(t)}function h(e){return n[e]||[]}function v(t){return d[t]=d[t]||e(f,t)}function m(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=u)},2646:(e,t,r)=>{"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908:(e,t,r)=>{"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606:(e,t,r)=>{"use strict";r.d(t,{i:()=>o});var n=r(9908);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.d,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.d);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3878:(e,t,r)=>{"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function o(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>o,jT:()=>n,sp:()=>i})},5607:(e,t,r)=>{"use strict";r.d(t,{W:()=>n});const n=(0,r(9566).bz)()},9566:(e,t,r)=>{"use strict";r.d(t,{LA:()=>s,bz:()=>a});var n=r(6154);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map((e=>"x"===e?o(t,r++).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s<e;s++)a.push(o(r,i++).toString(16));return a.join("")}},2614:(e,t,r)=>{"use strict";r.d(t,{BB:()=>a,H3:()=>n,g:()=>u,iL:()=>c,tS:()=>s,uh:()=>i,wk:()=>o});const n="NRBA",i="SESSION",o=144e5,a=18e5,s={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},u={OFF:0,FULL:1,ERROR:2}},1863:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},944:(e,t,r)=>{"use strict";function n(e,t){"function"==typeof console.debug&&console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t)}r.d(t,{R:()=>n})},5284:(e,t,r)=>{"use strict";r.d(t,{t:()=>c,B:()=>s});var n=r(7836),i=r(6154);const o="newrelic";const a=new Set,s={};function c(e,t){const r=n.ee.get(t);s[t]??={},e&&"object"==typeof e&&(a.has(t)||(r.emit("rumresp",[e]),s[t]=e,a.add(t),function(e={}){try{i.gm.dispatchEvent(new CustomEvent(o,{detail:e}))}catch(e){}}({loaded:!0})))}},8990:(e,t,r)=>{"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389:(e,t,r)=>{"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout((()=>{i=clearTimeout(i)}),t)),n||(clearTimeout(i),i=setTimeout((()=>{e.apply(this,r)}),t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},5289:(e,t,r)=>{"use strict";r.d(t,{GG:()=>o,sB:()=>a});var n=r(3878);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.sp)("load",e,t)}function a(e){if(i())return e();(0,n.DD)("DOMContentLoaded",e)}},384:(e,t,r)=>{"use strict";r.d(t,{NT:()=>o,US:()=>d,Zm:()=>a,bQ:()=>c,dV:()=>s,nY:()=>u,pV:()=>l});var n=r(6154),i=r(1863);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function s(){let e=a();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function d(e,t){a()[e]=t}function l(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},2843:(e,t,r)=>{"use strict";r.d(t,{u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",(function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)}),r,i)}},3434:(e,t,r)=>{"use strict";r.d(t,{Jt:()=>o,YM:()=>c});var n=r(7836),i=r(5607);const o="nr@original:".concat(i.W);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");const a="-"===n.charAt(0);for(let s=0;s<t.length;s++){const c=t[s],u=e[c];d(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return d(t)?t:(r||(r=""),nrWrapper[o]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach((function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})})),t}catch(e){u([e],r)}for(var n in e)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,d,l;try{a=this,o=[...arguments],d="function"==typeof n?n(o,a):n||{}}catch(t){u([t,"",[o,a,s],d],e)}i(r+"start",[o,a,s],d,c);try{return l=t.apply(a,o)}catch(e){throw i(r+"err",[o,a,e],d,c),e}finally{i(r+"end",[o,a,l],d,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function d(e){return!(e&&"function"==typeof e&&e.apply&&!e[o])}},993:(e,t,r)=>{"use strict";r.d(t,{ET:()=>o,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o="log";n.K7.logging},3969:(e,t,r)=>{"use strict";r.d(t,{TZ:()=>n,XG:()=>s,rs:()=>i,xV:()=>a,z_:()=>o});const n=r(860).K7.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},6630:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewEvent},782:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewTiming},6344:(e,t,r)=>{"use strict";r.d(t,{G4:()=>i});var n=r(2614);r(860).K7.sessionReplay;const i={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"};n.g.ERROR,n.g.FULL,n.g.OFF},4234:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(7836),i=r(1687);class o{constructor(e,t){this.agentIdentifier=e,this.ee=n.ee.get(e),this.featureName=t,this.blocked=!1}deregisterDrain(){(0,i.x3)(this.agentIdentifier,this.featureName)}}},7603:(e,t,r)=>{"use strict";r.d(t,{j:()=>K});var n=r(860),i=r(2555),o=r(3371),a=r(9908),s=r(7836),c=r(1687),u=r(5289),d=r(6154),l=r(944),f=r(3969),g=r(384),p=r(6344);const h=["setErrorHandler","finished","addToTrace","addRelease","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",p.G4.RECORD,p.G4.PAUSE,"log","wrapLogger"],v=["setErrorHandler","finished","addToTrace","addRelease"];var m=r(1863),b=r(2614),y=r(993);var w=r(2646),A=r(3434);const R=new Map;function E(e,t,r,n){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const i=function(e){return(e||s.ee).get("logger")}(e),o=(0,A.YM)(i),a=new w.y(s.P);a.level=n.level,a.customAttributes=n.customAttributes;const c=t[r]?.[A.Jt]||t[r];return R.set(c,a),o.inPlace(t,[r],"wrap-logger-",(()=>R.get(c))),i}function x(){const e=(0,g.pV)();h.forEach((t=>{e[t]=(...r)=>function(t,...r){let n=[];return Object.values(e.initializedAgents).forEach((e=>{e&&e.api?e.exposed&&e.api[t]&&n.push(e.api[t](...r)):(0,l.R)(38,t)})),n.length>1?n:n[0]}(t,...r)}))}const _={};function N(e,t,g=!1){t||(0,c.Ak)(e,"api");const h={};var w=s.ee.get(e),A=w.get("tracer");_[e]=b.g.OFF,w.on(p.G4.REPLAY_RUNNING,(t=>{_[e]=t}));var R="api-",x=R+"ixn-";function N(t,r,n,o){const a=(0,i.Vp)(e);return null===r?delete a.jsAttributes[t]:(0,i.x1)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),j(R,n,!0,o||null===r?"session":void 0)(t,r)}function T(){}h.log=function(e,{customAttributes:t={},level:r=y.p_.INFO}={}){(0,a.p)(f.xV,["API/log/called"],void 0,n.K7.metrics,w),function(e,t,r={},i=y.p_.INFO){(0,a.p)(f.xV,["API/logging/".concat(i.toLowerCase(),"/called")],void 0,n.K7.metrics,e),(0,a.p)(y.ET,[(0,m.t)(),t,r,i],void 0,n.K7.logging,e)}(w,e,t,r)},h.wrapLogger=(e,t,{customAttributes:r={},level:i=y.p_.INFO}={})=>{(0,a.p)(f.xV,["API/wrapLogger/called"],void 0,n.K7.metrics,w),E(w,e,t,{customAttributes:r,level:i})},v.forEach((e=>{h[e]=j(R,e,!0,"api")})),h.addPageAction=j(R,"addPageAction",!0,n.K7.genericEvents),h.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,o.f)(e).customTransaction=(r||"http://custom.transaction")+t,j(R,"setPageViewName",!0)()},h.setCustomAttribute=function(e,t,r=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return N(e,t,"setCustomAttribute",r);(0,l.R)(40,typeof t)}else(0,l.R)(39,typeof e)},h.setUserId=function(e){if("string"==typeof e||null===e)return N("enduser.id",e,"setUserId",!0);(0,l.R)(41,typeof e)},h.setApplicationVersion=function(e){if("string"==typeof e||null===e)return N("application.version",e,"setApplicationVersion",!1);(0,l.R)(42,typeof e)},h.start=()=>{try{(0,a.p)(f.xV,["API/start/called"],void 0,n.K7.metrics,w),w.emit("manual-start-all")}catch(e){(0,l.R)(23,e)}},h[p.G4.RECORD]=function(){(0,a.p)(f.xV,["API/recordReplay/called"],void 0,n.K7.metrics,w),(0,a.p)(p.G4.RECORD,[],void 0,n.K7.sessionReplay,w)},h[p.G4.PAUSE]=function(){(0,a.p)(f.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,w),(0,a.p)(p.G4.PAUSE,[],void 0,n.K7.sessionReplay,w)},h.interaction=function(e){return(new T).get("object"==typeof e?e:{})};const S=T.prototype={createTracer:function(e,t){var r={},i=this,o="function"==typeof t;return(0,a.p)(f.xV,["API/createTracer/called"],void 0,n.K7.metrics,w),g||(0,a.p)(x+"tracer",[(0,m.t)(),e,r],i,n.K7.spa,w),function(){if(A.emit((o?"":"no-")+"fn-start",[(0,m.t)(),i,o],r),o)try{return t.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw A.emit("fn-err",[arguments,this,t],r),t}finally{A.emit("fn-end",[(0,m.t)()],r)}}}};function j(e,t,r,i){return function(){return(0,a.p)(f.xV,["API/"+t+"/called"],void 0,n.K7.metrics,w),i&&(0,a.p)(e+t,[(0,m.t)(),...arguments],r?null:this,i,w),r?void 0:this}}function k(){r.e(296).then(r.bind(r,8778)).then((({setAPI:t})=>{t(e),(0,c.Ze)(e,"api")})).catch((e=>{(0,l.R)(27,e),w.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{S[e]=j(x,e,void 0,g?n.K7.softNav:n.K7.spa)})),h.setCurrentRouteName=g?j(x,"routeName",void 0,n.K7.softNav):j(R,"routeName",!0,n.K7.spa),h.noticeError=function(t,r){"string"==typeof t&&(t=new Error(t)),(0,a.p)(f.xV,["API/noticeError/called"],void 0,n.K7.metrics,w),(0,a.p)("err",[t,(0,m.t)(),!1,r,!!_[e]],void 0,n.K7.jserrors,w)},d.RI?(0,u.GG)((()=>k()),!0):k(),h}var T=r(9417),S=r(8122);const j={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},k={};var I=r(5284);const O=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};let P=!1;function K(e,t={},r,n){let{init:a,info:c,loader_config:u,runtime:l={},exposed:f=!0}=t;l.loaderType=r;const p=(0,g.pV)();c||(a=p.init,c=p.info,u=p.loader_config),(0,T.xN)(e.agentIdentifier,a||{}),function(e,t){if(!e)throw new Error("All loader-config objects require an agent identifier!");k[e]=(0,S.a)(t,j);const r=(0,g.nY)(e);r&&(r.loader_config=k[e])}(e.agentIdentifier,u||{}),c.jsAttributes??={},d.bv&&(c.jsAttributes.isWorker=!0),(0,i.x1)(e.agentIdentifier,c);const h=(0,T.D0)(e.agentIdentifier),v=[c.beacon,c.errorBeacon];P||(h.proxy.assets&&(O(h.proxy.assets),v.push(h.proxy.assets)),h.proxy.beacon&&v.push(h.proxy.beacon),x(),(0,g.US)("activatedFeatures",I.B),e.runSoftNavOverSpa&&=!0===h.soft_navigations.enabled&&h.feature_flags.includes("soft_nav")),l.denyList=[...h.ajax.deny_list||[],...h.ajax.block_internal?v:[]],l.ptid=e.agentIdentifier,(0,o.V)(e.agentIdentifier,l),e.ee=s.ee.get(e.agentIdentifier),void 0===e.api&&(e.api=N(e.agentIdentifier,n,e.runSoftNavOverSpa)),void 0===e.exposed&&(e.exposed=f),P=!0}},8374:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860:(e,t,r)=>{"use strict";r.d(t,{$J:()=>o,K7:()=>n,P3:()=>i});const n={ajax:"ajax",genericEvents:"generic_events",jserrors:"jserrors",logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations",spa:"spa"},i={[n.pageViewEvent]:1,[n.pageViewTiming]:2,[n.metrics]:3,[n.jserrors]:4,[n.spa]:5,[n.ajax]:6,[n.sessionTrace]:7,[n.softNav]:8,[n.sessionReplay]:9,[n.logging]:10,[n.genericEvents]:11},o={[n.pageViewTiming]:"events",[n.ajax]:"events",[n.spa]:"events",[n.softNav]:"events",[n.metrics]:"jserrors",[n.jserrors]:"jserrors",[n.sessionTrace]:"browser/blobs",[n.sessionReplay]:"browser/blobs",[n.logging]:"browser/logs",[n.genericEvents]:"ins"}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>"nr-rum-1.275.0.min.js",i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.275.0.PROD:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d<u.length;d++){var l=u[d];if(l.getAttribute("src")==r||l.getAttribute("data-webpack")==t+o){s=l;break}}if(!s){c=!0;var f={296:"sha512-VznhEApF3XO7GHWYwoNt4lU4Zn1sF0wsG8RtlBJC9Du2BOSHAa8jtx37qttCscUPYIniZ1GOu0mu/jpr+lo34w=="};(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",t+o),s.src=r,0!==s.src.indexOf(window.location.origin+"/")&&(s.crossOrigin="anonymous"),f[a]&&(s.integrity=f[a])}e[r]=[n];var g=(t,n)=>{s.onerror=s.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},p=setTimeout(g.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=g.bind(null,s.onerror),s.onload=g.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="https://js-agent.newrelic.com/",(()=>{var e={840:0,374:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u<a.length;u++)o=a[u],i.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=self["webpackChunk:NRBA-1.275.0.PROD"]=self["webpackChunk:NRBA-1.275.0.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(8374);var e=i(944),t=i(6344),r=i(9566);class n{agentIdentifier;constructor(e=(0,r.LA)(16)){this.agentIdentifier=e}#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}addPageAction(e,t){return this.#e("addPageAction",e,t)}setPageViewName(e,t){return this.#e("setPageViewName",e,t)}setCustomAttribute(e,t,r){return this.#e("setCustomAttribute",e,t,r)}noticeError(e,t){return this.#e("noticeError",e,t)}setUserId(e){return this.#e("setUserId",e)}setApplicationVersion(e){return this.#e("setApplicationVersion",e)}setErrorHandler(e){return this.#e("setErrorHandler",e)}addRelease(e,t){return this.#e("addRelease",e,t)}log(e,t){return this.#e("log",e,t)}}class o extends n{#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}start(){return this.#e("start")}finished(e){return this.#e("finished",e)}recordReplay(){return this.#e(t.G4.RECORD)}pauseReplay(){return this.#e(t.G4.PAUSE)}addToTrace(e){return this.#e("addToTrace",e)}setCurrentRouteName(e){return this.#e("setCurrentRouteName",e)}interaction(){return this.#e("interaction")}wrapLogger(e,t,r){return this.#e("wrapLogger",e,t,r)}}var a=i(860),s=i(9417);const c=Object.values(a.K7);function u(e){const t={};return c.forEach((r=>{t[r]=function(e,t){return!0===(0,s.gD)(t,"".concat(e,".enabled"))}(r,e)})),t}var d=i(7603);var l=i(1687),f=i(4234),g=i(5289),p=i(6154),h=i(384);const v=e=>p.RI&&!0===(0,s.gD)(e,"privacy.cookies_enabled");function m(e){return!!(0,h.dV)().o.MO&&v(e)&&!0===(0,s.gD)(e,"session_trace.enabled")}var b=i(6389);class y extends f.W{constructor(e,t,r=!0){super(e.agentIdentifier,t),this.auto=r,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===e.init[this.featureName].autoStart&&(this.auto=!1),this.auto?(0,l.Ak)(e.agentIdentifier,t):this.ee.on("manual-start-all",(0,b.J)((()=>{(0,l.Ak)(e.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator(e)})))}importAggregator(t,r={}){if(this.featAggregate||!this.auto)return;let n;this.onAggregateImported=new Promise((e=>{n=e}));const o=async()=>{let o;try{if(v(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(296).then(i.bind(i,3861));o=e(t)}}catch(t){(0,e.R)(20,t),this.ee.emit("internal-error",[t]),this.featureName===a.K7.sessionReplay&&this.abortHandler?.()}try{if(t.sharedAggregator)await t.sharedAggregator;else{t.sharedAggregator=i.e(296).then(i.bind(i,9337));const{EventAggregator:e}=await t.sharedAggregator;t.sharedAggregator=new e}if(!this.#t(this.featureName,o))return(0,l.Ze)(this.agentIdentifier,this.featureName),void n(!1);const{lazyFeatureLoader:e}=await i.e(296).then(i.bind(i,6103)),{Aggregate:a}=await e(this.featureName,"aggregate");this.featAggregate=new a(t,r),n(!0)}catch(t){(0,e.R)(34,t),this.abortHandler?.(),(0,l.Ze)(this.agentIdentifier,this.featureName,!0),n(!1),this.ee&&this.ee.abort()}};p.RI?(0,g.GG)((()=>o()),!0):o()}#t(e,t){switch(e){case a.K7.sessionReplay:return m(this.agentIdentifier)&&!!t;case a.K7.sessionTrace:return!!t;default:return!0}}}var w=i(6630);class A extends y{static featureName=w.T;constructor(e,t=!0){super(e,w.T,t),this.importAggregator(e)}}var R=i(9908),E=i(2843),x=i(3878),_=i(782),N=i(1863);class T extends y{static featureName=_.T;constructor(e,t=!0){super(e,_.T,t),p.RI&&((0,E.u)((()=>(0,R.p)("docHidden",[(0,N.t)()],void 0,_.T,this.ee)),!0),(0,x.sp)("pagehide",(()=>(0,R.p)("winPagehide",[(0,N.t)()],void 0,_.T,this.ee))),this.importAggregator(e))}}var S=i(3969);class j extends y{static featureName=S.TZ;constructor(e,t=!0){super(e,S.TZ,t),this.importAggregator(e)}}new class extends o{constructor(t,r){super(r),p.gm?(this.features={},(0,h.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(A),this.runSoftNavOverSpa=[...this.desiredFeatures].some((e=>e.featureName===a.K7.softNav)),(0,d.j)(this,t,t.loaderType||"agent"),this.run()):(0,e.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}run(){try{const t=u(this.agentIdentifier),r=[...this.desiredFeatures];r.sort(((e,t)=>a.P3[e.featureName]-a.P3[t.featureName])),r.forEach((r=>{if(!t[r.featureName]&&r.featureName!==a.K7.pageViewEvent)return;if(this.runSoftNavOverSpa&&r.featureName===a.K7.spa)return;if(!this.runSoftNavOverSpa&&r.featureName===a.K7.softNav)return;const n=function(e){switch(e){case a.K7.ajax:return[a.K7.jserrors];case a.K7.sessionTrace:return[a.K7.ajax,a.K7.pageViewEvent];case a.K7.sessionReplay:return[a.K7.sessionTrace];case a.K7.pageViewTiming:return[a.K7.pageViewEvent];default:return[]}}(r.featureName).filter((e=>!(e in this.features)));n.length>0&&(0,e.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)}))}catch(t){(0,e.R)(22,t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,h.Zm)();delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[A,T,j],loaderType:"lite"})})()})();</script>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="alternate" type="application/rss+xml" title="Code Newbie" href="http://feeds.podtrac.com/q8s8ba9YtM6r">
    <meta name="csrf-param" content="authenticity_token">
<meta name="csrf-token" content="5DYGbB4Way/tGsOK7KX0dROt9Si4CtJmyJDzmcI9X+jzSxtBBBElkdd79oDP0e90UInlSgci+4I9vwKTjcDmsg==">
    <link rel="shortcut icon" type="image/png" href="/assets/favicon-180-b6d80e4d946988dd84ac70aca4f458997d945d020597dcd414e0a1f0c6133b74.png">
    <title>CodeNewbie</title>
    <link rel="stylesheet" media="screen" href="/assets/application-9fc8e881e00c9aad2d1eacc72d18cf31af4c0c810181172bf4f71743d44e2a14.css">
    <script src="/assets/application-1763e7afd307a64ea5a87d377109194ceca48ed00649178b063a8f346d358f1c.js"></script><meta class="foundation-data-attribute-namespace"><meta class="foundation-mq-xxlarge"><meta class="foundation-mq-xlarge"><meta class="foundation-mq-large"><meta class="foundation-mq-medium"><meta class="foundation-mq-small"><style></style><meta class="foundation-mq-topbar">
    <script src="/assets/vendor/modernizr-e5e9742b5821ce505a850d937a95481d65f99c9f82713400335e024afcc4eaae.js"></script>
    <script src="https://vjs.zencdn.net/4.6.1/video.js"></script>
    <script src="https://jwpsrv.com/library/of7EMFGdEeOjUiIACqoGtw.js"></script>
    <script>
      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
        (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
          m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

ga('create', 'UA-50858260-1', 'codenewbie.org');
ga('send', 'pageview');
$(document).ready(function() {
  $('.menu-icon').click(function(){ false });
});
    </script>
    <link href="https://fonts.googleapis.com/css?family=Averia+Sans+Libre" rel="stylesheet">
    <link href="https://fonts.googleapis.com/css?family=Lato:400,600,700,900" rel="stylesheet">
    <link href="https://fonts.googleapis.com/css?family=Roboto:300,400,500,700" rel="stylesheet">
    <link href="https://fonts.googleapis.com/css?family=Open+Sans:400,800,300,700,600" rel="stylesheet" type="text/css">
    <link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700,900" rel="stylesheet">
    <link href="https://fonts.googleapis.com/css?family=Montserrat:400,800,900" rel="stylesheet">
  <script>
//<![CDATA[
      (function(e,b){if(!b.__SV){var a,f,i,g;window.mixpanel=b;a=e.createElement("script");
      a.type="text/javascript";a.async=!0;a.src=("https:"===e.location.protocol?"https:":"http:")+
      '//cdn.mxpnl.com/libs/mixpanel-2.2.min.js';f=e.getElementsByTagName("script")[0];
      f.parentNode.insertBefore(a,f);b._i=[];b.init=function(a,e,d){function f(b,h){
      var a=h.split(".");2==a.length&&(b=b[a[0]],h=a[1]);b[h]=function(){b.push([h].concat(
      Array.prototype.slice.call(arguments,0)))}}var c=b;"undefined"!==typeof d?c=b[d]=[]:
      d="mixpanel";c.people=c.people||[];c.toString=function(b){var a="mixpanel";"mixpanel"!==d&&(a+="."+d);
      b||(a+=" (stub)");return a};c.people.toString=function(){return c.toString(1)+".people (stub)"};
      i="disable track track_pageview track_links track_forms register register_once alias unregister identify name_tag set_config people.set people.set_once people.increment people.append people.track_charge people.clear_charges people.delete_user".split(" ");
      for(g=0;g<i.length;g++)f(c,i[g]); b._i.push([a,e,d])};b.__SV=1.2}})(document,window.mixpanel||[]);
      mixpanel.init("0c827cda2b4a0900dcaf4096a557d9ac");

//]]>
</script></head>
  <body class="pages pages-homepage">
    <div id="nav">
  <section>
  <nav>
    <ul class="nav-mobile">
      <li><img src="/assets/codenewbie-bubble-f9bf43f0cda82bbfd7d7cb620693a7facfc8c4e5a17b93d8ba2f58e03c8020ee.png" alt="Codenewbie bubble"></li>
    </ul>
    <ul class="nav-list">
      <a href="/">
        <li>Home</li>
      </a>
      <a href="/podcast">
        <li>Podcast</li>
      </a>
      <a href="http://codelandconf.com/">
        <li>Codeland</li>
      </a>
      <a href="/basecs">
        <li>Base.cs</li>
      </a>
      <a href="/blog">
        <li>Blog</li>
      </a>
      <a href="https://dev.to">
        <li>DEV</li>
      </a>
      <a href="https://www.forem.com/">
        <li>Forem</li>
      </a>
      <a href="https://community.codenewbie.org/">
        <li>Visit CodeNewbie Community</li>
      </a>
    </ul>
  </nav>
  </section>
</div>

    
    
<header>
  <h1><img class="codenewbie-logo" src="https://s3.amazonaws.com/codenewbie-assets/codenewbie+new+logo+white.png"></h1>
  <p><span>the most supportive community of programmers <br> and people learning to code.</span></p>
  <p><span><a href="https://community.codenewbie.org" style="color:black;font-weight:bold">Join the CodeNewbie Community Forem</a></span></p>
  <div class="social-icons">
    <a target="blank" href="http://twitter.com/codenewbies">
      <div class="social-media-icon" id="twitter"></div>
</a>  </div>
</header>

<div class="homepage-panel panel--podcast">
  <section class="podcast">
  <div class="section-title">
    <h3 class="featured--title">
      <a class="featured--link" href="/podcast">CodeNewbie Podcast</a>
      <span class="featured--subtitle">
        stories from people on their coding journey
      </span>
    </h3>
  </div>
  <div class="section-content">
    <div class="featured">
      <a class="episode--link" href="/podcast/learning-ai">
        <div class="episode--featured">
          <div class="episode">
            <header>
              <img src="https://s3.amazonaws.com/codenewbie-assets/medium/matt-eland-headshot.jpg?1716333798" class="episode--image">
            </header>
            <article class="episode--info">
              <p class="episode--info--episode-number">
                <span class="season-number">S27</span>
                <span class="season-episode-number">
                  EP 8
                </span>
              </p>
              <h3 class="episode--info--title">
                Learning AI
              </h3>
              <p class="episode--info--meta-data">
                <span class="episode--info--meta-data--guest-name">
                  Matt Eland
                </span>
              </p>
              <p>
                <span class="episode--info--meta-data--publish-date">
                  05/22/24
                </span>
              </p>
            </article>
          </div>
        </div>
</a>    </div>
    <div class="episodes episode--grid">
        <a class="episode--link" href="/podcast/tech-and-art">
          <div class="episode episode--grid--item">
            <div class="wrapper--grid-item">
              <header>
                <img src="https://s3.amazonaws.com/codenewbie-assets/medium/chrisiheadshot.jpg?1715705839" alt="Chrisiheadshot">
              </header>
              <article class="episode--info">
                <p class="episode--info--episode-number">
                  <span class="season-number">S27</span>
                  <span class="season-episode-number">EP 7</span>
                </p>
                <h3 class="episode--info--title">
                  Tech and Art
                </h3>
                <p class="episode--info--meta-data">
                  <span class="episode--info--meta-data--guest-name">
                    Chris Immel
                  </span>
                  <span class="episode--info--meta-data--publish-date">
                  05/15/24
                  </span>
                </p>
              </article>
            </div>
          </div>
</a>        <a class="episode--link" href="/podcast/the-crossover-of-health-technology-and-art">
          <div class="episode episode--grid--item">
            <div class="wrapper--grid-item">
              <header>
                <img src="https://s3.amazonaws.com/codenewbie-assets/medium/danielbheadshot.jpg?1715101672" alt="Danielbheadshot">
              </header>
              <article class="episode--info">
                <p class="episode--info--episode-number">
                  <span class="season-number">S27</span>
                  <span class="season-episode-number">EP 6</span>
                </p>
                <h3 class="episode--info--title">
                  The Crossover of Health, Technology and Art
                </h3>
                <p class="episode--info--meta-data">
                  <span class="episode--info--meta-data--guest-name">
                    Daniel Bourke
                  </span>
                  <span class="episode--info--meta-data--publish-date">
                  05/08/24
                  </span>
                </p>
              </article>
            </div>
          </div>
</a>        <a class="episode--link" href="/podcast/navigating-the-ai-evolution">
          <div class="episode episode--grid--item">
            <div class="wrapper--grid-item">
              <header>
                <img src="https://s3.amazonaws.com/codenewbie-assets/medium/chelseaheadshot.jpeg?1714495614" alt="Chelseaheadshot">
              </header>
              <article class="episode--info">
                <p class="episode--info--episode-number">
                  <span class="season-number">S27</span>
                  <span class="season-episode-number">EP 5</span>
                </p>
                <h3 class="episode--info--title">
                  Navigating the AI Evolution
                </h3>
                <p class="episode--info--meta-data">
                  <span class="episode--info--meta-data--guest-name">
                    Chelsea Kaufman
                  </span>
                  <span class="episode--info--meta-data--publish-date">
                  05/01/24
                  </span>
                </p>
              </article>
            </div>
          </div>
</a>        <a class="episode--link" href="/podcast/living-the-dream-with-ai">
          <div class="episode episode--grid--item">
            <div class="wrapper--grid-item">
              <header>
                <img src="https://s3.amazonaws.com/codenewbie-assets/medium/robf.jpg?1712164064" alt="Robf">
              </header>
              <article class="episode--info">
                <p class="episode--info--episode-number">
                  <span class="season-number">S27</span>
                  <span class="season-episode-number">EP 4</span>
                </p>
                <h3 class="episode--info--title">
                  Living the Dream with AI
                </h3>
                <p class="episode--info--meta-data">
                  <span class="episode--info--meta-data--guest-name">
                    Rob Frelow
                  </span>
                  <span class="episode--info--meta-data--publish-date">
                  04/03/24
                  </span>
                </p>
              </article>
            </div>
          </div>
</a>        <a class="episode--link" href="/podcast/helping-you-build-machine-learning-products">
          <div class="episode episode--grid--item">
            <div class="wrapper--grid-item">
              <header>
                <img src="https://s3.amazonaws.com/codenewbie-assets/medium/pau.jpg?1711472848" alt="Pau">
              </header>
              <article class="episode--info">
                <p class="episode--info--episode-number">
                  <span class="season-number">S27</span>
                  <span class="season-episode-number">EP 3</span>
                </p>
                <h3 class="episode--info--title">
                  Helping You Build Machine Learning Products
                </h3>
                <p class="episode--info--meta-data">
                  <span class="episode--info--meta-data--guest-name">
                    Pau Labarta Bajo
                  </span>
                  <span class="episode--info--meta-data--publish-date">
                  03/27/24
                  </span>
                </p>
              </article>
            </div>
          </div>
</a>        <a class="episode--link" href="/podcast/the-journey-from-sound-engineer-to-software-engineer">
          <div class="episode episode--grid--item">
            <div class="wrapper--grid-item">
              <header>
                <img src="https://s3.amazonaws.com/codenewbie-assets/medium/1601585440769.jpeg?1710875327" alt="1601585440769">
              </header>
              <article class="episode--info">
                <p class="episode--info--episode-number">
                  <span class="season-number">S27</span>
                  <span class="season-episode-number">EP 2</span>
                </p>
                <h3 class="episode--info--title">
                  The Journey from Sound Engineer to Software Engineer
                </h3>
                <p class="episode--info--meta-data">
                  <span class="episode--info--meta-data--guest-name">
                    Alejandro Aspinwall
                  </span>
                  <span class="episode--info--meta-data--publish-date">
                  03/20/24
                  </span>
                </p>
              </article>
            </div>
          </div>
</a>    </div>
  </div>
  <div class="cta-footer">
    <div class="cta-footer--list">
      <div class="subscribe-options">
        <h5 class="cta-footer--list--title">Subscribe:</h5>
        <a href="https://itunes.apple.com/us/podcast/codenewbie/id919219256?mt=2" target="_blank" rel="noopener" class="subscribe-option--item">
          <img src="https://s3.amazonaws.com/codenewbie-assets/button-apple-podcasts-200x51.png">
        </a>
        <a href="https://play.google.com/music/m/I3cqko7u7zg462fpc5xpenexzb4?t=CodeNewbie" target="_blank" rel="noopener" class="subscribe-option--item">
          <img src="https://s3.amazonaws.com/codenewbie-assets/google-podcasts-badge-200x51.png">
        </a>
        <a href="https://open.spotify.com/show/3rwr9GdoHxMWF8yZhsBzHn?si=haOwpawbSc20PgHyEo7xMA" target="_blank" rel="noopener" class="subscribe-option--item">
          <img src="https://s3.amazonaws.com/codenewbie-assets/logo-spotify-200x51.png">
        </a>
        <a class="subscribe-option--item" href="http://feeds.codenewbie.org/cnpodcast.xml" target="_blank" rel="noopener">
          <h5 class="subscribe-rss">RSS Feed
            <i class="fa fa-rss" aria-hidden="true"></i>
          </h5>
        </a>
      </div>
    </div>
    <div class="cta-footer--main">
      <a class="btn-homepage
      cta-footer--main--btn" href="/podcast">more episodes</a>
    </div>
  </div>
</section>

</div>
<div class="homepage-panel panel--thank-you">
  <section class="thank-you">
  <h3 class="thank-you--title">
    Thank you for supporting our community!
  </h3>
  <div class="thank-you--logos">
    <div class="thank-you--logos--item logos--digital-ocean">
      <a href="http://do.co/codenewbie" target="_blank" rel="noopener">
        <img src="https://codenewbie-assets.s3.amazonaws.com/sponsors/digital+ocean+-+cnp.png">
      </a>
    </div>
    <div class="thank-you--logos--item logos--mongodb">
      <a href="https://www.mongodb.com/cloud/atlas/lp/try3?utm_campaign=codenewbie_atlas&amp;utm_source=codenewbie&amp;utm_medium=podcast" target="_blank" rel="noopener">
        <img src="https://dev-to-uploads.s3.amazonaws.com/i/jiite8p8m6xk3jza9nqx.png">
      </a>
    </div>
    <div class="thank-you--logos--item logos--heroku">
      <a href="http://devcenter.heroku.com/start" target="_blank" rel="noopener">
        <img src="https://codenewbie-assets.s3.amazonaws.com/sponsors/heroku.png">
      </a>
    </div>
    <div class="thank-you--logos--item logos--twilioquest">
      <a href="https://www.twilio.com/quest/download?utm_source=codenewbie&amp;utm_medium=homepage&amp;utm_campaign=podcast" target="_blank" rel="noopener">
        <img src="https://dev-to-uploads.s3.amazonaws.com/i/ysbxdv7608e2rdodtckw.png">
      </a>
    </div>
  </div>
</section>

</div>
<div class="homepage-panel panel--basecs">
  <section class="basecs-homepage">
  <div class="cn-project">
    <div class="cn-project--header">
      <div class="cn-project--info">
        <header>
          <a href="/basecs">
            <img src="https://s3.amazonaws.com/codenewbie-assets/basecs-podcast/basecs+podcast+cover+7.png">
</a>        </header>
        <article>
          <a class="cn-project--title" href="/basecs">basecs podcast</a>
          <p>
          Fun, short episodes teaching you the basics of computer science.
          </p>

          <a class="btn-homepage" href="/basecs">view episodes</a>
        </article>
      </div>
      <div class="cn-project--call-outs">
        <div class="cn-project--call-out basecs-host">
          <div class="basecs-host--image">
            <img src="https://s3.amazonaws.com/codenewbie-assets/viadehi.jpeg">
          </div>
          <div class="basecs-host--title">
            <p>
            <span class="basecs-host--title--name">
              Vaidehi Joshi
            </span>
            <span class="basecs-host--title--role">
              co-host, developer, author
            </span>
            </p>
          </div>
        </div>
        <div class="cn-project--call-out basecs-host">
          <div class="basecs-host--image">
            <img src="https://s3.amazonaws.com/codenewbie-assets/saron.jpg">
          </div>
          <div class="basecs-host--title">
            <p>
            <span class="basecs-host--title--name">
              Saron Yitbarek
            </span>
            <span class="basecs-host--title--role">
              co-host, developer, founder
            </span>
            </p>
          </div>
        </div>
      </div>
    </div>
    <div class="cn-project--content basecs-episodes">
      <div class="basecs-episode--featured">
        <a class="basecs-episode--link" href="/basecs/117">
          <div class="basecs-episode--cover-art">
            <img src="https://s3.amazonaws.com/codenewbie-assets/original/1_5znAu_8mFN8Ihl4C2S0Bxw_2x.jpg?1586801392" alt="1 5znau 8mfn8ihl4c2s0bxw 2x">
          </div>
          <div class="basecs-episode--info">
            <div class="basecs-episode--season-episode">
              <p class="basecs-episode--season-number">
              S9
              </p>
              <p class="basecs-episode--episode-number">
              E8
              </p>
            </div>
            <div class="basecs-episode--season-episode--header">
              <h3>
                <span class="basecs-episode--title">
                  In the end, the code you take is equal to the code you make
                </span>
              </h3>
              <p class="basecs-episode--description">
                It is the end of the Base.cs series, so we answer some of your questions and take a look back at some of our favorite moments!
              </p>
              <p class="basecs-episode--meta-data">
              <span class="basecs-episode--published-on">
                03/25/20
              </span>
              <span class="basecs-episode--length">
                26
              </span>
              </p>
            </div>
          </div>
</a>      </div>
      <div class="basecs-episode--list">
          <a class="basecs-episode--link" href="/basecs/116">
            <div class="basecs-episode">
              <div class="basecs-episode--info">
                <div class="basecs-episode--season-episode">
                  <p class="basecs-episode--season-number">
                  S9
                  </p>
                  <p class="basecs-episode--episode-number">
                  E7
                  </p>
                </div>
                <div class="basecs-episode--season-episode--header">
                  <h3>
                    <span class="basecs-episode--title">
                      This way to translate is le-JIT
                    </span>
                  </h3>
                  <p class="basecs-episode--description">
                  This episode is going to make you want to dance the JIT-ter Bug.
                  </p>
                  <p class="basecs-episode--meta-data">
                  <span class="basecs-episode--published-on">
                    03/18/20
                  </span>
                  <span class="basecs-episode--length">
                    21
                  </span>
                  </p>
                </div>
              </div>
            </div>
</a>          <a class="basecs-episode--link" href="/basecs/115">
            <div class="basecs-episode">
              <div class="basecs-episode--info">
                <div class="basecs-episode--season-episode">
                  <p class="basecs-episode--season-number">
                  S9
                  </p>
                  <p class="basecs-episode--episode-number">
                  E6
                  </p>
                </div>
                <div class="basecs-episode--season-episode--header">
                  <h3>
                    <span class="basecs-episode--title">
                      Two translators, both alike in dignity
                    </span>
                  </h3>
                  <p class="basecs-episode--description">
                  What are you going to choose, compilation or interpretation?
                  </p>
                  <p class="basecs-episode--meta-data">
                  <span class="basecs-episode--published-on">
                    03/11/20
                  </span>
                  <span class="basecs-episode--length">
                    19
                  </span>
                  </p>
                </div>
              </div>
            </div>
</a>          <a class="basecs-episode--link" href="/basecs/114">
            <div class="basecs-episode">
              <div class="basecs-episode--info">
                <div class="basecs-episode--season-episode">
                  <p class="basecs-episode--season-number">
                  S9
                  </p>
                  <p class="basecs-episode--episode-number">
                  E5
                  </p>
                </div>
                <div class="basecs-episode--season-episode--header">
                  <h3>
                    <span class="basecs-episode--title">
                      Paring down our parse trees with AST
                    </span>
                  </h3>
                  <p class="basecs-episode--description">
                  We get into abstract syntax trees, (usually just referred to as an AST), which is really nothing more than a simplified, condensed version of a parse tree.
                  </p>
                  <p class="basecs-episode--meta-data">
                  <span class="basecs-episode--published-on">
                    03/04/20
                  </span>
                  <span class="basecs-episode--length">
                    18
                  </span>
                  </p>
                </div>
              </div>
            </div>
</a>      </div>
    </div>
  </div>
  <div class="cta-footer">
    <div class="cta-footer--list">
      <div class="subscribe-options">
        <h5 class="cta-footer--list--title">Subscribe:</h5>
        <a href="https://itunes.apple.com/us/podcast/base-cs-podcast/id1304168963?mt=2" target="_blank" rel="noopener" class="subscribe-option--item">
          <img src="https://s3.amazonaws.com/codenewbie-assets/button-apple-podcasts-200x51.png">
        </a>
        <a href="https://play.google.com/music/listen?u=0#/ps/Inow7yuwqw7mhiyn5xesh2geve4" target="_blank" rel="noopener" class="subscribe-option--item">
          <img src="https://s3.amazonaws.com/codenewbie-assets/google-podcasts-badge-200x51.png">
        </a>
        <a href="https://open.spotify.com/show/3UFoDk6tc54NTh2NixPuOa" target="_blank" rel="noopener" class="subscribe-option--item">
          <img src="https://s3.amazonaws.com/codenewbie-assets/logo-spotify-200x51+bw.png">
        </a>
        <a class="subscribe-option--item" href="http://feeds.codenewbie.org/basecs_podcast.xml" target="_blank" rel="noopener">
          <h5 class="subscribe-rss">RSS Feed
            <i class="fa fa-rss" aria-hidden="true"></i>
          </h5>
        </a>
      </div>
    </div>
    <div class="cta-footer--main">
      <a class="btn-homepage
      cta-footer--main--btn" href="/basecs">more episodes</a>
  </div>
  </div>
</section>

</div>
<div class="homepage-panel panel--split">
  <div class="panel--split--half panel--codeland">
    <div class="panel--split--half--wrapper">
      <div class="cn-project codeland-homepage">
  <header>
    <a target="blank" href="http://codelandconf.com/">
      <img src="https://s3.amazonaws.com/codenewbie-assets/codeland/codeland+group+photo.jpg">
</a>  </header>
  <article>
    <a class="cn-project--title" target="blank" href="http://codelandconf.com/">Codeland</a>
    <p class="cn-project--description">
    An interactive conference filled with talks, panels, and workshops designed
    for newbies.
    </p>

    <a class="btn-homepage" target="blank" href="http://codelandconf.com/">learn more</a>
  </article>
</div>

    </div>
  </div>
  <div class="panel--split--half panel--cnc">
    <div class="panel--split--half--wrapper">
      <div class="cn-project cnc-homepage">
  <header>
    <a target="blank" href="https://community.codenewbie.org/cnc2022">
      <img src="/assets/cnc-challenge-2022-f94b3bcc89a59de674f32e2049cf490bd2471ca2c69606e7fba0e5896009d188.png" alt="Cnc challenge 2022">
</a>  </header>
  <article>
    <a class="cn-project--title" href="https://community.codenewbie.org/cnc2022">CodeNewbie Challenge</a>
    <p class="cn-project--description">
      Pick a challenge and get weekly missions to help you reach your goal.
    </p>
    <a class="btn-homepage" target="blank" href="https://community.codenewbie.org/cnc2022">view challenges</a>
  </article>
</div>

    </div>
  </div>
</div>
<div class="homepage-panel panel--footer">
  <footer class="about-homepage">
  <div class="about--content">
    <h4 class="about--title">About</h4>
    <p class="about--description">
      CodeNewbie started as a weekly TwitterChat to connect people learning
      to code by <a href="http://twitter.com/saronyitbarek">Saron</a>. Since
      then it's grown into a supportive, international community of people
      learning to code.
      <br>
      <br>
      CodeNewbie is part of the <a href="https://www.forem.com/">Forem</a> family alongside <a href="https://dev.to">DEV</a>.
    </p>
  </div>
  <aside class="about--aside">
    <h4 class="about--aside--title">Connect</h4>
    <ul class="basic-list">
      <li><a href="mailto:[email protected]">Email Us</a></li>
      <li><a href="http://twitter.com/codenewbies" target="_blank" rel="noopener">Follow Us
      @CodeNewbies</a></li>
      <li><a href="https://codenewbie.us8.list-manage.com/subscribe?u=0a92a565e5b5037722c845fdb&amp;id=e99011b442">Subscribe to our newsletter</a></li>
    </ul>
  </aside>


</footer></div>

  <script>
//<![CDATA[

//]]>
</script>

</body></html>