Skip to content

LGOD: Add DynamoDB for Go Developers workshop - #167

Open
zzenonn wants to merge 10 commits into
aws-samples:masterfrom
zzenonn:lgod-workshop
Open

LGOD: Add DynamoDB for Go Developers workshop#167
zzenonn wants to merge 10 commits into
aws-samples:masterfrom
zzenonn:lgod-workshop

Conversation

@zzenonn

@zzenonn zzenonn commented Jun 1, 2026

Copy link
Copy Markdown

Issue #, if available: #166

Description of changes: Adding the new DynamoDB for Go Developers workshop module (LGOD). Contains 8 modules covering DynamoDB APIs with the AWS SDK for Go v2 and a Go install step in the CloudFormation template.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@zzenonn

zzenonn commented Jun 1, 2026

Copy link
Copy Markdown
Author

@tebanieo Ready for review.

@tebanieo
tebanieo self-requested a review June 1, 2026 15:02
@tebanieo tebanieo self-assigned this Jun 1, 2026
Zenon Saavedra added 5 commits July 24, 2026 23:26
Complete 13-module guided walkthrough covering DynamoDB APIs
with the AWS SDK for Go v2, using an inventory management
system as the teaching scenario.
- Remove rest-api/ module; each module runs directly via go run .
- Add Go installation instructions to setup/Step1
- Renumber cleanup to module 12
- Remove REST API references from landing page and scan review
Installs Go 1.26.3 (arm64) in the VS Code server environment
for the DynamoDB for Go Developers workshop.
- Merge data-model + create-table into data-model-and-table
- Merge query-gsi + query-lsi + scan into read-data
- Collapse delete-data and cleanup into single pages
- Renumber all modules sequentially
- Replace SDK CreateTable/DeleteTable with a CloudFormation template
  (control plane vs data plane teachable moment)
- Add multi-attribute key GSI (status-date-gsi) as a modern alternative
  to the LSI's concatenated status_date key
- Move Repository struct intro to write-data module
- Cleanup now deletes the CloudFormation stack
- Remove broken dynamodb-simple-inventory submodule gitlink and ignore it
zzenonn added 4 commits July 24, 2026 23:38
Convert the DynamoDB for Go Developers workshop from a ground-up "type every
file" build into a fill-in-the-blank flow against the lab branch of
aws-samples/sample-dynamodb-for-go-developers:

- Setup clones the lab branch instead of scaffolding from scratch, and explains
  the TODO(lab) / worked-example / demo-as-checklist workflow.
- Each module step guides the learner to implement the relevant stubbed
  repository function, with a collapsible solution snippet verified to match the
  lab repo's main-branch repository.go byte-for-byte.
- Data-model module reviews and deploys the provided template.yaml; setup and
  landing pages reflect the clone-and-fill-in approach.
- Fix module order so Write (module 3) precedes Read (module 4).
- Keep the full solution reference local to the IDE (git show main:repository.go)
  rather than external GitHub links.
- Prose uses hyphens rather than em-dashes; code blocks left untouched.
…vided

- BatchWriteItem, pagination, secondary-index (GSI/LSI/multi-attribute), and
  scan/parallel-scan exercises now link to the relevant AWS developer guide
  and Go SDK v2 reference pages, since those APIs are otherwise only named.
- SeedData is presented as provided (plain Go plumbing), leaving BatchWriteItems
  as the DynamoDB fill-in for that step; its solution snippet is removed.
- Includes prose tightening in write-data/Step1.
… Scan'

The 'When to use Scan' section listed appropriate scan uses but did not call
out that filtering by a known attribute (e.g. status) belongs on a sparse
index, not a scan - and that is exactly the placed-index GetPendingOrders
already uses. Add that contrast to the intro.
…nk concepts

- Present UpdateOrderStatus, DeleteOrderItem, and PlaceOrder as provided worked
  examples (inline, no expand block), matching the write/read modules. ShipOrder,
  CancelOrder, DeleteOrderWithItems, and GetOrderSnapshot remain fill-ins.
- Hyperlink DynamoDB operations and expression concepts to the AWS API reference,
  developer guide, and Go SDK v2 docs (PutItem, GetItem, Query, UpdateItem,
  DeleteItem, TransactWriteItems, TransactGetItems, condition/update/key-condition
  expressions) inline on the relevant words rather than as prose blocks.
- Fix a stray blank line in the GetUser snippet so it matches the sample exactly.
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.

2 participants