Posts

How to get your Data to AWS

Image
Bring On The Data Whether you are dealing with a single massive database, millions of log files or stream of data from thousands of IoT sensors the data AWS offers services that can be combined to facilitate the secure and efficient transport of your data to the cloud. This article will provide an overview of how to handle the three common data sources: files, databases and data streams. How to Handle Files The simplest way to get files into AWS is to upload them to  AWS Simple Storage Service (S3) . S3 supports multi-part uploads of 5 GB chunks to form a single file with a maximum size of 5 TB. By default, S3 uses the Internet to transport the data, therefore if you are transporting sensitive information be sure to use  AWS Key Management Service (KMS)  to perform client-side and server-side data encryption. If you are frequently moving Terabytes of data,  AWS Direct Connect  provides a private, dedicated, 1Gbps or 10Gbps consistent network connection betw

Flutter Framework - Refractored Camera Widget

Image
For those who are new to the Flutter Framework  and looking to learn and use the camera, the  Take a picture using the camera  cookbook is a great place to start. I followed the instructions and it worked fine. The next step for me was to refactor the code so that the camera widget was in its own dart file. How to Avoid Getting "LateInitializationError: Field 'controller' has not been initialized" Error The key is to create async function to wait for the camera to be fully initialized and use it with the already written FutureBuilder . Future < void > initCamera () async { final cameras = await availableCameras (); // Get a specific camera from the list of available cameras. final firstCamera = cameras . first ; // To display the current output from the Camera, // create a CameraController. _controller = CameraController ( // Get a specific camera from the list of available cameras. firstCamera , // Define the r

Docker Commands - A Quick 5 Minute Refresher

Image
This guide is intended for anyone who hasn't used Docker in awhile and is just looking for a quick refresher on command syntax of frequently used Docker commands to run, configure, and manage containers and images. List and Update / Get Your Docker Images To see what Docker images you have on your machine.  docker images  - To list all Docker images on your system docker inspect <Image ID>  - To get more details of the image in JSON docker rmi <Image ID>  - To delete an image from your system docker pull <Repository>:<Tag>  - To update or get an image you need to reference the image using the Repository and Tag Managing Your Containers docker ps  - To list all your currently running containers docker ps -a  - List all persistent containers you have on your system docker rm <Container ID>   - To delete a container from your system Nuke Everything! If all your containers and images are stale and you just want to start with a clean system.  docker syste

How Hackers Turned a Friend to a Foe - An Investigation into the ShadowHammer Operation

Image
Synopsis A sophisticated operation known as ShadowHammer was discovered in 2018 [1].The adversary involved in the ShadowHammer operation was able to compromise a computer vendor’s software update tool and modified it into a trojan downloader. This allowed the adversary to leverage people’s trust of the computer vendor’s brand to get a global audience to freely install the trojanized tool. What is interesting is that for the vast majority of infected systems, the trojanized tool remained dormant. This is because the ShadowHammer operation is a form of supply chain attack. In a supply chain attack, the adversary finds a supplier used by the target that is easier to exploit then the target themselves. The adversary attacks the supplier and uses them to gain access to the target. According to Symantec supply chain attacks have increased by 78% in 2018 [5]. This report will provide an overview of the ShadowHammer operation and provide recommendations for organizations to prevent f

Tips for Cybersecurity Students using Python for the First Time

Image
I'm currently doing a Master's in Cybersecurity and one of the class projects use Python to learn more about Cryptography focused around simple implementations of RSA. So for my fellow peers who have never worked with Python before here are my pointers.  This is most relevant for people enrolled in Georgia Tech's CSC 6035 course and working on the Cryptography project. 1) Depending on your OS you may already have a version of Python installed. This can be dangerous as some Python 2 syntax is not compatible with Python 3. To avoid needless headache type into the command line: python --version If it does not report Python 3.x.x. Go and install it. I can't speak for other OSes but for Linux Python 2 & Python 3 can be installed side-by-side with the caveat being I have to explicitly use python3 to run my code. See the output of my system: kinman@yoga-linux:~$ python --version Python 2.7.15+ kinman@yoga-linux:~$ python3 --version Python 3.6.8 kinm

Insight into Machine Learning: Powers and Pitfalls

Image
Since completing the Microsoft Professional Program in Data Science ( https://academy.microsoft.com/en-us/professional-program/tracks/data-science/ ) almost 2 years ago, I have been keeping a close eye on Machine Learning and Data Science trends. I learned many valuable insights about Machine Learning from this program. While working on a simple Tensorflow example recently I had an experience that perfectly illustrates one of these insights that I'm here to share today. Powers Here is a Git repository ( https://github.com/ActiveState/tensorflask ). In it contains the distillation of the work of an individual or group that took the time to train a Tensorflow model to categorize dogs. By downloading this code you harness the results of many hours of work that people have done.  The work includes curating thousands of sample photos of each type of dog, getting it into the correct format, and then training and tweaking the neural network to establish a very accurate tool

How to Build a Web Services with Serverless + Typescript + DynamoDB

Image
In this article, we are focusing on the setup and use of three technologies to help you start developing Web Applications and Services. The technologies are Serverless, TypeScript and Amazon DynamoDB. Serverless Serverless is a deployment platform that focuses on providing a powerful and capable deploy system that supports multiple cloud platforms. Serverless (the platform) is not to be confused with the "serverless computing" ideology of using managed autoscaling cloud infrastructure instead of server-based cloud infrastructure.  Serverless (the platform) is an implementation of the "serverless computing" ideology.  Serverless abstracts the cloud platform-specific implementation for better usability and improved cloud portability. As a developer, this means you spend less time learning and dealing with platform-specific issues and instead learn cloud transferrable skills! Serverless is designed to be used in place of AWS CloudFormation, Azure Re

How Salesforce uses AWS to Improve The Support Call Experience

Image
In April I wrote about how moving infrastructure to  the cloud is the start of a paradigm shift, and that building intelligence products and services is the next step. Today, I highlight an example of this presented by Salesforce and AWS . Youtube video link:  https://www.youtube.com/watch?v=TEiDEFFZjNw The key AWS services discussed in the video are: Amazon Lex Amazon Lex is a chatbot platform. It uses speech recognition and language understanding technology to analyze text and speech. Amazon Lex can be trained to recognize a users intent and carry out a conversation to collect the necessary data. Amazon Polly Amazon Polly is a text-to-speech service. You supply a string of text and Amazon Polly will return an audio file in a variety of different voices. To learn more about the features see  https://aws.amazon.com/polly/features/ . To see the currently supported languages and voices available for those languages see  https://docs.aws.amazon.com/polly/latest/dg/voicelis