Development Details
The Mid-Atlantic Wireless Communications Group started out developing some software even before the first repeater or digipeater was even on the air.
We use a number of different technologies in our development process. We use modern Agile based processes with Secure coding practices and code pipeline tools.
We are always looking for volunteers to help with developing and maintaining the different applications that have been created.
Below is a list of the tools we use. Do not be intimidated by the list, you do not have to be a full stack developer to pitch in and help.
If one of the projects or technologies sounds interesting let us know, we would love to have you jump in.
Sencha extJS
For our applications that have user interfaces, we normally use a web interface and we will use Sencha extJS to create that user inteface.
If you have never heard of it before, you should take a look at it. It is one of the most powerful user interface frameworks and can be used to rapidly create user interfaces.
Node.js
We use Node.js for most of our backend interfaces. Almost all of our applications are client / server interfaces that use a single web page and ajax calls to retrieve data.
Most (and hopefully soon all) of our applications run in AWS Lambda. This saves us money and provides for a horizontally scaling service if needed.
Python
We have a few python scripts around and are used in different projects. We do nor have any projects that are completely based on Python but it is in use where scripting is needed.
PHP
We are almost completely done with using PHP in any of our software. There are just a handful of things left to convert to the more modern architectures.
Shell Scripting
We have a few projects that have unix / linux shell scripting in them. This goes along with the next item and mainly used in the ham-pi project.
Linux / Unix
We do most of our development on Linux or a unix based system. We do not require that our developers use a Linux, Unix or a Mac but those platforms are just so much better for developing.
One of our latest projects, Ham-pi is designed to be run on a Raspberry Pi which is a linux variant which means the entire project is based on Linux / Unix.
Github
We use Github as our code repository. We use Github as our code collaboration tool and follow the branch and pull requests to manage the different development branches.
Our Development Pipeline tools monitor for code pushes and run the new code through the pipeline to deploy code.
We have a couple of different tools for the pipeline and hope to standardize on a single solution in the near future.
Serverless Framework
We use the serverless framework for developing our serverless applications in Lambda.
Xamarin
We have started to use Xamarin for creating a mobile apps. We have a need for cross platform applications and have started to experiment with Xamarin to see if it can meet our requirements.