FB Pixel Joshua Cole: Index Index | Joshua Cole’s Personal Website

About Me

I'm a generalist Software Engineer, AI & Machine Learning Expert, and CEO of TackTech, an AI startup providing personalized AI.

I spend most of my time thinking about software engineering, artificial intelligence, game theory, and machine learning problems. I sometimes write about my thoughts on this blog. Often I do it to avoid repeating myself.

I also enjoy writing and competitive gaming in my spare time.

Writing

July 23, 2022: Dissolving the Problem Of Evil
I’ve discussed in Modeling Technical Income how in a short project, best practices are a waste of time, but over a long project those best practices are a huge time savings. This isn’t unexpected in theory: if we have the same evaluation function and we apply it to two different...
July 23, 2022: Chat Bots
I remember when I was young my mom had me in her lap and I was reading a book at her request. It wasn’t the first time we had done this, but this time went different to many of the other times. My mom did something that humans do commonly...
May 17, 2021: Virtuous Cycles
A cycle is something which repeats over and over again. Clothes go through a cycle. You put them on. You take them off. You wash them. You fold them. Then you put them on again. On and on it goes until the stress of the experience renders the clothing unsuitable...
April 23, 2021: Notes on Notes
For a long time I wasn’t happy with my note taking process, but I’ve been getting better at taking notes. I figured that I would share a little about what I’ve learned about note taking by writing a review of two books that recommend cohesive note taking systems. The two...
March 06, 2020: Modeling Technical Income
For some technical debt is just a list of shouldn’t and best practice a list of should. I find this to be a poor framing and one prone to producing bitterness. My own perspective is that technical debt and best practices are actually the same thing. That must sound strange...
March 05, 2020: Learning to Program
I’ve watched several people who are learning to program try to solve programming problems and one of the things I’ve noticed is that it is the basics, not the complicated things, which really seem to trip people up. This can continue even after a person has taken classes which claims...
April 23, 2019: Toward Better Tests
It is not only the violin that shapes the violinist, we are all shaped by the tools we train ourselves to use, and in this respect programming languages have a devious influence: they shape our thinking habits. Edsger W. Dijkstra In order to do testing well it is important to...
August 01, 2013: K Nearest Neighbors
The eighth chapter of Programming Collective Intelligence was on building a price model. This was significant as prior to this all the classification algorithms that we had been looking at were intent on classifying things into categories. They output discrete rather than continuous values. To build the price model this...
July 16, 2013: Collective Classification
This is another blog post in my series of blogs posts covering my reading of Programming Collective Intelligence. A lot of the group members have had full-plates as of late. Some are working on start-ups, others are working through other books, and some are doing additional study groups. As a...
July 07, 2013: Searching A Solution Space
In chapter five of Programming Collective Intelligence I was introduced to new ways to go about solving optimization problems. When I say optimization problems what I’m really saying is that there is problems where there is a function to be minimized with respect to a large number of possible solutions....
July 03, 2013: A Search Engine Study
I just finished reading through chapter four of Programming Collective Intelligence. It went over crawlers, search engines, and neural networks. I ended up getting the chance to build an application which used each of these technologies. Some of the technologies I had encountered before. I’m not new to scraping and...
June 25, 2013: Clustering
Clustering is a bit like classification in that data points needs to be categorized, but whereas classification is a supervised learning task in which labels that help to guide classification, clustering is an unsupervised learning task in which labels must be discovered. When I was first introduced to code which...
June 21, 2013: A Summer of Collective Intelligence
During the summer of 2013 I was reading Programming Collective Intelligence as part of an independent study group. The book covers a variety of machine learning algorithms that can be used to build recommendation systems and search engines, among other things. Our plan was to get through two chapters each...
July 19, 2011: Probability Confuses
It took a long time before humanity got a grip on modeling probabilities. The first formal treatment of the subject I’m aware of were the letters between Blaise Pascal and Pierre de Fermat. In these letters which changed the way people see the world the two intellectual giants were trying...
December 09, 2010: Lisp Has Average Performance in Google AI Competition
A while back a blog at r-chart analyzed the Google AI Competition rankings. That blog post inspired me to try applying some of the things I’ve been learning about in courses offered through Carnegie Mellon’s Open Learning Initiative. The first step was to get the data. To do that I...

Tools

Some minor tools I’ve made and made publicly available. Nothing special here.

Elsewhere On The Internet

In addition to the content I host here on my own domain, I also have works on other websites. If you would like to support my online presence or see other content by me, please follow me on these other platforms.

If you want to be notified when I post new content you can subscribe to the site's Radio waves; RSS/Atom feed or