RSSAmplifier

Blog

Software Development Articles by Kory Becker

Software development articles by Kory Becker. Javascript, artificial intelligence, data science, .NET, databases, UI design, web services, and more.

primaryobjects.comRSS feed ↗107 posts

Latest posts

Revolutionizing the Deutsch-Jozsa Algorithm: A Quantum Upgrade

Explore enhancements made to the traditional Deutsch-Jozsa quantum computing algorithm to address several shortcomings. The enhanced algorithm is implemented using Qiskit and the IBM Quantum simulator, making it more efficient and accessible. This article provides a guide to programming the improved Deutsch-Jozsa algorithm, unlocking its full potential for better quantum computing.

Quantum Computing Hello World

Can we program a quantum computer to output the text 'Hello World'? This tutorial walks through the steps to write a quantum computing program that implements Grover's Search algorithm and a custom oracle to output the phrase 'Hello World'. The example code uses Python and Qiskit. The tutorial demonstrates key concepts behind using a quantum computing search algorithm and shows how powerful the…

The Ultimate Guide to a Quantum Computing Certification with Qiskit

Are you preparing to take the IBM Quantum Computing certification exam with Qiskit? Learning about quantum computing and the topics of quantum circuits, qubit gates, Bloch spheres, and the Qiskit SDK are part of the overall technology for being certified as a quantum computing developer. This post is the ultimate study guide for preparing for a quantum computing certification.

Creating Virtual Reality using WebXR and HTML

Learn how to build a virtual reality app on the web using WebXR. The app will be viewable in 3D through any web browser and can be experienced in full virtual reality with any mobile device and a head-mounted display. Our app will utilize the [A-Frame](https://aframe.io) library for building a VR experience using HTML and Javascript.

Intelligent Heuristics for the Game Isolation using AI and Minimax

Learn how to create an artificial intelligence agent for the game, Isolation. We'll walk through how to create a web-based version of the game that can be played in the browser using React JavaScript. We'll also demonstrate how to create an artificial intelligence AI driven player by using the Minimax algorithm with Alpha-beta pruning and intelligent heuristics.

An Introduction to Quantum Computing

What exactly is a quantum computer? In this article, we'll learn what quantum computing is and how it has amazing potential to let you write software applications in an entirely new way. We'll walk through a brief history of quantum physics, describe how quantum computing works, and even write a game on a quantum computer.

Creating Self-Assembling Code with Genetic Programming

Learn how to use genetic programming to self generate computer programs. We'll walk through the steps of using a genetic algorithm combined with genetic programming to create an engine that can generate programs for solving math formulas. We'll use JavaScript, fitness functions, and evolutionary techniques to mutate expression trees and automatically generate new programs.

Logical-Based Artificial Intelligence and Expert Systems

Symbolic and logic-based artificial intelligence have been used to create expert systems in many real-world applications, ranging from healthcare to taxes. In this tutorial, we'll review symbolic AI, propositional logic and first-order logic, and walk through the steps of creating our own knowledge-base and expert system for choosing financial ETF funds.

Image Recognition for Fashion with Machine Learning

Can you automatically detect pictures of shirts and pants? Learn how to perform image recognition of fashion items using machine learning and R. We'll identify shirts, pants, dresses, sneakers, hats, and more, by building an artificial intelligence model on an easy-to-use fashion dataset. We'll also cover constructing a learning curve and checking the accuracy of your machine learning results.

Intelligent Topic Detection with Unsupervised Learning

Learn how to use unsupervised learning to automatically predict categories and topics for different types of data. In this machine learning tutorial, we'll predict categories for colors and financial funds using AI, R, and JavaScript.

Integrating React with an Existing JQuery Web Application

Learn how to integrate a React component with an existing JQuery web application. We'll cover how to communicate between the context of JQuery and React, listen to events, and render data on the web page according to changes in the parent app.

Preparing for a Technical Interview: Algorithms, Data Structures, and Computer Science

Learn how to prepare for a technical interview at a software development company with a review of basic algorithms, data structures, and computer science topics using JavaScript. Whether you're a new graduate with a fresh computer science degree or an experienced software development professional, this post will help refresh your computer science fundamentals.

Developing a Game for the Echo with Amazon Alexa

Are you ready to build a voice-based game for the Amazon Echo? Learn how to write a skill for the Amazon Echo using the Alexa platform and create a celebrity face guessing game. Our Alexa skill will call an external API, display an image on an Alexa home card on a mobile device, and handle tracking game state and player scores.

Emotional Artificial Intelligence

Can computer software be designed to be more emotional? Learn how to implement an emotionally intelligent conversational UI. Using sentiment analysis, we design a chatbot capable of responding to users in multiple ways, depending upon the positive or negative sentiment of the conversation.

Building Your First React Javascript App

Ready to build your first web app with React? Learn how to build a simple dragon generator app, using the React javascript framework. We'll cover setting up the HTML template, binding form elements, reading from a remote database API, and handling a form submit. From start to finish, this is a complete introduction to building and deploying with ReactJs.

An Overview of Conversational UI

Is computer software ready to be controlled by speech? Learn how to use conversational UI to allow users to talk to software. We'll review an example of a conversational UI that uses Amazon Echo-style skills and intents for accessing news stories via a chatbot in Slack.

IBM Watson: Building a Cognitive App with Concept Insights

What is it like to build an app with IBM Watson, the Jeopardy-winning artificial intelligence machine? I had recently given a presentation at the 2016 Associated Press Tech Summit, focused on building an application using the IBM Watson platform. This article describes the available Watson services and an introduction to integrating with the Watson Concept Insights API using node.js.

Neural Network Sort

Neural networks can be used for some pretty fascinatingly flexible solutions. But, have you ever heard of neural network sorting? This tutorial demonstrates the training of an artificial intelligence program to sort numbers. We feed the AI a training set of 3 and 4 numbers, from 1 to 100, and watch through learning curves, as it learns to output the numbers in ascending order.

A Tale of Migrating to a Static Web Site

This article is a history of my decade-old site, as it transitioned over several platforms, and migrated from a dynamic .NET web application to a statically generated blog. It details the nuts and bolts of scraping, parsing, and converting an html site into a series of markdown documents, used for automatically generating a static site with Hexo.

Artificial Intelligence Planning with STRIPS, A Gentle Introduction

Imagine you're developing a video game where the player has to find magical items, build a weapon, and then attack monsters. How would you go about implementing such a feature? One method is to use artificial intelligence planning with STRIPS to intelligently plan a set of actions to achieve a goal. By integrating an AI planner, your software can gain the brains to think and formulate an optimal…

A Meteor.js Review and Tutorial for Single Page Web Application Development

Single page web applications are an important part of modern web development. In this tutorial, learn about the new web application framework, Meteor.js. Create your first meteor.js single page web application that reads data from MongoDb. Learn all of the ins and outs of this rapid javascript web development framework.

Token-Based Authentication for Web Service APIs in C# MVC .NET

Learn how to implement a token-based authentication framework to secure a .NET REST API. Our API will be created from a simple MVC controller with each method protected by token-based authentication. The client will be required to provide a token key in the URL for each request. Each token will be unique and have a limited duration of time that it is valid. We'll complete the authentication…

A Template Architecture for AngularJs and MongoDb in ASP .NET MVC 5

In this tutorial, learn how to create an ASP .NET MVC 5 web application that uses AngularJs and MongoDb to display a database of scary dragons! We'll combine a repository pattern for the database and business layers, with a REST MVC service controller to pass data back and forth to the UI through AngularJs. We'll put the final solution together to create a robust web application with a slick, and…

Self-Programming Artificial Intelligence Learns to Use Functions

Is it possible for a computer program to write its own programs? Learn how a program written with artificial intelligence has written its own computer programs to say hello world, read user input, reverse strings, and perform basic math. Most recently, it has advanced to using functions. Learn how the AI, taking advantage of genetic algorithms, is able to write more complex computer programs,…

Discovering Trending Topics in News

How do social media web sites build trending topics? In this article, we'll explore using machine learning and clustering to put together a list of trending topics from a large data set of news stories. We'll use natural language processing and the R programming language to analyze data and build word clouds of the resulting trending topics.

Data Analysis with MongoDb and R

Learn how to use the R programming language with a MongoDb database, querying and performing basic data science analysis on the results. Compare various methods for connecting to Mongo, including C# and node.js, and learn about the advantages of R.

Mirroring Your Twitter Persona with Intelligence

Is it possible to apply machine learning to a Twitter user's collection of tweets and accurately develop a model of the personality? This article describes how to create a machine learning recommendation engine for Twitter that will recommend links related to a user's interests and automatically identify new content. Learn how to use unsupervised learning and the K-means algorithm to cluster big…

Classifying Handwritten Digits with Machine Learning

Developers looking for their first machine learning project often start by trying the handwritten digit recognition problem, which involves classifying data from the MNIST dataset. In this article, we'll walk through a basic solution in C# .NET for accurately reading the handwritten digits and classifying to within 97.5% accuracy. We'll use the Accord .NET machine learning library and plot some…

Detecting a Hacked Tweet with Machine Learning

Could a computer program have detected the hacked April 2013 Associated Press tweet that briefly crashed the stock market? In this article, learn how machine learning was used to accurately classify tweets by authorship. Walk through the code in C# .NET, examine learning curves, and delve into big data processing, as we tinker with artificial intelligence and Twitter analysis.

TF*IDF in C# .NET for Machine Learning - Term Frequency Inverse Document Frequency

Term frequency inverse document frequency (TF*IDF) is a numerical value that indicates how important a word is within a document. It's used in search engine ranking algorithms, natural language processing, and machine learning implementations. In this article, learn how to implement TF*IDF in C# .NET to convert a large set of document strings into a numerical representation, based upon term…

Using Single Sign-On with Windows Identity Foundation in MVC .NET

Learn how to implement single sign-on in MVC .NET with federated authentication and the Windows Identity Foundation framework. In this tutorial, we'll walk through the steps of implementing federated authentication by creating a C# MVC4 .NET web site and a common authentication web site identity provider (also called a Secure Token Service or STS). We'll create an SSO login system similar in style…

An Intelligent Approach to Image Classification By Color

Machine learning sounds like a fancy term. Depending on which recent sci-fi film you may have watched, it may even invoke a sense of fear. However, it's actually a powerful set of algorithms and techniques for allowing a computer program to intelligently arrive at a solution, without explicitly telling it how to do so. In this article, learn how to classify a picture by overall color as red,…

Solving Mazes with AI Pathfinding Techniques: A* vs Tremaux

Imagine that an artificially intelligent robot approaches a valley. Looking down the cliff into the valley, the robots sees a large, man-made, labyrinth structure. The structure has an entrance, an exit, and is surrounded by water. The robot can, of course, simply enter the structure and wander around, until it finally reaches an exit point. However, since the robot is programmed with AI, it can…

Your First Node.js Web Application in 15 Easy Steps

Node.js is a web application platform that has been gaining significant developer popularity. With its focus on server-side javascript and lightweight execution, getting started with it might be easier than you think! This tutorial walks you through 15 easy steps for getting your first node.js web application running.

Pushing the Limits of Self-Programming Artificial Intelligence

Is it possible for a computer program to write its own programs? In the previous article this question was answered with the creation of a program, using artificial intelligence, that could write its own programs to output "Hello World" and other simple strings. The AI wrote its programs using the Turing-complete programming language brainf-ck. With the success from the initial experiments, I was…

Using Artificial Intelligence to Write Self-Modifying/Improving Programs

Is it possible for a computer program to write its own programs? Could human software developers be replaced one day by the very computers that they master? In this tutorial, watch a program, developed with artificial intelligence, learn how to write its own program to output the word "hi" to the screen. The AI begins with no knowledge about the target programming language. It gradually evolves…

MVC Forms Authentication and Storing Data in the Cookie

Learn how to implement MVC4 C# .NET forms authentication and store custom user data in the forms auth ticket. We'll walk through the steps of implementation, using a custom MembershipProvider class, along with a custom Principal object. The Principal will hold our custom user details, encrypted within the forms authentication ticket cookie, and allow us to access this data anywhere within the web…

Creating Windows 8 Live Tile Notifications with WinRT C# .NET

WinRT is the new platform software application architecture for creating Windows 8 apps (formerly, called Metro-style apps). One unique feature of Windows 8 is the ability to display Live Tile notifications on the desktop. In this tutorial, we'll walk through the steps to create a basic Windows 8 Live Tile notification. We'll cover an example of a text, image, and animated Live Tile notification…

Parsing Hostname and Domain from a Url with Javascript

Parsing urls is a common task in a variety of web applications, including both server-side based code (as in the case of C# ASP .NET or node.js web applications) and client based code, including Javascript. Learn how to create three easy Javascript methods for parsing a url, extracting the hostname and domain, and determining if a url points to an external domain from the existing web page.

Reading POST data in Node.js Express, with an Easy Manager Method

Node.js with Express offers a fairly simple method for reading form POST data by simply referring to req.body.nameOfField. However, when data is sent via HTTP post from a REST client, instead of an HTML form, the data is read using a streaming approach via req.on('data') and req.on('end'). In this tutorial, we'll show how to create a simple node.js javascript manager method for reading POST data.…

Creating Your First Node.js App in Windows with Heroku Hosting

Introduction Many Windows developers are currently developing web applications with the most popular Microsoft technology stack of C# ASP .NET. As technologies evolve, and especially with the advent of mobile platforms and alternative operating systems, new programming technology stacks emerge to fit new needs. One of the latest new tech stacks that is receiving a good degree of popularity is…

Loading C# MVC .NET Data Annotation Attributes From XML, Form Validation

Introduction Validating web forms is a common task of almost any C# MVC ASP .NET web application. Typically, form field validation is implemented in MVC web applications through the use of .NET data annotations on class member fields. While data annotations offer a powerful and maintainable feature for adding form validation to a web application, occasionally more flexibility is required for…

Moving in and Out of SSL HTTPS in C# MVC ASP .NET

Introduction Securing pages of a web application is an important step for many production-ready C# ASP .NET MVC web applications, especially those dealing with security-sensitive or personal data, such as passwords or financial information. The primary method for securing web pages is through the use of a secure sockets layer (SSL) on the HTTPS protocol. Since SSL invokes additional…

Creating A jQuery Modal Confirmation Dialog When Submitting a Form

Introduction Accepting input from users through the use of HTML forms is a common task in almost any web application. When a web application form is lengthy or detailed in nature, it may be a good idea to display a confirmation of the values the user entered, prior to submitting the data. Rather than navigating the user away from the form to display the confirmation, web applications can take…

Smart Page - an MVC C# .NET Pager Control for Search Results

Introduction Search is an important part for many C# .NET web applications, comprising of both the display of search results and a navigational control for scrolling through the pages of results. While traditional WebForms in C# ASP .NET included a variety of paging controls, such as the default paging included with the DataGrid or GridView controls, MVC .NET is limited with regard to built-in…

MongoDb Enterprise Design with C# .NET, the Repository Pattern, and NoSQL

Introduction There is a growing change in the software development world around considering the choice of a NoSQL database platform over the more typical SQL database. SQL databases are centered around the idea of relational tables. Data is normalized and separated, optimizing disk space and query speed, and then linked together with foreign keys to create relationships. In contrast, NoSQL deals…

Creating a Slick Login Form in MVC3 C# ASP .NET with Attribute Security, CSS3

Introduction A common task for many MVC3 C# ASP .NET web applications is the creation of a login form. Along with the common login form comes an array of required functionality, including login validation, authentication, storing of credentials, and of course, security. In traditional C# ASP .NET web applications, protected pages would sit within a particular folder, designated by the web.config…

Loading Web Navigation from XML with MVC3 Partial Views, C# .NET

Introduction The navigation menu is a common control on almost every MVC3 C# ASP .NET web site, containing sets of links for navigating to various portions of the web site. Traditionally, menu navigation links are statically embedded within an MVC3 control or directly within the HTML of a web page. Occasionally, the need may arise for navigation links to be driven from an outside data source, such…

Creating a Simple Paint App with HTML5 Canvas and Javascript

Introduction Although HTML5's formal specification is still under development, the technology is already growing in popularity. HTML5, as supported by many popular web browsers, already brings together a set of client-side technologies for producing highly interactive and responsive applications. One of the more talked-about parts of the HTML5 toolkit is the Canvas element. This new element…

Remote Debugging with Pastebin, Automatic Posting to Pastebin in C# .NET

Introduction Debugging software applications typically occurs within the context of an IDE (integrated development environment), such as Eclipse, XCode, Visual Studio, etc. This allows developers to step line by line through sections of code, analyzing variables, and tracing the stack. Occasionally, developers may be unable to debug within the IDE, whether due to software complexity, runtime…