<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://inspirnathan.com/posts/1-welcome</loc></url><url><loc>https://inspirnathan.com/posts/2-media-query-inspector-chrome</loc></url><url><loc>https://inspirnathan.com/posts/3-get-inspired-by-rxjs</loc></url><url><loc>https://inspirnathan.com/posts/4-how-to-slide-up-a-bar-when-user-stops-scrolling</loc></url><url><loc>https://inspirnathan.com/posts/5-taking-screenshots-and-video-on-your-mac</loc></url><url><loc>https://inspirnathan.com/posts/6-get-intellisense-for-html-canvas</loc></url><url><loc>https://inspirnathan.com/posts/7-how-to-log-api-calls</loc></url><url><loc>https://inspirnathan.com/posts/8-template-literals-and-tagged-templates</loc></url><url><loc>https://inspirnathan.com/posts/9-copy-to-clipboard-in-ruby</loc></url><url><loc>https://inspirnathan.com/posts/10-add-a-fixed-button-to-scrollable-element</loc></url><url><loc>https://inspirnathan.com/posts/11-smooth-scrolling</loc></url><url><loc>https://inspirnathan.com/posts/12-babel-tutorial-part-1</loc></url><url><loc>https://inspirnathan.com/posts/13-babel-tutorial-part-2</loc></url><url><loc>https://inspirnathan.com/posts/14-babel-tutorial-part-3</loc></url><url><loc>https://inspirnathan.com/posts/15-quick-command-to-discover-used-ports</loc></url><url><loc>https://inspirnathan.com/posts/16-how-to-setup-virtualbox-for-internet-explorer</loc></url><url><loc>https://inspirnathan.com/posts/17-babel-tutorial-part-4</loc></url><url><loc>https://inspirnathan.com/posts/18-npm-tips-and-tricks</loc></url><url><loc>https://inspirnathan.com/posts/19-how-to-recursively-fetch-files-in-nodejs</loc></url><url><loc>https://inspirnathan.com/posts/20-find-and-replace-with-regex-in-vscode</loc></url><url><loc>https://inspirnathan.com/posts/21-list-ruby-object-methods</loc></url><url><loc>https://inspirnathan.com/posts/22-install-ohmyzsh-with-agnoster-theme</loc></url><url><loc>https://inspirnathan.com/posts/23-iterators-iterables-and-generators</loc></url><url><loc>https://inspirnathan.com/posts/24-more-details-on-generators</loc></url><url><loc>https://inspirnathan.com/posts/25-async-iterables-and-async-generators</loc></url><url><loc>https://inspirnathan.com/posts/26-array-like-objects</loc></url><url><loc>https://inspirnathan.com/posts/27-how-to-use-the-magic-string-library</loc></url><url><loc>https://inspirnathan.com/posts/28-how-to-use-the-merge-source-map-library</loc></url><url><loc>https://inspirnathan.com/posts/29-using-source-map-loader-with-typescript</loc></url><url><loc>https://inspirnathan.com/posts/30-ts-node-tutorial</loc></url><url><loc>https://inspirnathan.com/posts/31-babel-node-tutorial</loc></url><url><loc>https://inspirnathan.com/posts/32-the-alias-command</loc></url><url><loc>https://inspirnathan.com/posts/33-how-to-run-the-android-emulator</loc></url><url><loc>https://inspirnathan.com/posts/34-access-localhost-inside-android-emulator</loc></url><url><loc>https://inspirnathan.com/posts/35-connect-android-device-to-computer-over-wifi-or-cord</loc></url><url><loc>https://inspirnathan.com/posts/36-using-chrome-dev-tools-with-android-device-or-emulator</loc></url><url><loc>https://inspirnathan.com/posts/37-debug-nodejs-apps-with-chrome-dev-tools</loc></url><url><loc>https://inspirnathan.com/posts/38-html5-canvas-api-tutorial-part-1</loc></url><url><loc>https://inspirnathan.com/posts/39-html5-canvas-api-tutorial-part-2</loc></url><url><loc>https://inspirnathan.com/posts/40-html5-canvas-api-tutorial-part-3</loc></url><url><loc>https://inspirnathan.com/posts/41-html5-canvas-api-tutorial-part-4</loc></url><url><loc>https://inspirnathan.com/posts/42-html5-canvas-api-tutorial-part-5</loc></url><url><loc>https://inspirnathan.com/posts/43-html5-canvas-api-tutorial-part-6</loc></url><url><loc>https://inspirnathan.com/posts/44-how-to-become-a-web-developer-in-2021</loc></url><url><loc>https://inspirnathan.com/posts/45-spell-check-in-vscode</loc></url><url><loc>https://inspirnathan.com/posts/46-jsx-autocomplete-with-emmet-in-vscode</loc></url><url><loc>https://inspirnathan.com/posts/47-shadertoy-tutorial-part-1</loc></url><url><loc>https://inspirnathan.com/posts/48-shadertoy-tutorial-part-2</loc></url><url><loc>https://inspirnathan.com/posts/49-shadertoy-tutorial-part-3</loc></url><url><loc>https://inspirnathan.com/posts/50-shadertoy-tutorial-part-4</loc></url><url><loc>https://inspirnathan.com/posts/51-shadertoy-tutorial-part-5</loc></url><url><loc>https://inspirnathan.com/posts/52-shadertoy-tutorial-part-6</loc></url><url><loc>https://inspirnathan.com/posts/53-shadertoy-tutorial-part-7</loc></url><url><loc>https://inspirnathan.com/posts/54-shadertoy-tutorial-part-8</loc></url><url><loc>https://inspirnathan.com/posts/55-shadertoy-tutorial-part-9</loc></url><url><loc>https://inspirnathan.com/posts/56-shadertoy-tutorial-part-10</loc></url><url><loc>https://inspirnathan.com/posts/57-shadertoy-tutorial-part-11</loc></url><url><loc>https://inspirnathan.com/posts/58-shadertoy-tutorial-part-12</loc></url><url><loc>https://inspirnathan.com/posts/59-shadertoy-tutorial-part-13</loc></url><url><loc>https://inspirnathan.com/posts/60-shadertoy-tutorial-part-14</loc></url><url><loc>https://inspirnathan.com/posts/61-snowman-shader-in-shadertoy</loc></url><url><loc>https://inspirnathan.com/posts/62-shadertoy-tutorial-part-15</loc></url><url><loc>https://inspirnathan.com/posts/63-shadertoy-tutorial-part-16</loc></url><url><loc>https://inspirnathan.com/posts/64-shader-resources</loc></url><url><loc>https://inspirnathan.com/posts/65-glow-shader-in-shadertoy</loc></url><url><loc>https://inspirnathan.com/posts/66-largest-value-in-csharp-dictionary</loc></url><url><loc>https://inspirnathan.com/posts/67-capitalize-first-letter-of-string-in-csharp</loc></url><url><loc>https://inspirnathan.com/posts/68-lowercase-first-letter-of-string-in-csharp</loc></url><url><loc>https://inspirnathan.com/posts/69-capitalize-first-letter-of-string-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/70-lowercase-first-letter-of-string-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/71-universal-clipboard</loc></url><url><loc>https://inspirnathan.com/posts/72-default-keyword-in-csharp</loc></url><url><loc>https://inspirnathan.com/posts/73-capitalize-words-using-css</loc></url><url><loc>https://inspirnathan.com/posts/74-falsy-values-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/75-falsy-values-in-ruby</loc></url><url><loc>https://inspirnathan.com/posts/76-get-class-name-in-ruby</loc></url><url><loc>https://inspirnathan.com/posts/77-get-parent-class-name-in-ruby</loc></url><url><loc>https://inspirnathan.com/posts/78-get-class-ancestors-in-ruby</loc></url><url><loc>https://inspirnathan.com/posts/79-print-array-on-one-line-in-ruby</loc></url><url><loc>https://inspirnathan.com/posts/80-p-vs-puts-vs-print-methods</loc></url><url><loc>https://inspirnathan.com/posts/81-callback-functions</loc></url><url><loc>https://inspirnathan.com/posts/82-array-foreach-method-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/83-higher-order-functions</loc></url><url><loc>https://inspirnathan.com/posts/84-array-map-method-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/85-array-filter-method-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/86-array-reduce-method-in-javascript-part-1</loc></url><url><loc>https://inspirnathan.com/posts/87-array-reduce-method-in-javascript-part-2</loc></url><url><loc>https://inspirnathan.com/posts/88-array-reduce-method-in-javascript-part-3</loc></url><url><loc>https://inspirnathan.com/posts/89-array-reduce-method-in-javascript-part-4</loc></url><url><loc>https://inspirnathan.com/posts/90-array-reduce-method-in-javascript-part-5</loc></url><url><loc>https://inspirnathan.com/posts/91-array-reduce-method-in-javascript-part-6</loc></url><url><loc>https://inspirnathan.com/posts/92-array-flat-method-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/93-array-flatmap-method-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/94-reverse-a-string-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/95-ruby-ranges-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/96-array-every-method-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/97-array-some-method-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/98-rainbow-flag-shader-in-shadertoy</loc></url><url><loc>https://inspirnathan.com/posts/99-rainbow-flag-in-html5-canvas</loc></url><url><loc>https://inspirnathan.com/posts/100-posts-celebration</loc></url><url><loc>https://inspirnathan.com/posts/101-what-is-an-api</loc></url><url><loc>https://inspirnathan.com/posts/102-api-calls-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/103-api-calls-in-nodejs</loc></url><url><loc>https://inspirnathan.com/posts/104-api-calls-with-axios</loc></url><url><loc>https://inspirnathan.com/posts/105-fix-tainted-canvas-from-cross-origin-error</loc></url><url><loc>https://inspirnathan.com/posts/106-color-picker-on-mac</loc></url><url><loc>https://inspirnathan.com/posts/107-color-picker-in-chrome-devtools</loc></url><url><loc>https://inspirnathan.com/posts/108-console-table</loc></url><url><loc>https://inspirnathan.com/posts/109-console-group</loc></url><url><loc>https://inspirnathan.com/posts/110-styling-console-log</loc></url><url><loc>https://inspirnathan.com/posts/111-console-trace</loc></url><url><loc>https://inspirnathan.com/posts/112-console-count</loc></url><url><loc>https://inspirnathan.com/posts/113-console-dir</loc></url><url><loc>https://inspirnathan.com/posts/114-console-log-levels</loc></url><url><loc>https://inspirnathan.com/posts/115-console-time</loc></url><url><loc>https://inspirnathan.com/posts/116-console-clear</loc></url><url><loc>https://inspirnathan.com/posts/117-console-assert</loc></url><url><loc>https://inspirnathan.com/posts/118-copy-objects-in-console</loc></url><url><loc>https://inspirnathan.com/posts/119-debug-functions-in-console</loc></url><url><loc>https://inspirnathan.com/posts/120-inspect-in-console</loc></url><url><loc>https://inspirnathan.com/posts/121-query-event-listeners</loc></url><url><loc>https://inspirnathan.com/posts/122-keys-and-values-shortcuts</loc></url><url><loc>https://inspirnathan.com/posts/123-monitoring-functions-in-console</loc></url><url><loc>https://inspirnathan.com/posts/124-monitoring-events-in-console</loc></url><url><loc>https://inspirnathan.com/posts/125-query-objects-in-console</loc></url><url><loc>https://inspirnathan.com/posts/126-running-profiler-from-console</loc></url><url><loc>https://inspirnathan.com/posts/127-dollar-sign-shortcuts-in-chrome-devtools</loc></url><url><loc>https://inspirnathan.com/posts/128-multiline-cursors-in-vscode</loc></url><url><loc>https://inspirnathan.com/posts/129-keybindings-in-vscode</loc></url><url><loc>https://inspirnathan.com/posts/130-moving-and-copying-lines-in-vscode</loc></url><url><loc>https://inspirnathan.com/posts/131-open-vscode-from-the-terminal</loc></url><url><loc>https://inspirnathan.com/posts/132-bookmarks-in-vscode</loc></url><url><loc>https://inspirnathan.com/posts/133-fix-authentication-issue-to-azure-artifacts</loc></url><url><loc>https://inspirnathan.com/posts/134-escape-characters-in-yaml-frontmatter</loc></url><url><loc>https://inspirnathan.com/posts/135-symbols-in-vscode</loc></url><url><loc>https://inspirnathan.com/posts/136-array-at-method-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/137-for-in-loop-and-enumerable-properties</loc></url><url><loc>https://inspirnathan.com/posts/138-for-in-loop-vs-for-of-loop</loc></url><url><loc>https://inspirnathan.com/posts/139-iterating-through-arrays-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/140-iterating-through-objects-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/141-object-fromentries-method-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/142-fix-intellisense-with-unity-csharp-scripts</loc></url><url><loc>https://inspirnathan.com/posts/143-add-ruby-intellisense-in-vscode</loc></url><url><loc>https://inspirnathan.com/posts/144-debug-ruby-in-vscode</loc></url><url><loc>https://inspirnathan.com/posts/145-debug-ruby-on-rails-in-vscode</loc></url><url><loc>https://inspirnathan.com/posts/146-debug-ruby-on-rails-in-chrome</loc></url><url><loc>https://inspirnathan.com/posts/147-debug-ruby-on-rails-in-docker</loc></url><url><loc>https://inspirnathan.com/posts/148-how-to-test-single-file-with-jest</loc></url><url><loc>https://inspirnathan.com/posts/149-math-expression-parser-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/150-reverse-polish-notation-evaluator-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/151-shunting-yard-algorithm-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/152-evaluating-math-expressions-with-shunting-yard-algorithm</loc></url><url><loc>https://inspirnathan.com/posts/153-math-expression-tokenizer-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/154-shunting-yard-algorithm-with-tokenizer</loc></url><url><loc>https://inspirnathan.com/posts/155-handling-unary-operations-with-shunting-yard-algorithm</loc></url><url><loc>https://inspirnathan.com/posts/156-abstract-syntax-trees-with-shunting-yard-algorithm</loc></url><url><loc>https://inspirnathan.com/posts/157-parser-generators-for-math-expressions</loc></url><url><loc>https://inspirnathan.com/posts/158-how-to-use-syntax-cli-parser-generator</loc></url><url><loc>https://inspirnathan.com/posts/159-how-to-build-lr-parser-for-math-expressions</loc></url><url><loc>https://inspirnathan.com/posts/160-how-to-build-ll-parser-for-math-expressions</loc></url><url><loc>https://inspirnathan.com/posts/161-peg-parser-for-math-expressions-with-peggy</loc></url><url><loc>https://inspirnathan.com/posts/162-recursive-descent-parser-for-math-expressions-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/163-abstract-syntax-trees-with-recursive-descent-parser</loc></url><url><loc>https://inspirnathan.com/posts/164-pratt-parser-for-math-expressions-in-javascript</loc></url><url><loc>https://inspirnathan.com/posts/165-abstract-syntax-trees-with-pratt-parser</loc></url><url><loc>https://inspirnathan.com/posts/166-small-programming-language-with-pratt-parser-using-javascript</loc></url><url><loc>https://inspirnathan.com/posts/167-abstract-syntax-trees-for-custom-programming-language</loc></url><url><loc>https://inspirnathan.com/posts/168-math-expression-parser-series-conclusion</loc></url><url><loc>https://inspirnathan.com/posts/169-website-redesign</loc></url><url><loc>https://inspirnathan.com/posts/170-interactive-hexagon-grid-tutorial-part-1</loc></url><url><loc>https://inspirnathan.com/posts/171-interactive-hexagon-grid-tutorial-part-2</loc></url><url><loc>https://inspirnathan.com/posts/172-interactive-hexagon-grid-tutorial-part-3</loc></url><url><loc>https://inspirnathan.com/posts/173-interactive-hexagon-grid-tutorial-part-4</loc></url><url><loc>https://inspirnathan.com/posts/174-interactive-hexagon-grid-tutorial-part-5</loc></url><url><loc>https://inspirnathan.com/posts/175-interactive-hexagon-grid-tutorial-part-6</loc></url><url><loc>https://inspirnathan.com/posts/176-interactive-hexagon-grid-tutorial-part-7</loc></url></urlset>