Each course in the "Generative AI for Software Development" curriculum is well thought out, tested, paced well, and graded automatically. There will be many new concepts for someone who is new to computer science or python and software development, but that's what the LLM is there to help with! I gained a deeper appreciation for how to use / partner with an LLM, and throughout the 3 courses, I learned many new Python skills around documentation generation, unit testing, dependency management, and database manipulation.
As an experienced software engineer, I found some of the lectures tedious and problems simple, but partnering with an LLM felt fresh and new and was critical to completing exercises in a timely manner (often with a one-shot response!), especially when I didn't know where to start or how to get unstuck. I must stress, that _I still learned a ton_, even though the LLM did some heavy lifting. For example, I knew about Python's `requirements.txt`, `pip install`, and `conda`. But I learned from the LLM some differences in how `pip` and `conda` manage dependencies that makes a smarter `conda` user today. I also learned from the course lectures about Python docstring formats and tools for HTML generation, among other subjects.
This course starts with the prompt-engineering practice of assigning a role, being specific, providing examples, iterating on a solution, and maintaining a healthy amount of skepticism about the LLM's fallibility (usually because of how I prompted it), and throughout it provides a good palette of domains in which to practice all of this. **Once you get comfortable with how to talk to an LLM and become familiar with its strengths and weaknesses, using one feels a bit like "cheating" on a math test with a calculator—it's a game-changer for the scope of problems you can solve!** The LLM provides all kinds of great insights and know-how: it handles syntax adeptly, provides perfect algorithmic implementations, and handily recommends and employs libraries and techniques that would have just eaten up my time to discover, let alone put to use.
I'm grateful for how Laurence Moroney and his team have distilled these skills into meaningful steps for all to learn and practice at their own pace.