Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Split SQL injection unit #150

Merged
merged 3 commits into from
Apr 26, 2024
Merged

Split SQL injection unit #150

merged 3 commits into from
Apr 26, 2024

Conversation

david-a-wheeler
Copy link
Contributor

We've received many positive comments on the course. However, one note we've had from learner feedback, OpenSSF Governing Board / TAC interviews, and persona analysis, is that the units need to be "bite-sized" (not too big). I believe the point is that a few units are larger than they should be and should be broken apart.

I did a word count on each unit of content, and one unit stood out: the "SQL Injection" unit. This unit was 3,540 words (using a tool that strips out HTML & punctuation to do word counts). It's the only unit above 3,000 words.
That unit is about 1/3 larger than the second-largest unit (2,683 for "Countering Out-of-Bounds Reads and Writes (Buffer Overflow)"), and far larger than the median of 870 words per unit. This unit had internal subdivisions, but internal subdivisions don't seem to be enough.

This commit splits the SQL Injection unit into 3 units, and adds quizzes for each. The largest revised unit ("SQL Injection") is only 1,904 words, 54% of its original size.

FYI, the next-largest units (by word count) are the following (these are the only ones over 2,000 words):

  • 2683 Countering Out-of-Bounds Reads and Writes (Buffer Overflow)
  • 2306 Privacy Requirements
  • 2118 Dynamic Analysis Overview
  • 2116 Filenames (Including Path Traversal and Link Following)
  • 2091 Formal Methods
  • 2036 Cryptographically Secure Pseudo-Random Number Generator (CSPRNG)

This was computed using a simple word-counting tool I wrote.

We've received many positive comments on the course.  However, one
note we've had from learner feedback, OpenSSF Governing Board /
TAC interviews, and persona analysis, is that the units need to be
"bite-sized" (not too big). I believe the point is that
a few units are larger than they should be and should be broken apart.

I did a word count on each unit of content, and one unit
stood out: the "SQL Injection" unit. This unit was 3,540 words
(using a tool that strips out HTML & punctuation to do word counts).
It's the only unit above 3,000 words.
That unit is about 1/3 larger than the second-largest unit
(2,683 for "Countering Out-of-Bounds Reads and Writes (Buffer Overflow)"),
and far larger than the median of 870 words per unit.
This unit had internal subdivisions, but internal subdivisions
don't seem to be enough.

This commit splits the SQL Injection unit into 3 units, and adds
quizzes for each. The largest revised unit ("SQL Injection")
is only 1,904 words, 54% of its original size.

FYI, the next-largest units (by word count) are the following
(these are the only ones over 2,000 words):

* 2683 Countering Out-of-Bounds Reads and Writes (Buffer Overflow)
* 2306 Privacy Requirements
* 2118 Dynamic Analysis Overview
* 2116 Filenames (Including Path Traversal and Link Following)
* 2091 Formal Methods
* 2036 Cryptographically Secure Pseudo-Random Number Generator (CSPRNG)

This was computed using a simple word-counting tool I wrote.

Signed-off-by: David A. Wheeler <dwheeler@dwheeler.com>
Signed-off-by: David A. Wheeler <dwheeler@dwheeler.com>
The SQL injection section was *far* larger than any other section.
This splits up the units into much smaller units closer to
the usual unit size.

Signed-off-by: David A. Wheeler <dwheeler@dwheeler.com>
@david-a-wheeler david-a-wheeler merged commit 687d9c2 into main Apr 26, 2024
3 checks passed
@david-a-wheeler david-a-wheeler deleted the split_sql branch April 26, 2024 21:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant