<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Tutorial on thisDaveJ</title><link>https://thisdavej.com/tags/tutorial/</link><description>Recent articles on thisDaveJ.com</description><lastBuildDate>Wed, 07 Sep 2022 03:47:00 +0000</lastBuildDate><atom:link href="https://thisdavej.com/tags/tutorial/index.xml" rel="self" type="application/rss+xml"/><item><title>Elevating the Developer Experience: My Top 10 VS Code Extensions</title><link>https://thisdavej.com/elevating-the-developer-experience-my-top-10-vs-code-extensions/</link><pubDate>Sat, 30 May 2026 10:04:58 -0700</pubDate><guid>https://thisdavej.com/elevating-the-developer-experience-my-top-10-vs-code-extensions/</guid><description>&lt;p&gt;Visual Studio Code (VS Code) has become an absolute cornerstone as a tool in modern software development. It is fast, highly customizable, and hits the perfect sweet spot between a lightweight text editor and a full-featured IDE. What truly sets VS Code apart, however, is its massive ecosystem of community-driven tools.&lt;/p&gt;
&lt;h2 id="what-is-a-vs-code-extension"&gt;What is a VS Code Extension?&lt;/h2&gt;
&lt;p&gt;At its core, a VS Code extension is a modular add-on that injects new features, syntax highlighting, themes, or language support directly into the editor. Instead of forcing bloated features onto every user, VS Code lets you build a personalized development environment tailored perfectly to your specific workflow.&lt;/p&gt;</description></item><item><title>Copy Table in Excel and Paste as a Markdown Table</title><link>https://thisdavej.com/copy-table-in-excel-and-paste-as-a-markdown-table/</link><pubDate>Thu, 08 May 2025 06:53:58 -0700</pubDate><guid>https://thisdavej.com/copy-table-in-excel-and-paste-as-a-markdown-table/</guid><description>&lt;p&gt;Easily create Markdown tables by copying data from Excel or Google Sheets and pasting it into the &lt;a href="#input" &gt;text box below&lt;/a&gt; using &lt;em&gt;Ctrl+V&lt;/em&gt;. Alternatively, &lt;span style="color: green;"&gt;as a new feature&lt;/span&gt;, paste a Markdown table to convert it to Excel/Google Sheets format.&lt;/p&gt;
&lt;p&gt;The result is automatically copied to your clipboard and ready to use.&lt;a id="input"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;style&gt;
textarea {
width: 600px;
height: 300px;
}
&lt;/style&gt;
&lt;style&gt;
#editor {
width: 750px;
height: 300px;
font-family: monospace;
white-space: pre;
overflow-x: auto;
overflow-y: auto;
resize: none;
}
noscript p {
color: red;
}
&lt;/style&gt;
&lt;body&gt;&lt;textarea id="editor" wrap="off"&gt;&lt;/textarea&gt;
&lt;script src="https://thisdavej.com/js/site/copy-excel-markdown.min.js"&gt;&lt;/script&gt;
&lt;noscript&gt;
&lt;p&gt; Error: This tool requires JavaScript to function&lt;/p&gt;</description></item><item><title>batteryinfo: A Rust-Powered Python Package for Laptop Battery Monitoring</title><link>https://thisdavej.com/batteryinfo-a-rust-powered-python-package-for-laptop-battery-monitoring/</link><pubDate>Tue, 29 Apr 2025 18:04:12 -0700</pubDate><guid>https://thisdavej.com/batteryinfo-a-rust-powered-python-package-for-laptop-battery-monitoring/</guid><description>Curious about my laptop’s battery details and unsatisfied with the limited info most tools provide, I built batteryinfo, a cross-platform Python package using Rust, which lets Python developers access comprehensive battery stats like state, capacity, voltage, and much more.</description></item><item><title>How to replicate find -execdir behavior using fd</title><link>https://thisdavej.com/how-to-replicate-find-execdir-behavior-using-fd/</link><pubDate>Tue, 22 Apr 2025 17:24:42 -0700</pubDate><guid>https://thisdavej.com/how-to-replicate-find-execdir-behavior-using-fd/</guid><description>&lt;p&gt;While &lt;code&gt;find&lt;/code&gt; is a powerful Linux command-line tool for file searching, its syntax can be verbose. &lt;code&gt;fd&lt;/code&gt; offers a more user-friendly and faster alternative. In my previous article on &lt;a href="https://thisdavej.com/freeing-up-gigabytes-reclaiming-disk-space-from-rust-cargo-builds" &gt;Freeing Up Gigabytes: Reclaiming Disk Space from Rust Cargo Builds&lt;/a&gt;, I shared an option for cleaning Rust build artifacts using &lt;code&gt;find -execdir&lt;/code&gt; to invoke &lt;code&gt;cargo clean&lt;/code&gt; from the root directory of each Rust project. This post explores how to achieve a similar workflow using &lt;code&gt;fd&lt;/code&gt;, which lacks a direct equivalent to &lt;code&gt;-execdir&lt;/code&gt;, and the workarounds involved.&lt;/p&gt;</description></item><item><title>Freeing Up Gigabytes: Reclaiming Disk Space from Rust Cargo Builds</title><link>https://thisdavej.com/freeing-up-gigabytes-reclaiming-disk-space-from-rust-cargo-builds/</link><pubDate>Thu, 17 Apr 2025 18:35:57 -0700</pubDate><guid>https://thisdavej.com/freeing-up-gigabytes-reclaiming-disk-space-from-rust-cargo-builds/</guid><description>Rust's powerful build tool, Cargo, often silently accumulates significant disk space within its target directories, which house the compiled build artifacts of its projects. This article delves into various techniques for reclaiming this disk space. By choosing techniques that align with priorities, Rust developers can effectively balance disk usage and efficient build processes.</description></item><item><title>Packaging Python Command-Line Apps the Modern Way with uv</title><link>https://thisdavej.com/packaging-python-command-line-apps-the-modern-way-with-uv/</link><pubDate>Tue, 08 Apr 2025 19:02:41 -0700</pubDate><guid>https://thisdavej.com/packaging-python-command-line-apps-the-modern-way-with-uv/</guid><description>In this article, I explore how to use uv to build and package Python command-line applications effectively. I demonstrate the step-by-step process of setting up a project, initializing a new CLI app, and managing dependencies with uv, all while using a dictionary API as an example. The focus is on building a professional-grade application that can be distributed as a Python wheel for easy installation via local sharing, PyPI, or GitHub.</description></item><item><title>HTML Bullet Point Maker - Convert Text to ul Lists</title><link>https://thisdavej.com/html-bullet-point-maker-convert-text-to-ul-lists/</link><pubDate>Sat, 05 Apr 2025 11:15:59 -0700</pubDate><guid>https://thisdavej.com/html-bullet-point-maker-convert-text-to-ul-lists/</guid><description>&lt;p&gt;This tool is designed to do one thing and hopefully do one thing well 😀: to quickly and easily convert your text into HTML unordered lists (&lt;code&gt;&amp;lt;ul&amp;gt;&lt;/code&gt;). Simply paste your text into the &lt;a href="#input" &gt;text box below&lt;/a&gt;, and you&amp;rsquo;ll receive a cleanly formatted HTML unordered list for displaying bullet points in HTML. Here are the steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Copy (Ctrl+C) your text.&lt;/strong&gt; Copy the list you want to convert from any word processor (Microsoft Word, Google Docs, Apple Pages), text editor (like Notepad, vim, etc.), or other source. The tool understands various input formats, including text with sub-bullets (see &lt;a href="#supported-input-formats" &gt;supported input formats&lt;/a&gt; below).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Paste (Ctrl+V) into the text box.&lt;/strong&gt; Your bulleted text will be instantly transformed into HTML. As a bonus, the generated HTML code is &lt;strong&gt;automatically copied to your clipboard&lt;/strong&gt;, ready to be pasted wherever you need it. &lt;a id="input"&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;style&gt;
textarea {
width: 600px;
height: 300px;
}
&lt;/style&gt;
&lt;style&gt;
#editor {
width: 750px;
height: 300px;
font-family: monospace;
white-space: pre;
overflow-x: auto;
overflow-y: auto;
resize: none;
}
noscript p {
color: red;
}
&lt;/style&gt;
&lt;body&gt;&lt;textarea id="editor" wrap="off"&gt;&lt;/textarea&gt;
&lt;script src="https://thisdavej.com/js/site/bullets-to-html.min.js"&gt;&lt;/script&gt;
&lt;noscript&gt;
&lt;p&gt; Error: This tool requires JavaScript to function&lt;/p&gt;</description></item><item><title>Share Python Scripts Like a Pro: uv and PEP 723 for Easy Deployment</title><link>https://thisdavej.com/share-python-scripts-like-a-pro-uv-and-pep-723-for-easy-deployment/</link><pubDate>Tue, 25 Mar 2025 19:34:10 -0700</pubDate><guid>https://thisdavej.com/share-python-scripts-like-a-pro-uv-and-pep-723-for-easy-deployment/</guid><description>Sharing single-file Python scripts with external dependencies is now easy thanks to uv and PEP 723, which enable embedding dependency metadata directly within scripts. This approach eliminates the need for complex setup tools like requirements.txt or package managers, making script distribution and execution seamless and simplifying deployment while maintaining flexibility and efficiency.</description></item><item><title>Beginner’s Guide to Installing Node.js on a Raspberry Pi</title><link>https://thisdavej.com/beginners-guide-to-installing-node-js-on-a-raspberry-pi/</link><pubDate>Wed, 07 Sep 2022 03:47:00 +0000</pubDate><guid>https://thisdavej.com/beginners-guide-to-installing-node-js-on-a-raspberry-pi/</guid><description>This guide helps beginners set up a Raspberry Pi—whether to run Node.js or just for general use. It covers installing Raspberry Pi OS (including flashing the image, prepping hardware, and configuring headless operation), updating the OS, setting up remote connections like Samba, and installing Node.js via NodeSource's repository.</description></item><item><title>Using jq and curl to Wrangle JSON Arrays from the Terminal</title><link>https://thisdavej.com/using-jq-and-curl-to-wrangle-json-arrays-from-the-terminal/</link><pubDate>Tue, 28 Jan 2020 14:35:17 +0000</pubDate><guid>https://thisdavej.com/using-jq-and-curl-to-wrangle-json-arrays-from-the-terminal/</guid><description>In this tutorial, I explore how to use jq and curl to query a web service for JSON objects that contain embedded arrays, specifically focusing on weather station data. The process involves creating scripts to fetch data, filter JSON output, and invoke commands based on the elements within the arrays, allowing for dynamic retrieval of sensor values. By the end, I demonstrate how to efficiently process both single and multiple JSON objects, showcasing jq's powerful capabilities for transforming and manipulating JSON data directly from the terminal.</description></item><item><title>Consuming Web API JSON Data Using curl and jq</title><link>https://thisdavej.com/consuming-web-api-json-data-using-curl-and-jq/</link><pubDate>Fri, 20 Dec 2019 16:47:00 +0000</pubDate><guid>https://thisdavej.com/consuming-web-api-json-data-using-curl-and-jq/</guid><description>I explore curl and jq in bash to consume and process JSON Web API data. The article covers setting up a Linux environment, using curl to retrieve JSON data from a weather microservice, and then using jq to format, filter, and sort that data. It additionally goes over retrieving single and multiple attributes, working with JSON arrays, and using conditional logic within jq to refine the output. The article also demonstrates how to retrieve data from a weather forecast API which returns an array of JSON objects.</description></item><item><title>Web Scraping with Google Sheets: The Definitive Guide</title><link>https://thisdavej.com/web-scraping-with-google-sheets-the-definitive-guide/</link><pubDate>Tue, 04 Jun 2019 13:36:12 +0000</pubDate><guid>https://thisdavej.com/web-scraping-with-google-sheets-the-definitive-guide/</guid><description>I explain how to scrape data from web pages and display it in Google Sheets. This tutorial covers using built-in functions like IMPORTHTML and IMPORTXML for extracting data from HTML tables, lists, and XML feeds, along with IMPORTDATA for CSV/TSV data. It also demonstrates how to create custom JavaScript functions for more complex scraping tasks, including examples for retrieving gas prices and biographical data</description></item><item><title>Three Ways to Build Dynamic Web APIs using PHP</title><link>https://thisdavej.com/three-ways-to-build-dynamic-web-apis-using-php/</link><pubDate>Tue, 14 May 2019 15:10:57 +0000</pubDate><guid>https://thisdavej.com/three-ways-to-build-dynamic-web-apis-using-php/</guid><description>In this article, I explore three effective methods for building dynamic Web APIs using PHP, a popular server-side programming language. The first method involves using string replacement to create a JSON response, while the second utilizes PHP associative arrays combined with JSON encoding for a more structured approach. The third method introduces a custom function, ioTSimulator, which generates simulated IoT sensor readings in JSON format. By setting up a local PHP development environment and employing these techniques, developers can create robust APIs that dynamically update data, making PHP a versatile tool for various web applications.</description></item><item><title>Fetching, Filtering, and Sorting JSON APIs in Google Sheets: The Missing Functions</title><link>https://thisdavej.com/fetching-filtering-and-sorting-json-apis-in-google-sheets-the-missing-functions/</link><pubDate>Tue, 23 Apr 2019 13:21:03 +0000</pubDate><guid>https://thisdavej.com/fetching-filtering-and-sorting-json-apis-in-google-sheets-the-missing-functions/</guid><description>This article provides a guide to adding custom functions to Google Sheets for improved JSON Web API interaction. It includes code and examples for fetching, filtering, and sorting data. I explain the installation, template usage for data extraction, filter application, and data sorting by specified fields.</description></item><item><title>Add Emoji to your Node Projects with node-emoji ✨</title><link>https://thisdavej.com/add-emoji-to-your-node-projects-with-node-emoji/</link><pubDate>Tue, 19 Feb 2019 14:24:02 +0000</pubDate><guid>https://thisdavej.com/add-emoji-to-your-node-projects-with-node-emoji/</guid><description>As a Node developer, I explore how to enhance applications with the node-emoji package, adding a fun and engaging element to our projects. The article guides through setting up a Node.js environment, displaying emojis in the console, and creating a command-line interface (CLI) application that emojifies text. It also covers saving emoji text to the clipboard and expanding the CLI to read from standard input. Finally, I demonstrate building an interactive emoji picker that allows users to search for and select emojis, making the process of incorporating emojis into applications both practical and enjoyable.</description></item><item><title>How to Host a Raspberry Pi Web Server on the Internet with ngrok</title><link>https://thisdavej.com/how-to-host-a-raspberry-pi-web-server-on-the-internet-with-ngrok/</link><pubDate>Tue, 29 Jan 2019 16:24:42 +0000</pubDate><guid>https://thisdavej.com/how-to-host-a-raspberry-pi-web-server-on-the-internet-with-ngrok/</guid><description>To host a Raspberry Pi web server on the Internet using ngrok, I guide readers through creating a simple Node.js web server with the http-server npm module and then making it accessible online. After setting up the server, I explain how to install ngrok to tunnel HTTP traffic from the local server to the public Internet, allowing access via a unique URL. Additionally, I introduce the ngrok-notify npm package to automate the process of sending the ngrok URL via email whenever the server restarts. Finally, I demonstrate how to use pm2 to ensure both the web server and ngrok tunnel run continuously, even after reboots, providing a robust solution for remote access.</description></item><item><title>Creating a Raspberry Pi Pandora Player with Remote Web Control</title><link>https://thisdavej.com/creating-a-raspberry-pi-pandora-player-with-remote-web-control/</link><pubDate>Tue, 18 Dec 2018 15:02:14 +0000</pubDate><guid>https://thisdavej.com/creating-a-raspberry-pi-pandora-player-with-remote-web-control/</guid><description>In this article, I guide readers through the process of creating a Raspberry Pi-based Pandora music player that can be controlled remotely via a web interface. By leveraging Node.js, the pianobar console player, and the patiobar web interface, this article explains how to set up the system without needing a monitor, keyboard, or mouse, allowing for a seamless music experience while controlling it from a mobile device. The tutorial covers essential steps such as installing necessary packages, configuring the player, and creating scripts for easy start and stop commands, ultimately enabling users to enjoy personalized music effortlessly from their couch.</description></item><item><title>How to install Redis on a Raspberry Pi using Docker</title><link>https://thisdavej.com/how-to-install-redis-on-a-raspberry-pi-using-docker/</link><pubDate>Wed, 12 Dec 2018 14:57:48 +0000</pubDate><guid>https://thisdavej.com/how-to-install-redis-on-a-raspberry-pi-using-docker/</guid><description>As a fan of Redis, I wanted to install the latest version on my Raspberry Pi, but found that the Raspbian package repository only offered an outdated version. To overcome this, I turned to Docker, which allows for easy installation of the latest Redis releases without the hassle of compiling from source. The article details the steps to install Docker on the Raspberry Pi, configure it, and run Redis in a Docker container, providing options for both local and network access, while ensuring the setup is efficient and secure.</description></item><item><title>How to Set up a Firewall for Redis using ufw</title><link>https://thisdavej.com/how-to-set-up-a-firewall-for-redis-using-ufw/</link><pubDate>Tue, 27 Nov 2018 19:20:55 +0000</pubDate><guid>https://thisdavej.com/how-to-set-up-a-firewall-for-redis-using-ufw/</guid><description>In this tutorial, I explain how to set up a firewall for a Redis server running on a Raspberry Pi using ufw, which simplifies the process of managing firewall rules on Debian-based systems. The guide covers installing ufw, configuring default rules to deny incoming traffic while allowing outgoing traffic, and specifically allowing connections for SSH, HTTP, Samba, and Redis. By creating application profiles and testing the firewall with tools like nmap, users can ensure their Redis server is securely accessible only to designated IP addresses, enhancing security against potential password attacks.</description></item><item><title>Using Winston, a versatile logging library for Node.js</title><link>https://thisdavej.com/using-winston-a-versatile-logging-library-for-node-js/</link><pubDate>Fri, 05 Oct 2018 23:24:10 +0000</pubDate><guid>https://thisdavej.com/using-winston-a-versatile-logging-library-for-node-js/</guid><description>In this article, I explore Winston, a versatile logging library for Node.js that can be utilized in various contexts, including web frameworks like Express and IoT applications. I demonstrate how to set up Winston, configure logging levels, and customize log outputs with features such as colorization, timestamps, and file logging. Additionally, I cover advanced functionalities like daily log rotation and adding custom labels to log entries, making Winston a powerful tool for effective logging in Node.js applications.</description></item><item><title>How to Watch for File Changes in Node.js</title><link>https://thisdavej.com/how-to-watch-for-file-changes-in-node-js/</link><pubDate>Tue, 22 May 2018 15:23:40 +0000</pubDate><guid>https://thisdavej.com/how-to-watch-for-file-changes-in-node-js/</guid><description>In this article, I explore how to effectively watch for file changes in Node.js, particularly in the context of an IoT project that logs fish feeding times. I discuss various methods, starting with the built-in fs.watchFile, which is less efficient due to its polling nature, and moving on to fs.watch, which leverages the operating system's capabilities for real-time notifications. To mitigate issues with multiple events firing during file saves, I introduce a debounce function, ultimately demonstrating how to implement a robust solution that can accurately detect meaningful changes in the log file. The insights gained here can be applied to a variety of Node.js projects requiring file monitoring.</description></item><item><title>How to Count Unique Items in JavaScript Arrays</title><link>https://thisdavej.com/how-to-count-unique-items-in-javascript-arrays/</link><pubDate>Tue, 17 Apr 2018 13:51:33 +0000</pubDate><guid>https://thisdavej.com/how-to-count-unique-items-in-javascript-arrays/</guid><description>In this article, I explore how to count unique items in JavaScript arrays, specifically in the context of an IoT project for tracking fish feeding times using various buttons. By reading a log file and creating a JavaScript array of button sources, I demonstrate methods to retrieve distinct elements and count their occurrences using techniques like forEach, reduce, and the Set object. Additionally, I provide alternative command-line solutions for achieving similar results in a Linux environment. Ultimately, the flexibility of JavaScript allows for multiple approaches to effectively count distinct elements, enhancing our understanding of array manipulation.</description></item><item><title>Learn Handlebars with Node.js and Help Freddy’s Fish Too</title><link>https://thisdavej.com/learn-handlebars-with-node-js-and-help-freddys-fish/</link><pubDate>Tue, 03 Apr 2018 13:15:03 +0000</pubDate><guid>https://thisdavej.com/learn-handlebars-with-node-js-and-help-freddys-fish/</guid><description>I go over Handlebars templating with Node.js to create a real-time report for an aquaponics business. The article covers basic Handlebars syntax, including simple identifiers and dot-separated paths, and how to prevent HTML escaping. I also learned about conditional logic using if block helpers and how to separate templates and data into different files. The article further covered iterating through data with each block helpers, simplifying syntax with with block helpers, and creating custom Handlebars helpers for dynamic data retrieval and conditional formatting. Finally, I saw how to integrate all these concepts into a complete report and how to use Handlebars with Express.js.</description></item><item><title>Installing and Upgrading Node.js on Windows the Easy Way</title><link>https://thisdavej.com/install-upgrade-node-js-windows-easy-way/</link><pubDate>Tue, 20 Mar 2018 12:55:49 +0000</pubDate><guid>https://thisdavej.com/install-upgrade-node-js-windows-easy-way/</guid><description>Installing and upgrading Node.js on Windows can be cumbersome, but using Chocolatey, a package manager, simplifies the process significantly. By following a few straightforward steps to install Chocolatey and then using it to install or upgrade Node.js via the command line, we can streamline future updates to just a double-click on a shortcut. This method not only saves time but also eliminates the hassle of manual installations, making it easy to keep Node.js up to date with minimal effort.</description></item><item><title>Using TOML Config Files in Your Node.js Applications</title><link>https://thisdavej.com/using-toml-config-files-in-node-js-applications/</link><pubDate>Tue, 06 Mar 2018 14:43:13 +0000</pubDate><guid>https://thisdavej.com/using-toml-config-files-in-node-js-applications/</guid><description>I explore the TOML configuration file format and how to use it in Node.js applications. The article covers TOML syntax, including key/value pairs, arrays, and tables. I also demonstrated how to read and parse TOML files using the toml package in Node.js, and provided examples of retrieving different data types, such as strings, integers, booleans, and dates. The article further covers more advanced TOML features like inline tables and arrays of tables, and touches upon additional data types and tools for working with TOML files</description></item><item><title>While I napped, we got a new apt – Debian apt command cheat sheet</title><link>https://thisdavej.com/while-i-napped-we-got-a-new-apt-debian-apt-command-cheat-sheet/</link><pubDate>Fri, 02 Mar 2018 10:38:17 +0000</pubDate><guid>https://thisdavej.com/while-i-napped-we-got-a-new-apt-debian-apt-command-cheat-sheet/</guid><description>Awakening to the exciting news of a new "apt" binary in the Debian ecosystem, I share how this streamlined command enhances package management for users of Debian-based systems like Ubuntu and Raspbian. The new "apt" command simplifies common tasks such as updating package lists, searching for packages, and installing or removing software, all while providing a more user-friendly experience with features like progress bars. With just a few essential commands, users can efficiently manage their packages and keep their systems up to date, making this a significant improvement in the Linux command-line experience.</description></item><item><title>Create a Lightweight Raspberry Pi System with Raspbian Lite</title><link>https://thisdavej.com/create-a-lightweight-raspberry-pi-system-with-raspbian-lite/</link><pubDate>Tue, 20 Feb 2018 14:44:29 +0000</pubDate><guid>https://thisdavej.com/create-a-lightweight-raspberry-pi-system-with-raspbian-lite/</guid><description>In this tutorial, I guide readers through the process of creating a lightweight Raspberry Pi system using Raspbian Lite, which significantly reduces resource consumption compared to the standard Raspbian version. By omitting the graphical user interface, Raspbian Lite operates at just 34 MB of RAM, making it ideal for users seeking efficiency. The article details the necessary hardware, step-by-step instructions for writing the Raspbian image to an SD card, and essential configurations to optimize the system for headless operation. This setup is perfect for those who want a streamlined experience while leveraging the power of Raspberry Pi.</description></item><item><title>How to Copy Visual Studio Code with Syntax Highlighting to Other Applications</title><link>https://thisdavej.com/how-to-copy-visual-studio-code-with-syntax-highlighting-to-other-applications/</link><pubDate>Tue, 13 Feb 2018 13:23:13 +0000</pubDate><guid>https://thisdavej.com/how-to-copy-visual-studio-code-with-syntax-highlighting-to-other-applications/</guid><description>In this article, I explain how to copy code with syntax highlighting from Visual Studio Code into various applications like Word, PowerPoint, Outlook, OneNote, and Gmail, ensuring that the formatting remains intact for clear and visually appealing code samples.</description></item><item><title>Using INI Files in Your Node.js Applications for Health and Profit</title><link>https://thisdavej.com/using-ini-files-in-your-node-js-applications-for-health-and-profit/</link><pubDate>Tue, 23 Jan 2018 15:58:44 +0000</pubDate><guid>https://thisdavej.com/using-ini-files-in-your-node-js-applications-for-health-and-profit/</guid><description>In this article, I explore the advantages of using INI files for configuration in Node.js applications, highlighting their simplicity and flexibility compared to JSON and JavaScript formats. By illustrating potential pitfalls of JSON, such as the inability to include comments and the risk of syntax errors, I argue that INI files can prevent costly mistakes in high-stakes environments. The article provides a step-by-step guide on setting up INI files, reading and writing configuration data, and retrieving weather information, ultimately demonstrating how INI files can enhance both the health of applications and the wealth of businesses.</description></item><item><title>Guide to Using Redis with Node.js Released</title><link>https://thisdavej.com/guide-to-using-redis-with-node-js-released/</link><pubDate>Tue, 09 Jan 2018 15:19:54 +0000</pubDate><guid>https://thisdavej.com/guide-to-using-redis-with-node-js-released/</guid><description>I have released a comprehensive guide on using Redis with Node.js, which delves into the installation of Redis, its functionality as a standalone tool, and how to build Node.js applications that effectively interact with it. The guide includes practical examples to enhance understanding and application of these concepts, making it a valuable resource for developers looking to integrate Redis into their projects. You can explore the guide for detailed insights and instructions.</description></item><item><title>Visual Studio Launch Video with My Son and Me</title><link>https://thisdavej.com/visual-studio-launch-video-with-my-son-and-me/</link><pubDate>Tue, 14 Mar 2017 13:41:39 +0000</pubDate><guid>https://thisdavej.com/visual-studio-launch-video-with-my-son-and-me/</guid><description>&lt;p&gt;My son Benjamin (junior in high school) and I received a unique opportunity.  We traveled to Microsoft&amp;rsquo;s headquarters in Redmond to conduct an interview in honor of the launch of Visual Studio 2017, and the 20th anniversary of Visual Studio. One of the main purposes of the interview was to discuss computer programming, the next generation, and how people are using Visual Studio. The interview aired last week during the Visual Studio 2017 launch event.&lt;/p&gt;</description></item><item><title>Do I Need an Umbrella Today? Google Sheets and JavaScript to the Rescue!</title><link>https://thisdavej.com/do-i-need-an-umbrella-today-google-sheets-and-javascript-to-the-rescue/</link><pubDate>Tue, 07 Feb 2017 14:46:43 +0000</pubDate><guid>https://thisdavej.com/do-i-need-an-umbrella-today-google-sheets-and-javascript-to-the-rescue/</guid><description>In this article, I explore how to leverage Google Sheets and JavaScript to create a practical tool that alerts users via email if they need to bring an umbrella based on the day's weather forecast. By utilizing a weather API to retrieve JSON data, I demonstrate how to build custom functions in Google Sheets that assess the likelihood of rain and send notifications accordingly. The process includes setting up a script to fetch weather data, determining if rain is expected, and configuring a time-driven trigger to automate the email alerts, ultimately enhancing situational awareness for those who might forget their umbrellas.</description></item><item><title>Consuming JSON Web Data Using Google Sheets</title><link>https://thisdavej.com/consuming-json-web-data-using-google-sheets/</link><pubDate>Tue, 24 Jan 2017 13:49:10 +0000</pubDate><guid>https://thisdavej.com/consuming-json-web-data-using-google-sheets/</guid><description>&lt;img loading="lazy" class="alignnone size-full wp-image-1319 aligncenter" src="https://thisdavej.com/wp-content/uploads/2017/01/gsheets.webp" alt="article image" width="530" height="277" /&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: This article has been superseded with &lt;a href="https://thisdavej.com/fetching-filtering-and-sorting-json-apis-in-google-sheets-the-missing-functions/" target="_blank" rel="noreferrer noopener" &gt;Fetching, Filtering, and Sorting JSON APIs in Google Sheets: The Missing Functions&lt;/a&gt; which provides a set of Google Sheets functions with additional capabilities.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I’ve said it before, and I’ll say it again.  JSON has become the lingua franca for exchanging data on the web, and we (as developers) need to know how to process JSON data received from RESTful web services so we can be positioned for the present and for the future.&lt;/p&gt;</description></item><item><title>Controlling a Raspberry Pi from a Mobile Device with Bonus Menu Too</title><link>https://thisdavej.com/controlling-a-raspberry-pi-from-a-mobile-device-with-bonus-menu-too/</link><pubDate>Tue, 06 Dec 2016 14:14:19 +0000</pubDate><guid>https://thisdavej.com/controlling-a-raspberry-pi-from-a-mobile-device-with-bonus-menu-too/</guid><description>In this guide, I explore how to control a Raspberry Pi from a mobile device, which is particularly useful for managing a headless setup, such as when listening to music through a connected speaker system. By installing an SSH client on a mobile phone, users can easily connect to their Raspberry Pi and issue commands like shutting it down without needing to physically access the device. Additionally, I provide instructions for creating a user-friendly menu application that simplifies command execution, making it easier to manage the Raspberry Pi remotely. This setup not only enhances convenience but also opens up various possibilities for IoT applications and other projects.</description></item><item><title>Consuming Node.js Microservices Created with Stdlib</title><link>https://thisdavej.com/consuming-node-js-microservices-created-with-stdlib/</link><pubDate>Tue, 29 Nov 2016 14:58:41 +0000</pubDate><guid>https://thisdavej.com/consuming-node-js-microservices-created-with-stdlib/</guid><description>&lt;img loading="lazy" class="size-full wp-image-1174 aligncenter" src="https://thisdavej.com/wp-content/uploads/2016/11/stdlib-consumers.webp" alt="stdlib-consumers" width="530" height="277" /&gt;
&lt;br&gt;
&lt;br&gt;
&lt;p&gt;In our last article, we learned how to &lt;a href="https://thisdavej.com/creating-node-js-microservices-with-ease-using-stdlib/" target="_blank" rel="noreferrer noopener" &gt;create Node.js microservices using Polybit’s stdlib platform&lt;/a&gt;. We created a fabulous (IMHO 🙂 ) GPS service that enabled us to retrieve the name of a city based on its GPS coordinates. Today, we’re going to learn how to consume data returned from this stdlib GPS microservice using several methods. While the information presented here is specific to consuming &lt;a href="https://stdlib.com/" target="_blank" rel="noreferrer noopener" &gt;Polybit stdlib microservices&lt;/a&gt;, many aspects of this article will be generally applicable for consuming Web API JSON data from any http endpoint. Strap on your seatbelts as we embark on a whirlwind tour to learn about consuming JSON data from a variety of contexts…and I’m talking about some serious variety!&lt;/p&gt;</description></item><item><title>Node.js: Playing Sounds to Provide Notifications</title><link>https://thisdavej.com/node-js-playing-sounds-to-provide-notifications/</link><pubDate>Tue, 22 Nov 2016 13:32:21 +0000</pubDate><guid>https://thisdavej.com/node-js-playing-sounds-to-provide-notifications/</guid><description>In this tutorial, I explore how to use Node.js to play sounds for notifications, specifically focusing on creating an alert system for when the International Space Station (ISS) is near. By utilizing the play-sound NPM package, I guide readers through setting up their environment, installing necessary audio players, and writing a simple program that plays a sound until the notification is acknowledged by pressing a key. The final implementation not only plays a sound when the ISS is approaching but also allows users to acknowledge the alert, enhancing the interactivity of the application.</description></item><item><title>Creating Node.js Microservices with Ease Using Stdlib</title><link>https://thisdavej.com/creating-node-js-microservices-with-ease-using-stdlib/</link><pubDate>Tue, 15 Nov 2016 15:32:00 +0000</pubDate><guid>https://thisdavej.com/creating-node-js-microservices-with-ease-using-stdlib/</guid><description>&lt;img loading="lazy" class="size-full wp-image-1089 aligncenter" src="https://thisdavej.com/wp-content/uploads/2016/10/stdlib-creating.webp" alt="stdlib" width="530" height="277" /&gt;
&lt;br&gt;
&lt;br&gt;
&lt;p&gt;Microservices and serverless architectures are all the rage in the software industry. After working with Polybit’s amazing &lt;a href="https://stdlib.com/" target="_blank" rel="noreferrer noopener" &gt;stdlib&lt;/a&gt; platform, I am clearly seeing the value of this promising technology! Today, I will introduce you to stdlib. I encourage you to work alongside me as we leverage stdlib to build a microservice that we can consume in a variety of contexts. Let’s get started with this fabulous technology!&lt;/p&gt;</description></item><item><title>Build an Amazing HTML Editor Using Visual Studio Code</title><link>https://thisdavej.com/build-an-amazing-html-editor-using-visual-studio-code/</link><pubDate>Tue, 01 Nov 2016 12:47:16 +0000</pubDate><guid>https://thisdavej.com/build-an-amazing-html-editor-using-visual-studio-code/</guid><description>This guide explains how to transform Visual Studio Code into a powerful HTML editor by leveraging its built-in features and enhancing them with extensions like HTML Snippets, View in Browser, and HTMLHint. It covers formatting HTML, using Emmet for quick coding shortcuts, previewing pages in real time with tools like BrowserSync, and adding linting for error-checking and code quality. With step-by-step instructions, it ensures a streamlined workflow for creating, previewing, and refining HTML projects efficiently.</description></item><item><title>Upgrading to more recent versions of Node.js on the Raspberry Pi</title><link>https://thisdavej.com/upgrading-to-more-recent-versions-of-node-js-on-the-raspberry-pi/</link><pubDate>Fri, 28 Oct 2016 02:31:23 +0000</pubDate><guid>https://thisdavej.com/upgrading-to-more-recent-versions-of-node-js-on-the-raspberry-pi/</guid><description>Upgrading to more recent versions of Node.js on the Raspberry Pi is straightforward and can also be applied to other Debian-based systems. To upgrade within a major version, simply check your current Node version, update the package list with sudo apt update, and then run sudo apt install nodejs to install the latest version available in that branch. For major version upgrades, use the NodeSource setup script to update the package repository before running the same install command. After completing these steps, verifying the Node version will confirm a successful upgrade.</description></item><item><title>How to Install or Upgrade to Node.js v7 on the Raspberry Pi</title><link>https://thisdavej.com/how-to-install-or-upgrade-to-node-js-v7-on-the-raspberry-pi/</link><pubDate>Tue, 25 Oct 2016 23:01:09 +0000</pubDate><guid>https://thisdavej.com/how-to-install-or-upgrade-to-node-js-v7-on-the-raspberry-pi/</guid><description>Node.js v7 has been released, offering an exciting opportunity for developers to leverage its latest features on the Raspberry Pi, making it ideal for building IoT systems. The installation process is simplified through a package repository hosted by NodeSource, and for those new to Node.js, a beginner's guide is available to help set up the environment. Existing users of Node v6 can easily upgrade to v7 by following updated instructions. Engaging with this version promises a fun and innovative development experience, and additional resources are provided for further learning in the Node.js ecosystem.</description></item><item><title>Node.js: Sending Email Notifications Using Nodemailer and Gmail</title><link>https://thisdavej.com/node-js-sending-email-notifications-using-nodemailer-and-gmail/</link><pubDate>Tue, 11 Oct 2016 13:11:11 +0000</pubDate><guid>https://thisdavej.com/node-js-sending-email-notifications-using-nodemailer-and-gmail/</guid><description>In this tutorial, I explore how to send email notifications using the Nodemailer package in Node.js, specifically leveraging Gmail for testing purposes. The process involves setting up a Node.js application that retrieves data from an API to determine when the International Space Station (ISS) will pass overhead, and then sends an email notification if it's within 30 minutes of our location. I detail the installation of necessary packages, the creation of a general-purpose email module, and the implementation of encryption for Gmail credentials to enhance security. By the end, readers will have a functional system that keeps them informed about the ISS's approach, demonstrating the practical application of Node.js in IoT scenarios.</description></item><item><title>Connecting a Raspberry Pi Using an Ethernet Crossover Cable and Internet Connection Sharing</title><link>https://thisdavej.com/connecting-a-raspberry-pi-using-an-ethernet-crossover-cable-and-internet-connection-sharing/</link><pubDate>Tue, 20 Sep 2016 14:58:53 +0000</pubDate><guid>https://thisdavej.com/connecting-a-raspberry-pi-using-an-ethernet-crossover-cable-and-internet-connection-sharing/</guid><description>In this guide, I explore how to connect a Raspberry Pi to the internet using an Ethernet crossover cable through a Windows machine, particularly useful when away from home networks. The process involves setting up Internet Connection Sharing (ICS) on the Windows device and installing Samba on the Raspberry Pi to facilitate easy communication between the two. By following straightforward steps, including configuring network settings and ensuring both devices are properly connected, users can achieve a reliable connection without the hassle of complex configurations. This method not only simplifies the setup but also enhances the ability to share files and resources seamlessly while on the go.</description></item><item><title>Getting Started with YAML in Node.js using js-yaml</title><link>https://thisdavej.com/getting-started-with-yaml-in-node-js-using-js-yaml/</link><pubDate>Tue, 13 Sep 2016 13:23:20 +0000</pubDate><guid>https://thisdavej.com/getting-started-with-yaml-in-node-js-using-js-yaml/</guid><description>In this tutorial, I explore the advantages of using YAML over JSON in Node.js, highlighting its cleaner syntax, support for comments, and features like anchors and merging that enhance configuration management. By demonstrating how to create and parse YAML files using the js-yaml package, I provide practical examples, including a real-world email configuration system that showcases the power of YAML in organizing data structures efficiently. This approach not only simplifies code maintenance but also allows for more readable and manageable configuration files.</description></item><item><title>Node.js IoT: Logging Data That Is Out of This World</title><link>https://thisdavej.com/node-js-iot-logging-data-that-is-out-of-this-world/</link><pubDate>Tue, 06 Sep 2016 13:26:26 +0000</pubDate><guid>https://thisdavej.com/node-js-iot-logging-data-that-is-out-of-this-world/</guid><description>In this tutorial, I explore how to log data in IoT applications using Node.js, focusing on creating a simple logging system to track the distance from the International Space Station (ISS). By utilizing built-in Node modules and a few external libraries, I demonstrate how to log this data to a CSV file, allowing for easy analysis in spreadsheet software. The tutorial covers setting up a logging directory, implementing conditional logging to track the closest and furthest distances from the ISS, and highlights the importance of logging for future data analysis, whether the sensor is in space or on a desk.</description></item><item><title>Making Interactive Node.js Console Apps That Listen for Keypress Events</title><link>https://thisdavej.com/making-interactive-node-js-console-apps-that-listen-for-keypress-events/</link><pubDate>Tue, 30 Aug 2016 00:51:01 +0000</pubDate><guid>https://thisdavej.com/making-interactive-node-js-console-apps-that-listen-for-keypress-events/</guid><description>In this article, I explore how to create interactive Node.js console applications that can listen for keypress events, enhancing user engagement with real-time feedback. By leveraging the core functionality of Node.js, I demonstrate how to build a simple stock quote application that retrieves and displays stock prices based on user input, without relying on external npm modules. The tutorial covers setting up keypress event listeners, mapping keys to specific stock symbols, and even adding a menu for user guidance, showcasing the potential of console applications in providing a dynamic user experience.</description></item><item><title>Node.js IoT: Tracking the ISS through the Sky</title><link>https://thisdavej.com/node-js-iot-tracking-the-iss-through-the-sky/</link><pubDate>Tue, 16 Aug 2016 13:51:06 +0000</pubDate><guid>https://thisdavej.com/node-js-iot-tracking-the-iss-through-the-sky/</guid><description>In this tutorial, I guide readers through an exciting Node.js IoT project that tracks the International Space Station (ISS) as it orbits the Earth. By utilizing the Open Notify API, we fetch the ISS's current latitude and longitude, and with the help of the 'got' and 'geolib' npm modules, we continuously retrieve and calculate the distance from a specified location on Earth. The project not only demonstrates how to work with APIs and JSON data but also provides a fun way to engage with real-time space data, making it accessible for anyone with a Node.js-capable machine.</description></item><item><title>Node.js IoT – Data Visualization of Sensor Values</title><link>https://thisdavej.com/node-js-iot-data-visualization-of-sensor-values/</link><pubDate>Tue, 12 Jul 2016 19:22:46 +0000</pubDate><guid>https://thisdavej.com/node-js-iot-data-visualization-of-sensor-values/</guid><description>In this article, I explore how to visualize sensor data using Node.js on a Raspberry Pi, moving beyond simple console outputs to create both terminal-based ASCII plots and graphical visualizations. The tutorial guides readers through setting up a CPU load sensor, installing necessary packages like feedgnuplot, and creating scripts to generate real-time plots. By executing commands in the terminal, users can observe CPU load changes visually, enhancing their understanding of data visualization in IoT applications. Future tutorials will expand on these concepts, including web-based visualization methods.</description></item><item><title>Build an Amazing Markdown Editor Using Visual Studio Code and Pandoc</title><link>https://thisdavej.com/build-an-amazing-markdown-editor-using-visual-studio-code-and-pandoc/</link><pubDate>Tue, 28 Jun 2016 13:05:07 +0000</pubDate><guid>https://thisdavej.com/build-an-amazing-markdown-editor-using-visual-studio-code-and-pandoc/</guid><description>In this article, I guide readers through the process of building a powerful Markdown editor using Visual Studio Code and Pandoc, highlighting features like real-time linting and the ability to quickly generate various document formats such as HTML, DOCX, and PDF. The tutorial covers essential steps, including installing VS Code, familiarizing oneself with its built-in Markdown capabilities, adding a Markdown linter for error checking, and configuring the Pandoc extension for document conversion. By the end, readers will have a fully functional Markdown editing environment tailored to their documentation needs, along with tips for enhancing their workflow with additional extensions.</description></item><item><title>Node.js IoT – Create Local Module for CPU Sensor</title><link>https://thisdavej.com/node-js-iot-create-local-module-for-cpu-sensor/</link><pubDate>Tue, 26 Apr 2016 13:10:35 +0000</pubDate><guid>https://thisdavej.com/node-js-iot-create-local-module-for-cpu-sensor/</guid><description>In this article, I explore the process of refactoring a CPU sensor in Node.js by creating a local module for better organization and adherence to the Node.js philosophy of building small, single-purpose modules. The tutorial guides readers through breaking out the CPU load functionality into a separate module, updating the main program to utilize this new module, and simulating an npm module using the npm link command. This approach not only simplifies the main program but also prepares the groundwork for future enhancements, such as real-time data visualization of CPU metrics.</description></item><item><title>Node.js IoT – Build a Cross Platform CPU Sensor</title><link>https://thisdavej.com/node-js-iot-build-a-cross-platform-cpu-sensor/</link><pubDate>Tue, 12 Apr 2016 13:17:03 +0000</pubDate><guid>https://thisdavej.com/node-js-iot-build-a-cross-platform-cpu-sensor/</guid><description>In this tutorial, I guide readers through the process of building a cross-platform CPU sensor using Node.js, which can measure and stream CPU utilization data. The article covers the implementation of a CPU sensor that works on both Raspberry Pi and Windows systems, addressing the challenges posed by the lack of a direct equivalent to UNIX's load average on Windows. By utilizing the windows-cpu npm module, I demonstrate how to create a function that retrieves CPU load data, ensuring compatibility across platforms. The tutorial culminates in a final code example that averages CPU loads for multi-core systems, encouraging readers to test the sensor on their devices and prepare for future enhancements.</description></item><item><title>Node.js Learning through Making – Build a CPU Sensor</title><link>https://thisdavej.com/node-js-learning-through-making-build-a-cpu-sensor/</link><pubDate>Tue, 22 Mar 2016 05:04:21 +0000</pubDate><guid>https://thisdavej.com/node-js-learning-through-making-build-a-cpu-sensor/</guid><description>In this tutorial, I guide readers through the process of building a "CPU Sensor" using Node.js on a Raspberry Pi, emphasizing hands-on learning. The project begins with setting up the development environment in Visual Studio Code and writing a basic logging loop. As we progress, we incorporate the built-in 'os' module to measure CPU load, format the output as a percentage, and create a function to streamline the process. Finally, we stress-test the Raspberry Pi's CPU to observe real-time changes in load, demonstrating the practical application of Node.js in IoT projects.</description></item><item><title>Using Visual Studio Code with a Raspberry Pi (Raspbian)</title><link>https://thisdavej.com/using-visual-studio-code-with-a-raspberry-pi-raspbian/</link><pubDate>Tue, 15 Mar 2016 13:22:38 +0000</pubDate><guid>https://thisdavej.com/using-visual-studio-code-with-a-raspberry-pi-raspbian/</guid><description>In this tutorial, I explore how to effectively use Visual Studio Code for Node.js development on a Raspberry Pi by creating a network file share that allows coding on a Windows machine while executing the code natively on the Pi. The process involves setting up a Samba share on the Raspberry Pi, mapping it as a network drive on Windows, and then using Visual Studio Code to write and run Node.js code seamlessly. This approach leverages the power of a desktop environment while maintaining the ability to interact with the Raspberry Pi's hardware, making it a versatile solution for developers.</description></item><item><title>Visual Studio Code Jumpstart for Node.js Developers</title><link>https://thisdavej.com/visual-studio-code-jumpstart-for-node-js-developers/</link><pubDate>Tue, 15 Mar 2016 13:21:32 +0000</pubDate><guid>https://thisdavej.com/visual-studio-code-jumpstart-for-node-js-developers/</guid><description>Visual Studio Code is a powerful and lightweight code editor that is highly recommended for Node.js development, especially for those eager to utilize the latest ES6 features. The article provides a step-by-step guide on installing VS Code, setting up a project folder, and configuring ESLint for real-time linting to ensure clean and consistent code. It emphasizes the importance of creating a conducive development environment by installing necessary extensions and configuring settings tailored to Node.js projects. By following these instructions, developers can enhance their coding experience and prepare to embark on exciting Node.js projects.</description></item><item><title>Make Your Raspberry Pi Web Server Available on the Internet with Node.js</title><link>https://thisdavej.com/make-your-raspberry-pi-web-server-available-on-the-internet-with-node-js/</link><pubDate>Tue, 08 Mar 2016 04:50:53 +0000</pubDate><guid>https://thisdavej.com/make-your-raspberry-pi-web-server-available-on-the-internet-with-node-js/</guid><description>In this article, I explain how to make a Raspberry Pi web server accessible on the Internet using Node.js and the localtunnel package. By installing localtunnel, users can expose their localhost to the world without the hassle of DNS configuration, allowing for easy testing and sharing of web applications. The process involves logging into the Raspberry Pi, installing localtunnel, running a web server, and then creating a tunnel to make the server publicly available. I also highlight the option to choose a custom subdomain for easier access. Overall, this method provides a straightforward way to showcase projects hosted on a Raspberry Pi.</description></item><item><title>Right click on Windows folder and open with Visual Studio Code</title><link>https://thisdavej.com/right-click-on-windows-folder-and-open-with-visual-studio-code/</link><pubDate>Fri, 04 Mar 2016 22:07:51 +0000</pubDate><guid>https://thisdavej.com/right-click-on-windows-folder-and-open-with-visual-studio-code/</guid><description>For Windows users who love Visual Studio Code for Node.js development, adding a right-click context menu option to open folders as VS Code projects can significantly streamline the workflow. By creating a simple registry file and merging it with the Windows Registry, users can easily access the "Open Folder as VS Code Project" option directly from Windows Explorer. This enhancement not only saves time but also makes coding more enjoyable, allowing for a smoother transition between file management and coding tasks.</description></item><item><title>Create a Web Server in Node without any Code</title><link>https://thisdavej.com/create-a-web-server-in-node-without-any-code/</link><pubDate>Thu, 03 Mar 2016 15:28:15 +0000</pubDate><guid>https://thisdavej.com/create-a-web-server-in-node-without-any-code/</guid><description>In this tutorial, I guide readers through the process of creating a simple web server on a Raspberry Pi using Node.js without writing any code. By installing the http-server package via npm, users can easily serve static files from their device. The steps include connecting to the Raspberry Pi, creating an HTML file, and launching the server with a single command, allowing access from other machines on the network. This setup not only facilitates file sharing but also serves as a practical learning tool for HTML and IoT projects.</description></item><item><title>Node Newbie Error – NPM Refusing to Install Package as a Dependency of Itself</title><link>https://thisdavej.com/node-newbie-error-npm-refusing-to-install-package-as-a-dependency-of-itself/</link><pubDate>Tue, 23 Feb 2016 21:36:59 +0000</pubDate><guid>https://thisdavej.com/node-newbie-error-npm-refusing-to-install-package-as-a-dependency-of-itself/</guid><description>I faced a frustrating issue while trying to install the winston npm module in a project directory named "winston," which led to an error stating that npm refuses to install a package as a dependency of itself. The solution was simple: by renaming the project to "winston-test" in the package.json file, the installation proceeded without any problems, allowing me to successfully utilize the logging capabilities of the winston module.</description></item><item><title>Solution for Can’t Ping Raspberry Pi Hostname on the Network</title><link>https://thisdavej.com/solution-for-cant-ping-raspberry-pi-hostname-on-the-network/</link><pubDate>Tue, 23 Feb 2016 21:36:04 +0000</pubDate><guid>https://thisdavej.com/solution-for-cant-ping-raspberry-pi-hostname-on-the-network/</guid><description>I encountered a common issue while preparing a beginner's tutorial for installing Node.js on a Raspberry Pi: the inability to ping the device's hostname from a Windows machine. Instead of relying on static IP addresses or complex networking configurations, I found that installing Samba on the Raspberry Pi allows it to broadcast its hostname, making it discoverable on the network. After installing Samba, I could easily ping the Raspberry Pi using its hostname, eliminating the need to remember or hard code its IP address, thus simplifying the connection process for users.</description></item><item><title>Learning through Making – Getting Started with Node.js</title><link>https://thisdavej.com/learning-through-making-getting-started-with-node-js/</link><pubDate>Thu, 18 Feb 2016 15:10:58 +0000</pubDate><guid>https://thisdavej.com/learning-through-making-getting-started-with-node-js/</guid><description>In this post, I introduce the "Learning through Making" series, focusing on getting started with Node.js, an open-source runtime environment that enables the development of server-side applications using JavaScript. The article outlines the installation process for Node on Windows and Linux, emphasizing the importance of using the Current version for access to modern features. I provide a brief demonstration of Node's capabilities through its REPL, showcasing basic operations and array manipulation. The next steps involve setting up Node on a Raspberry Pi and exploring the npm community to build a functional web server.</description></item><item><title>Launching a Windows Command Prompt in a Folder of Your Choice</title><link>https://thisdavej.com/launching-a-windows-command-prompt-in-a-folder-of-your-choice/</link><pubDate>Mon, 15 Feb 2016 14:44:34 +0000</pubDate><guid>https://thisdavej.com/launching-a-windows-command-prompt-in-a-folder-of-your-choice/</guid><description>Launching a Windows command prompt in a specific folder can be streamlined using a simple shortcut in Windows Explorer. Instead of navigating through directories with the cd command, you can easily open a command prompt at your desired location by clicking to the right of the address bar to copy the current file path, then typing cmd . and hitting enter. This method saves time and makes it more convenient to run commands directly in the folder you are working in, enhancing productivity.</description></item></channel></rss>