About the data
This site focuses on visits to the no-go area during the most recent year of data available. Since NOAA publishes the data on a six-month delay, currently this site shows data from June 30, 2021 - June 30, 2022.
What is AIS?
AIS is a standard for marine vessels to broadcast and receive information from other nearby vessels regarding their position, course, speed, and basic information about the vessel itself. It is broadcast over the air using the same type of antenna (often the same physical antenna) as VHF radio. As such it is limited to line of sight, generally less than 25 miles depending on the height of the broadcast and receiving antennae.
AIS data is not private. It is broadcast over the air by each vessel that has an AIS transceiver activated for anyone to view and record. There are several commercial firms who specialize in collecting and selling access to AIS data. The AIS data on this site is published by the US government and not subject to copyright.
Subject to range limitations, AIS data may be collected in real time and recorded to a database by simple inexpensive computers such as a Raspberry Pi paired with a software defined radio and VHF antenna.
There are requirements for commercial vessels to broadcast AIS data. More and more recreational vessels have installed AIS transceivers to broadcast their data as well. This offers significant safety benefits, such as being visible on the electronic navigation instruments of nearby vessels, and being able to "see" approaching vessels obscured by weather or geography. Smaller recreational vessels such as fishing boats under 30 feet long are not as likely to have installed AIS equipment.
AIS transceivers may also be turned off. I hate to think that this website might cause some skippers to choose this option rather than suffering a quarter-mile course deviation and going around the no-go area, but it is a possibility.
Data processing for this website
NOAA allows users to download all of their data for the United States on a day-by-day basis, or to draw an area of interest and download all data for that area for a range of dates. I do the latter, for the area around San Juan Island. A few hours after submitting a request, you will receive a link to download a single CSV file with all the data.
The AIS data in the csv file is generally very comprehensible. Some values are null. Curiously, important values such as speed over ground or course direction have designated values to represent a lack of data. For example, a speed of over 100 does not mean what it says, but rather indicates a null value.
The NOAA data is imported into a SQL Server database. SQL Server supports spatial data which makes it very easy to perform queries such as "is this lat/lon point within this polygon?"
The SQL Server data is exported into a partially denormalized SQLite database for use by the website. The points where a vessel was within the no-go area are retained for display on the website with red icons on the chart. Points from the same date that are within an adjacent area are also kept to provide context; these are displayed as green icons on the chart.
The no-go area is a manually drawn polygon using the tools at GeoJSON.io. I purposely omitted a piece at either end: my polygon doesn't go all the way to Cattle Point or Mitchell Bay. Still, many vessels are on the list for simply clipping the corner at Mitchell Bay. I tried to always err on the side of making my polygon too small. In some places it is only 1,000 feet from shore. This is the piece of this site that should be looked at with the most scrutiny for accuracy. I tried for a balance between a minimal number of vertices and line segments versus accuracy. I examined the polygon to find and eliminate the quarter mile segments were all well under 1,320 feet, and half-mile areas around the Lime Kiln Point lighthouse are under 2,640 feet. Every vessel's icon on the maps has a pop-up that will appear if you click or tap on it showing the latitude and longitude for that point. You can always copy and paste these coordinates into Google Maps and use the measure tool (right-click) in Google Maps to verify distances from shore. Please let me know if you find any points marked red (within the no-go area) that measure outside of the quarter- or half-mile range. I'm sure there is a more clever way to do this using existing data describing the shoreline to programmatically generate this polygon, but I am still at the tenderfoot stage on my journey of GIS mastery where that is a little beyond my skills. And I have concerns that the most highly accurate polygon would come at the cost of hundreds more vertices/line segments, which may have negative consequences.