Ever thought how NSA cyber experts deal with computer problems? Or at least how they’d be trained with NSA specifications? Here’s a guy who used the Freedom of Information Act to access the training materials of NSA’s Python course. And received a bulk 400-page redacted printout of NSA’s COMP 3321 Python training material.

Obtain – Scan – Upload

Cybersecurity is an important field. Any beginner trying to see their career in this field may go through a number of computer languages, and Python is one. This could be hard when compared to Java, but yields worthful results as many adversaries leverage this for their attacks. While anyone can learn from numerous online sources, here’s how NSA crafted its own material of Python and even encourages the public to seek it.

Chris Swenson is a software engineer, who filed a request to NSA under his right of Freedom of Information Act. This Act let any of citizen to access public documents which are previously unreleased. Here, Swenson obtained the material and turned into a digital copy entirely. He scanned all the documents, ran OCR over text to make them searchable and finally uploaded into Digital Oceans Spaces and Internet Archive.

Accessing the document shows nothing intimidating, and seems learnable by sparing 45-90 minutes in a class setting. This complete course can be learned over a two-week period of full-time study.

NSA encourages to pick Python

NSA says the course, COMP 3321 can be learned in “leisurely pace, for instance during a weekly brown bag lunch.” Further, “If you don’t know any programming languages yet, Python is a good place to start. If you already know a different language, it’s easy to pick Python on the side. Python isn’t entirely free of frustration and confusion, but hopefully, you can avoid those parts until long after you get some good use out of Python.”

Guido van Rossum, the course’s creator says the material can be useful for creating a web application, doing advanced mathematical research or automating tasks, etc. A quick introduction and explanations of why Python is popular among beginning developers and data scientists make it learning reasonable.