Hello! This is my new blog about developing for the web, mobile, and beyond. I will be posting code snippets, tutorials, and personal experiences.

The Introduction

For my first post I want to introduce myself, current and past projects, and development setup. Compiled Code is the blog of Jason Yeomans, that’s me. I am a student at George Mason University majoring in Information Technology with a minor in Geographic Information Systems (GIS) and, hopefully, Entrepreneurship. My end game is to create a product and business from the ground up.

The Projects

I spend a lot of time starting and working on different projects, my current largest one being Echelon. Echelon is a music jukebox app that plays songs through Spotify’s SDKs. Any user signed in with a Spotify Premium account (a requirement by Spotify in order to stream music) can create a group. A group is a place where different users can queue up music and vote on that music in order to alter the order that it plays. Anyone can join a group and add songs, including anonymous users who do not sign in with a Spotify account. Echelon is currently being developed as an Android app and Angular webapp.

During my freshman year at school I created the organization website for the All Saints National Catholic Church in Johnson City, New York. AllSaintsNCC.org is created with a Django backend and templating. Staff can easily alter the homepage and add news articles and events from the admin panel.

Alongside Echelon, I am also creating another Django-based website. HealthyCookingForToday.com is the blog/article site of my amazing grandmother. She frequently posts articles about life, cooking, and staying healthy. As of the writing of this post, her website is created and hosted on webs.com, one of the first website creators I used when I was just getting interested in web development. Currently, I am creating a whole new website for her to post articles and interact with users. Having a completely custom website self-hosted will allow her to have much more control and freedom in the design and functionality of her site.
Those are only a few of my current and past projects. What do I use to develop? What is my favorite programming language? What’s your stack, man? Find out below.

The Stack

On my desktop and laptop I dual boot Elementary OS and Windows 10. Elementary OS is a very clean and minimal distribution of Ubuntu. Windows 10 is… well… Windows 10 and is only taking up space at the moment to play games that I can’t currently play on Linux.

I currently use Python, Java, and HTML/CSS/Javascript relatively equally. And for many reasons, that I will likely go over in another post, I prefer Python over any other language I have used. The only time I use a full IDE is when developing with Java and when I do develop with Java, I use IntelliJ/Android Studio. For almost all other development that I do, I use Atom. Atom is a glorified text editor similar to Sublime Text and Brackets, except Atom is actually free. I host all of my development tools and projects on Digital Ocean VPSs. For many of my projects, I have Jenkins set up for continuous integration, meaning I only need to push my changes to Github and the project is automatically built, tested, and deployed. Hosted on Digital Ocean I also have an LDAP server for login to all of my other services, as well as a Piwik installation. Piwik is a free and open source alternative to Google Analytics and other web analytics tools. Since Piwik is self hosted, my users and I know for certain that collected information never leaves my possession. Their information is never given or sold to anyone outside of relation to the project of mine they are utilizing.

That is a basic rundown of my developer life and projects. More posts are coming! So be prepared. If you have any questions about my projects or how I develop you can send me an email or comment below.