Talks
Git in Practice: Techniques for Collaborative Development
Lizzie Salmon
Research Software Engineer
This lecture will focus on Git good practices and advanced commands to help developers work more efficiently and collaboratively in shared repositories.
This session will go beyond the simple pull-commit-push workflow and explore practical techniques for maintaining clean, reliable version histories in multi-developer environments.
Material to be covered:
- Collaborating with Git: How Git supports teamwork and version control in modern development, with examples of effective branching strategies and workflows.
- Branching and merging strategies: Understanding feature branches, Git workflows, and trunk-based development to manage change efficiently.
- Advanced Git commands: Practical use of git rebase, git merge, git reset, git bisect, and git cherry-pick. Discussing when and how to use them safely to simplify history and resolve issues.
- Conflict resolution: Techniques for diagnosing and resolving merge conflicts cleanly and confidently.
- Git hooks and CI/CD integration: Leveraging Git hooks to automate quality checks, enforce standards, and integrate testing into CI/CD pipelines.
- Merge requests and code reviews: Best practices for creating, reviewing, and approving merge requests, and giving constructive feedback to maintain high code quality and consistency.
As We May Think - AI for Coding
A discussion of agentic coding tools, including what they are, how they can be used effectively, and how they fit into the history of human-computer interaction
A Crash Course in Natural Language Processing
An introduction to Natural Language Processing (NLP), covering techniques, jargon and use cases.