## WordPress and WooCommerce, a winning combo

I’ve been working on a website for a customer for the past month or so that is built on WordPress and WooCommerce. I have decided that I really like the WooCommerce plugins, and highly suggest it for anyone who wants a simple, quick way to take payments on their site. The WooCommerce plugin makes payments extremely simple, even for the least technically inclined people. For example, a store-owner does not need to worry about credit card information security, SSL certifications…

## Interesting Numbers

The Fibonacci sequence is one of the most widely used sequences when introducing the concept of sequences. The sequence is defined as the following: FN = FN – 1 + FN – 2 So, starting with F0 = 0 and F1 = 1, the first few Fibonacci numbers are 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, … and so on. An interesting thing to note about the Fibonacci sequence is that the ratio of one Fib number to its predecessor…

## Be An Engineer

Tonight while taking a study break from cramming for a Data Structures and Algorithms exam, I ran across this exceptionally interesting site called BeAnEngineer.com. The movement is funded by ExxonMobil and supported by an array of various engineering associations and institutions that are pushing for expanded engineering education. The site contains all sorts of information on multiple engineering fields as well as the stories of some of the most famous innovators of our time. I agree wholeheartedly with this mission of advancing the…

## Generic Data Structures

I’m curently taking a class called Data Structures and Algorithms. I decided I’d try to implement some common data structures of my own. These structures are mostly being built in a linked list style with the exception of the List struct which is built on an array that will auto-resize. You might ask, “why are you doing this, when there are already templated vectors and maps and such in the STL?” Mainly because I can!! I enjoy these things, and I…

## Toom-k Polynomial Multiplication

I’ve been pretty busy with classes the past two weeks, but I’ve learned a few neat things and I’d like to share one of them. Multiplying big numbers is a problem when the numbers are really, really big. How big is really, really big? Depends on the hardware your using. But to multiply really big numbers, we represent the two multiplicands as polynomials where each term is in the form cxn, where x is the base in the number system, c is its coefficent modifier…

## Look and Say Numbers Sequence

The very famous John Conway (Conway’s Game of Life) discusses a silly ‘look-and-say’ math trick that I’ve been playing on people since middle school. Who would have guessed such interesting characteristics could come of this sequence? I am inspired by John Conway’s insight into things as simple as this basic sequence. See the video below:

## Public Key Cryptography

In this post I will try to describe how public key cryptography works. Specifically, I will be using a watered down version of the Diffie-Hellman Key Exchange method for my examples of public key cryptography. Public Key Exchange The issue with sharing private keys is that there is no security in the transport of private keys. Public key exchange systems work around this by having two keys known as the Public Key and the Private Key. The two keys are used together to…

## Binary bit fields and flags

If you’ve used any legacy C libraries before, you’ve probably used these things called bit fields, even if you didn’t know what they were. Bit fields are a way to efficiently store multiple boolean values in one or more bytes. If you can imagine an 8 bit integer as binary, each bit would have to be either a 1 or a 0, corresponding to an “On” or “Off” value. With just one 8 bit variable, you can store 8 on/off…

## Happy | Cover by PTX

I missed this when it was brand new on the web, but I am a huge fan of Pentatonix! Their cover of Happy by Pharrel Williams is outstanding!

## C++ 2014: auto return deduction and more!

The new C++ standard-in-the-making codenamed C++1y, has some great new features. The most standout addition in my opinion is the ‘return type deduction’ feature which allows functions to use ‘auto’ return types that will be deduced at runtime. There are a few limits on this functionality however. Recursion can only happen if there is at least one return statement that can be evaluated to a non-auto type. For example: // this factorial works auto factorial(int i) { if(i == 0…