I try to write down my resolutions every year to keep myself in check. I’m also a firm believer in having a lot of resolutions, because if you’re gonna go — go big. Here is my list for 2016, in no particular order.

  1. Learn Spanish (or as much Spanish one can possibly learn in a single year) — I live in the Lower East Side an there are many stores + restaurants where Spanish is spoken exclusively. I learned decent Italian after living in Rome in 2006, it is time for me to “bite the bullet” and learn some serious…

With 2015 rapidly approaching, I took some time to think about what I would have done differently from a development perspective in 2014. In my previous article, 11 Things I wish I knew about Django Before Starting My Company, I started the list. Now it’s time to add to it!

  1. Use Postgres As Your Primary Data Store

I know in the previous article I was advocating using MongoDB for your primary database, but after 1.5 years of using it, I would no longer suggest it for a number of reasons:

Well … it’s that time of the year again, and I always enjoying looking back on what I said I was going to try to accomplish the year before. With that said, here is my review of my resolutions for 2013:

  1. Run a 1/2 marathon — COMPLETED (Jan 11th 2013), and I will never run a half marathon again — if you like running marathons, kudos — I’m going to stick to drinking wine 5 nights a week and running 7-8 miles at a time like a real man
  2. Learn to play “Tiny Dancer” on piano better than the guy…


If you are trying to build an internet business, find a CTO, not a consulting firm.

As a software engineer in NYC, I get a few unsolicited emails from time to time from non-technical people regarding how to make their technical idea an internet reality. I usually take these meetings to meet new people and also to try to give back and help people out.

Unfortunately, almost every one of these meeting has the same basic structure: the person has an idea and a small budget (usually too small for what they want) to build a web service. Their plan is to hire a third party consulting firm to build the site, launch it, and stand…

When you’re a building a web application with a small team and “moving fast”, unit tests always seem to be the first thing you can set aside for later — don’t do that

I have built a bunch of web apps in my day, and I write server side Django code almost everyday. Looking back over the past 3-4 years, one thing I noticed was that in my personal development process, whether I was building a new feature or fixing a bug, I always left the unit tests till last, and unfortunately sometimes that meant not writing them at all. Then today I came across this Quora question which links to this Hacker New discussion indicating Pinterest wasn’t writing unit tests for a while (I am assuming they are now …)

Let’s face…

After looking at a ton of iOS code, I started wondering why almost EVERYTHING is a pointer. I used to program in C++/C a lot, so I am comfortable with pointers, but I am also used to deferencing them using the -> or *(somepointer) operators. Well, turns out you do not do that in objective C very often.

Anyways, after reading this article it makes sense that since the iOS is running on a phone, with limited hardware, you want to minimizing memory allocation/object copies and pointers solve that problem. I also feel like an idiot for not realizing that before.


Just over three years ago, on March 24, 2010, I didn’t get “the call” that was supposed to change my life – a congratulatory call from the University of Chicago Booth School of Business accepting me into their MBA program. But the absence of the call has changed my life.

I assumed (arrogantly) that I would be accepted. I was just finishing a master’s program in Applied Mathematics (which I never planned on using) with straight A’s. On top of my studies, I was working full-time at a large defense contractor in Washington, DC, volunteering at a local youth organization…

Trying to install pycrypto > 2.2 and hit this bug[1]. Here is the fix:

1. Go here and install the latest version following these instructions:


2. Create this symlink

sudo ln -s /usr/local/include/gmp.h /usr/include/gmp.h

3. pip install pycrypto==2.2

Done :)


building 'Crypto.PublicKey._fastmath' extension

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -fno-strict-aliasing -fno-common -dynamic -pipe -march=native -mmacosx-version-min=10.7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk -isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/usr/X11/include -Wno-unused-value -Wno-empty-body -Qunused-arguments -fwrapv -Wall -Wstrict-prototypes -std=c99 -O3 -fomit-frame-pointer -Isrc/ -I/usr/include/ -I/usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c src/_fastmath.c -o build/temp.macosx-10.7-x86_64-2.7/src/_fastmath.o

src/_fastmath.c:36:11: fatal error: 'gmp.h' file not found

# include <gmp.h>


1 error generated.

error: command '/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang' failed with exit status 1


UPDATE: I’m currently available for Django/Machine-Learning/Design consulting. If you are interested, please contact me: info@mathandpencil.com. For more info, please check out my firm Math & Pencil

UPDATE: Part II of this article can be found here:

I started Math & Pencil just about two years ago. Before I started the companies, I had almost zero web development experience (I’m a data guy) - I started a company learning HTTP, Javascript, AJAX, and Django MVC from scratch. It’s been a wild ride, and our technology stack has since matured to using interesting technologies such as D3.js, Backbone.js, Celery, Mongo, Redis, and…

Someone pointed this out to me, and after googling around, I could not figure it out. The issue seems to be that Google's timestamps are incorrect for search results,and as a software engineer, I find that somewhat surprising.

The Sandy Hook School shooting took place on 12/14/2012:


Now, if you go into Google and search "Sandy Hook School", then go to "Search Tools" and filter by

12/8/2012 - 12/3/2012 (5 days before the tragedy occured), you see articles about the shooting with timestamps up to 4 days before the shooting actually occured 12/10/12 (see image below). Why are google search stamps incorrect for this particular customized search?

joseph misiti

machine-learning + applied mathematics + django + hadoop. Co-Founder of http://www.mathandpencil.com

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store