AWS Solutions Architect Associate Exam Notes
I completed the AWS Solutions Architect Associate exam in November 2017, after about eight weeks study, with a score of 85%.
Below are a series links to blog posts containing all my study notes, and finally, another blog post containing my thoughts on the exam, as well as some exam feedback and tips for those who will sit the exam after me.
A Basic Stock Trading Backtesting System for F# using Ta-Lib and FSharp.Data
This article is written for the intermediate F# audience who has a basic familiarity of stock trading and technical analysis, and is intended to show the basics of implementing a backtesting system in F#.
If you’re an F# beginner it may not take too long for you to get up to speed on the concepts if you check out a few resources. In particular:
The backtesting strategy which you will implement is a simple SMA crossover where the fast line is 10 bars and the slow one 25. When the fast line crosses above the slow line, a buy signal will be triggered, and when the fast line cross below the slow line, a sell signal will be triggered. Only one long position will exist at any time, so the system will not trigger another buy order until after the long position is sold.
Database version management and figuring out which scripts need to be run when deploying the latest version of your web app
When you are maintaining multiple web apps across environments it can be difficult to keep track of which scripts need to be run to upgrade the database when it comes time to deploy. If you’re maintaining different versions of web apps across environments when the versions can sometimes be significantly out of sync, the difficulty of determining which update scripts need to be run on deployment can explode.
While there are a ton of approaches to keeping your database under version control, if you want something simple and effective that you can implement with minimal time and effort, consider a DatabaseVersionHistory table in your database.
A database version history table will allow you to see at a glance the state the database is in and by comparing it with the update scripts in source control, you will quickly be able to determine which update scripts need to be run.