Currently work as a Software Engineer at Ovitas in Burlington, MA. Previously worked as a Software Engineer at IBM in Littleton, MA, at Infino Systems in Cambridge, MA, and at Associated Environment Systems in Ayer, MA. Graduated from Northeastern University with a BS in Computer Engineering in April 2014.
Languages by approximate amount of time I've spent with each (last updated in December 2021):
Python / Boo
: 14 years (work and personal)
- Don't tell the other languages, but this is definitely my favorite one so far. Everything is so compact and easy to read. Plus I love that 90% of tools you need are packaged in the standard library and that the next 9% are easy to install with
Pip
. Writing that last 1% is easy.
Boo
is Unity's variation on Python
. It's compiled so includes more type safety than standard Python
... it's compatible with Mono and .NET.
JavaScript / JQuery / UnityScript
: 14 years (work and personal)
- Unity will try telling you their language is
JavaScript
. It has enough changes that I generally refer to it as its own language, UnityScript
. I've made some web games in it.
Java / Groovy
: 13 years (work and personal)
- I've made web apps, swing apps, and Android apps.
Objective-C
: 7 years (work and personal)
- Multiple apps on the iOS and Mac App stores.
- I love that all arguments are named, but this language often ends up with unwieldy lines. I've yet to see any particularly good style conventions that are easy to read/write and compact for this language.
@property
, @()
, @[]
, and @{}
were a nice start, but the language still has a long way to go before it even competes in the same readability league as Python
.
PL/SQL
: 11 years (work and personal)
- I've found that I have a knack for optimizing SQL scripts to run far quicker... in my experience, scripts tend to run slowly because people use
join
much more often than they should.
C/C++/C#
: 6 years (work, school and personal)
- I switched entirely to using
C#
in Unity after support for Boo
was dropped a few years ago. The language has really grown on me - Microsoft clearly started with Java
, stripped out a lot of legacy junk, and added in a lot of nicer new features. I'd love a job where I get to use it.
- Played around with OGRE 3D (Object Oriented Graphics Rendering Engine) before settling on
Unity
, instead. Also, most class programming assignments called for C++
.
Racket / Scheme / LISP
: 1 year (school and personal)
- I really like how consistent the syntax is. If anyone ever says they don't like these languages, they've either not tried it or they don't understand functional programming.