CoderOasis
  • Home
  • About
  • Topics
  • Programming
  • WebDev
  • Cybersecurity
  • Software
  • SysAdmin
Sign in Subscribe
What is Node.JS? Using JavaScript without the Browser
Web Development

What is Node.JS? Using JavaScript without the Browser

Node.js took the V8 engine out of Chrome and ran it on a server. That sounds like a small change. What it actually did was flip how developers think about I/O — and spawn an ecosystem of two million packages.
07 Jul 2025 6 min read
JavaScript vs TypeScript: Which One Should You Actually Use?
Web Development

JavaScript vs TypeScript: Which One Should You Actually Use?

TypeScript is JavaScript with types. That's the short answer. The real answer involves a friend who was right about something I didn't want to hear, a production bug that types would have caught immediately, and the slow realization that the compiler was never the enemy.
04 Jul 2025 5 min read
What is TypeScript? Why I Finally Stopped Fighting the Type System
Web Development

What is TypeScript? Why I Finally Stopped Fighting the Type System

TypeScript is JavaScript with types. That's the short answer. The real answer involves a friend who was right about something I didn't want to hear, a production bug that types would have caught immediately, and the slow realization that the compiler was never the enemy.
02 Jul 2025 6 min read
What is JavaScript? From Browser Scripts to Full-Stack Development
Web Development

What is JavaScript? From Browser Scripts to Full-Stack Development

JavaScript is the programming language that runs the web. Every interactive element you see on a website – dropdown menus, form validations, dynamic content updates, animations – is powered by JavaScript. It's the only programming language that runs natively in web browsers, making it one of the most widely used
30 Jun 2025 12 min read
Java 22: The Big Update for Minecraft &  Enterprise
Software Development

Java 22: The Big Update for Minecraft & Enterprise

The newest release of Java marks a strategic turning point for the Java Virtual Machine (JVM). While it is not a Long-Term Support (LTS) release like Java 21, it introduces architectural refinements that solve the last mile of latency problems for high-performance applications. For those of us managing Minecraft infrastructure
23 Mar 2024 3 min read
Understanding Why PassKeys will Replace Passwords
Cybersecurity

Understanding Why PassKeys will Replace Passwords

First, allow me to start off with that I am absolutely loving using Passkeys to login into CloudFlare, Stripe, and other important services that I use to run CoderOasis. This should of been a thing a few years ago – maybe all the way back in 2016 or so. The growth
30 Jun 2023 5 min read
Parallelizing Java Streams with Virtual Threads: Building vtstream
Programming

Parallelizing Java Streams with Virtual Threads: Building vtstream

You know what's funny about parallelStream() in Java? Everyone acts like it's this magic performance switch. Just slap .parallel() on your stream and suddenly your code is running on all your CPU cores, right? Wrong. Or at least, not in the way you'd want.
26 Jun 2023 13 min read
Capturing Garbage Collection Traces in NodeJS Applications
Software Development

Capturing Garbage Collection Traces in NodeJS Applications

Garbage Collection (GC) is a crucial aspect of memory management in any NodeJS application. When an application is managed efficiently, it ensures smooth operation and optimal performance. However, when there is inefficient garbage collection, it can cause performance issues, leading to application slowdowns and a degraded user experience. Analyzing the
17 Jun 2023 7 min read
Guide to Enums in the Python Programming Language
Programming

Guide to Enums in the Python Programming Language

Enumerations (Enums) provide a powerful way to represent a set of named values. Enums bring clarity, maintainability, and readability to code by replacing numeric or string constants with more meaningful named constants. The most common way I see people use enums is in roles in a web application such as
09 Jun 2023 3 min read
Implementing RSA from Scratch in JavaScript
Cryptography

Implementing RSA from Scratch in JavaScript

Please note that it is essential for me to emphasize that the code and techniques presented here are intended solely for educational purposes and should never be employed in real-world applications without careful consideration and expert guidance. At the same time, understanding the principles of RSA cryptography and exploring various
02 Jun 2023 3 min read
Python's async/await: How It Actually Works and Why You Need It
Programming

Python's async/await: How It Actually Works and Why You Need It

asyncio isn't magic. It's a while loop that checks a queue. Once you understand the event loop model, async/await stops being confusing and starts being the most useful tool in your Python kit. Here's the mental model, the real code, and the mistakes that will ruin your day.
29 May 2023 13 min read
Understanding Linux's True and False Commands
Linux

Understanding Linux's True and False Commands

True and False are the most common concepts in all forms of computing. They’re so highly critical to Boolean logic, but did you know that true and false are also even commands on Linux? There is a simple explanation. This is that the true command generates an exit code
25 May 2023 3 min read
Async Timeouts with CompletableFuture: Fixing Blocking Java Code the Right Way
Programming

Async Timeouts with CompletableFuture: Fixing Blocking Java Code the Right Way

1,000 threads. All of them blocked on future.get(). That's the production nightmare that forced a full rewrite — and the journey through reactive callbacks, exception swallowing pitfalls, and finally a clean within() utility that handles timeouts without giving up the async model.
21 May 2023 13 min read
Implementing Virtual Threads in Java Streams
Software Development Featured

Implementing Virtual Threads in Java Streams

In the realm of software development, efficiently handling large datasets is crucial, especially with the proliferation of multicore processors. The Java Stream interface revolutionized the way collections are managed by supporting both sequential and parallel operations. However, harnessing the full potential of modern processors while maintaining the simplicity of the
19 May 2023 5 min read
Lets Build a Web Scraper in PHP and Python
Web Development

Lets Build a Web Scraper in PHP and Python

How many total websites do you think there is on the internet? According to recent estimates, there is around 1.10 billion websites. This is also with new websites being added and old websites being removed everyday all the time. I doubt any of us can consider how much data
03 May 2023 4 min read
Implementing Your Own Garbage Collector in Java: Memory Allocation, Reference Tracking, and GC Algorithms
Programming Featured

Implementing Your Own Garbage Collector in Java: Memory Allocation, Reference Tracking, and GC Algorithms

This guide walks through designing a fixed-size memory pool, implementing reference counting with cycle detection, coding Mark & Sweep, Mark & Compact, and Copying GC algorithms, and wiring root object identification and sweeping into a working CustomGarbageCollector class.
29 Apr 2023 18 min read
Understanding How to Use Cryptography in Java
Cryptography

Understanding How to Use Cryptography in Java

I will explain the Java Cryptographic Architecture (JCA) for a better understanding of how it works. The JCA is designed to simplify the creation of protocols like encryption, hashing, digital signatures, and key generation for Java developers Now let's take a look at how the API works for
29 Apr 2023 6 min read
Java Memory Management: Understanding the JVM Heap, GC, and Tuning Your Application
Software Development Featured

Java Memory Management: Understanding the JVM Heap, GC, and Tuning Your Application

Most Java developers know what a garbage collector is. Far fewer understand what it's actually doing, why it sometimes tanks application performance, and how to tell the JVM to knock it off.
16 Apr 2023 14 min read
How to Make a Bitcoin Transaction in Go Lang
Software Development

How to Make a Bitcoin Transaction in Go Lang

Bitcoin is all the rage in recent years. So does Golang - a programming language developed by Google. Today I am going to instruct you how to make a simple Bitcoin transaction with Golang. Hopefully, you will be able to transfer Bitcoin without using any DApps after this tutorial. The
10 Apr 2023 4 min read
Understanding Memory Safety in  Rust Lang
Software Development

Understanding Memory Safety in Rust Lang

The last decade has been amazing for the Rust Programming Language to become the choice for people has the goal of writing fast, machine native software and web applications. The way that the language was made was for strong guarantees for memory safety. We are here to try to understand
08 Apr 2023 11 min read
Building a Discord Bot in Node, TypeScript, and Eris
Software Development

Building a Discord Bot in Node, TypeScript, and Eris

Here's a simple and straightforward guide to creating your first Discord bot with Eris and TypeScript. This guide introduces you to the essentials of writing a modular Discord bot that supports slash commands. Prerequisites You'll need these few tools and skills in order to complete this
01 Apr 2023 5 min read
Intuitive Method of Finding the Inverse of a Matrix
Programming

Intuitive Method of Finding the Inverse of a Matrix

Finding a matrix inverse is very useful not only in Computer Science but when solving equations by hand. However, using the formula Adj(A) / det(A) can be quite tedious, especially if you don't know how exactly it works. In this article I will show how to intuitively
02 Feb 2023 3 min read
Getting started with Embedded C
Programming

Getting started with Embedded C

The Goal By the end of this tutorial, you will be able to compile a binary written for the avr instruction set targeting the AtMega328P microcontroller on an Arduino Nano or Arduino Uno R3 form factor. Needed Documentation * Arduino Nano PCB design * Atmega328P datasheet Materials used * Arduino Nano * Arduino Uno
15 Dec 2022 7 min read
Package Source (pkgsrc): An Introduction
Linux

Package Source (pkgsrc): An Introduction

Package source is an interesting project that is developed primarily by the NetBSD team. It is based on a ports tree system. If you are a Linux user, then know that Gentoo is based on the FreeBSD ports tree system. For the rest of you who are not Linux users
27 Oct 2022 3 min read
Introduction to the Awesome World of BSD Distros
Linux

Introduction to the Awesome World of BSD Distros

Almost everyone in the tech sector is familiar with Linux in some capacity. Their use of it may be on the server as a sysadmin, Android phone user, desktop experience, deploying a micro-service via the cloud or in the embedded space. In some way, shape, or form, everyone in the
17 Aug 2022 4 min read
← Newer Posts Page 5 of 6 Older Posts →
CoderOasis © 2026
  • Topics
  • Meet the Team
  • Best Articles
  • Archives
Powered by Ghost