We’ve been wanting to expand Qvault’s course curriculum, and one of the most requested programming languages has been Python. Because our courses allow students to write and execute code right in the web browser, we decided to look into existing projects that allow a Python interpreter to run in the browser using Web Assembly. We … Read more Running Python in the Browser with Web Assembly
We’ve recently made big changes to how we execute Go in the browser on Qvault and want to explain the enhancements. Web Workers are the reason we’ve been able to solve some of the serious browser-related coding problems that were holding us back. Consider this article a sequel to Running Go in the Browser with … Read more Running Go in the Browser with WASM and Web Workers
Elliptic curve cryptography is an efficient modern approach to public-key cryptosystems. In this introduction, our goal will be to focus on the high-level principles of what makes ECC work. We will omit implementation details and mathematical proofs, we can save those for another article. What It’s For? A common use of ECC is to encrypt data … Read more (Very) Basic Intro To Elliptic Curve Cryptography
I’m normally a fan of the rigidity within the Go toolchain. In fact, we use Go on the front and backend at Qvault. It’s wonderful to have standardized formatting, vetting, and testing across the entire language. The first real criticism I’ve had is with the way Go modules handle major versions. It’s over-the-top opinionated and … Read more Go’s Major Versioning Sucks – From a Fanboy
We’ve launched our new Big-O Algorithms course! We wrote this course for engineers who need a refresher on computer science basics, or want to learn the fundamentals for the first time. The study of algorithmic complexity is often overlooked by new developers, and we’ve found that get-rich-quick boot camps often skimp on these details. It’s … Read more “Big-O Algorithms” Course Released
With quantum computers getting more powerful each year, many worry about the safety of modern encryption standards. As quantum computers improve in performance and the number of qubits used for calculations increases, current cryptosystems are under threat. AES-256 is one of the most powerful symmetric ciphers, but will it remain secure in a post-quantum world? … Read more Is AES-256 Quantum Resistant?
One of the first concepts new developers learn is the if/else statement. If/else statements are the most common way to execute conditional logic. However, complex and nested if/else statements can quickly become a cognitive burden and compromise the readability of a program. Guard Clauses Guard Clauses leverage the ability to return early from a function … Read more Guard Clauses – How to Clean up Conditionals
In this tutorial, I’m going to walk you through building a Golang video streaming API (this works for other types of media as well!). Don’t worry, its surprisingly easy to build a robust media streaming server, especially if we utilize one of the more modern protocols, HLS. What is HLS? HTTP Live Streaming is an … Read more Create a Golang Video Streaming Server Using HLS – A Tutorial