coding

Enhancing Rust Enums in the State Pattern

Enhancing Rust Enums in the State Pattern

In my previous article, I discussed how Rust enums should be strongly considered when the solution benefits from a state machine. The strongest argument for this is the fact that the Rust compiler will inform you when a state variant isn't covered in a match expression. This was stemmed from a state pattern example provided by the official Rust book. The sample scenario they used was an article that was required to go through the status of Draft, PendingReview, and Approved. Using a similar strategy as I explained in my original article, I came up with the following code: post.rs…
Read More
Twilio Challenge: AI-Powered Voice Assistant

Twilio Challenge: AI-Powered Voice Assistant

This is a submission for the Twilio Challenge What I Built I created an AI-powered voice assistant designed to handle complex questions. Many existing voice assistants struggle with these types of inquiries, which can be frustrating for users. My assistant aims to bridge this gap. Demo Source code https://github.com/ThatCoolGuyyy/Twilio-OpenAI Steps to try The detailed steps to see the voice assistant are in this article I wrote, https://www.twilio.com/en-us/blog/build-ai-powered-voice-assistant-twilio-laravel-openai Twilio and AI I used Twilio Programmable voice to get the user's request, this request is then passed into OpenAI API in a Laravel application. Finally, Twilio Programmable Voice is used to return…
Read More
How Deep Learning Works

How Deep Learning Works

Deep Learning is the core of a Machine Learning system, it is how a machine actually learns from data without much human intervention. In this post I am going to discuss how Deep Learning actually works with the data you give. The basis of a Deep Learning system are Neural Networks, they are the fundamental part of how a machine learns by itself. To understand how a Neural Network learns you need to understand how a Neural Network is structured. There are mainly 3 (or more) layers in the neural network1. Input Layer: Where the data to the network is…
Read More
EXPLOITING DEV MACHINE

EXPLOITING DEV MACHINE

This walkthrough will showcase a creative approach to gaining root access on a machine. We'll utilize an unexpected vulnerability within the zip command to escalate privileges. After successfully setting up your dev machine, use the following details to login to the machine. Username: rootPassword: tcm Now we need to get the IP address of the academy machine, to get that input the command: dhclient Enter fullscreen mode Exit fullscreen mode after that input the command: ip a Enter fullscreen mode Exit fullscreen mode From the above image, my IP address for academy is 192.168.59.135 Now we can ping the machine…
Read More
Best Time to Refactor: Tips for Refactoring a Legacy Code Base

Best Time to Refactor: Tips for Refactoring a Legacy Code Base

As software engineers, we all know that refactoring is important for maintaining and improving code quality. However, its very common being lazy. Imagine a scenario where, during a code review, someone identifies a code smell and suggests some changes. You might respond by saying there's no time for that now and that we'll add it to our technical debt backlog. Or perhaps you leave a few TODO comments instead of taking the time to write clean code. It’ll get done eventually, right?No! In reality, these tasks rarely get completed once they’re consigned to the limbo of “to be done later.”…
Read More
Creating and Managing Multiple Projects and Servers with Mockingbird

Creating and Managing Multiple Projects and Servers with Mockingbird

In the fast-paced world of software development, efficiency and productivity are paramount. Mockingbird, a powerful tool designed for creating and managing mock environments, offers developers a streamlined solution to enhance their workflows. This blog post will guide you through the process of creating and managing multiple projects and servers using Mockingbird, ensuring you can maximize your development and testing capabilities. Why Use Mockingbird? Mockingbird is designed to address common challenges faced by developers, such as waiting for server development to be completed, which often leads to project delays. By providing a robust mock environment, Mockingbird allows developers to test APIs…
Read More
Building Native Applications with Capacitor and ReactJS

Building Native Applications with Capacitor and ReactJS

Introduction In the ever-evolving landscape of software development, the demand for building native applications from web-based code has grown exponentially. Capacitor, a tool created by the team behind Ionic, offers developers a seamless way to create cross-platform native applications using their existing web technologies. In this article, we will explore how to incorporate Capacitor into a ReactJS project to build native mobile applications. What is Capacitor? Capacitor is a cross-platform native runtime that allows you to build web applications with JavaScript, TypeScript, or any front-end framework and then deploy them as native mobile apps or Progressive Web Apps (PWAs). It…
Read More
Finding the Largest Sum Subarray: Step-by-Step Guide Using Kadane’s Algorithm

Finding the Largest Sum Subarray: Step-by-Step Guide Using Kadane’s Algorithm

Finding the largest sum subarray is a intermediate problem in coding interviews. In this guide, we'll explore how to locate the maximum sum of a continuous subarray using Kadane's Algorithm. Don't worry if this sounds complex at first—we'll break it down step by step. Go ahead and check them out! Find the largest sum subarray using Kadanes AlgorithmMastering Object-Oriented Programming in C++Palindrome Partitioning A Comprehensive Guidewhat is parameter in coding and what is the deference between param and argument in programminghow to inverse a matrix in c# find the first occurrence of a string Longest common substring without repeating characters…
Read More
Front end in 7 days?

Front end in 7 days?

As a cybersecurity major who has only ever done Python, building websites has always remained a wish. I have heard some say building websites is a piece of cake but others said web development is so complex, that you might start learning something else. Either way, I believe the best thing is to figure it out myself. So, I am doing the 7-day challenge to learn anything ( credits to the Pareto Principle - Work expands to fill time). Through these 7 days, I will be learning HTML, CSS, JS, and React. And to gauge my progress, I will make…
Read More
Top JavaScript Frameworks in 2024

Top JavaScript Frameworks in 2024

Explore the Leading JavaScript Frameworks for Modern Web DevelopmentA Comprehensive Guide to the Best JavaScript Frameworks in 2024 , The Ultimate Guide to Choosing the Right JavaScript FrameworkStay Ahead in Web Development with These Cutting-Edge JavaScript Frameworks In the fast-evolving world of web development, staying updated with the latest frameworks is crucial for building robust and efficient applications. This guide aims to provide a detailed overview of the top JavaScript frameworks in 2024, helping developers make informed decisions. We will explore the key features, benefits, and use cases of the leading JavaScript frameworks, including React, Angular, Vue.js, Svelte, and Next.js.…
Read More
No widgets found. Go to Widget page and add the widget in Offcanvas Sidebar Widget Area.