###### Python ###### .. image:: /_images/image_python.png :width: 150pt .. raw:: html

Python is my language of choice for managing infrastructure, clouds, processing, data science, tools, virtualization, automation, websites, and core platforms. Below is my usual stack for building a new product or startup: ------ Django ------ I am a fan of most ``microservice architectures`` where a lightweight web application only uses ORM for housing web sessions. I am not a fan of app servers that spiral into bloatware, which means I gutted the ORM internals of Django so it acts a passthrough to my Tastypie REST services. I consider my Django servers (and most application servers) nothing more than a deployment tool for sending and receiving HTML + Javascript. Here is my Django shell for starting a new product site running on Docker: https://github.com/jay-johnson/docker-django-nginx-slack-sphinx -------- Tastypie -------- I use Tastypie Django webservers for injecting asynchronous jobs in to my Redis clusters. This architecture allows my products to have websites ``decoupled`` from business logic that is implemented in my proprietary python job processing engines. If you are curious, here's more on Tastypie: https://django-tastypie.readthedocs.io/en/latest/ ---------------------- SQLAlchemy and Alembic ---------------------- I run multiple RDS Amazon Web Service instances using MySQL and managed through SQLAlchemy_ and Alembic_. The ability to skin and ``prototype database schemas`` at high speed is why I created the prototyper repository: https://github.com/jay-johnson/docker-schema-prototyping-with-mysql ---- Boto ---- When I need anything on Amazon Web Services I will build it using AWS Boto_. I have built, managed, and launched ``multiple VPCs`` for my startups. Boto is fantastic if you do not want to manage your AWS cloud from a browser. .. _Boto: https://github.com/boto/boto .. _SQLAlchemy: http://www.sqlalchemy.org/ .. _Alembic: https://pypi.python.org/pypi/alembic #################### Open Source Projects #################### I have created or contributed to the following open source projects: ----------------- Message Simulator ----------------- I have spent years validating and assessing ``highly available`` production AMQP clusters. I built the `Message Simulator`_ as a generalized tool for ensuring any RabbitMQ cluster is ready by simulating message traffic. .. _Message Simulator: https://github.com/GetLevvel/message-simulator ------------------- Want to learn more? ------------------- * .. raw:: html Email me * `Contact Information`_ .. _Contact Information: https://jaypjohnson.com/contact.html .. SEO Metadata SEO_SET_HEADER_URL="https://jaypjohnson.com/python.html" SEO_SET_HEADER_SITENAME="Python Software, Frameworks, ORM, and tools" SEO_SET_HEADER_TITLE="Python Software, Frameworks, ORM, and tools" SEO_SET_HEADER_DESC="A overview of the python software components and stack I use to build and launch products" SEO_SET_HEADER_KEYWORDS="software, architecture, python, high availability, message simulator, distributed, django, rest api, orm, web app, tastypie, sqlalchemy, alembic, boto" SEO_SET_HEADER_TYPE="website" SEO_SET_HEADER_TWITTER_CREATOR="@jayphjohnson" SEO_SET_HEADER_TWITTER_SITE="@jayphjohnson" SEO_SET_HEADER_SEEALSO="https://jaypjohnson.com/" SEO_SET_HEADER_FAVICON="/favicon.png" SEO_SET_HEADER_IMAGE="/_images/image_python.png" SEO_SET_HEADER_CARD="summary" SEO_SET_HEADER_AUTHOR="Jay Johnson"