Skip to content

Commit

Permalink
Merge pull request velotio-tech#3 from velotio-tech/go-study-material
Browse files Browse the repository at this point in the history
Added Go study-material
  • Loading branch information
madhurvelotio authored Feb 1, 2021
2 parents 82b170e + 324ad9a commit cf99821
Show file tree
Hide file tree
Showing 4 changed files with 58 additions and 29 deletions.
17 changes: 10 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,38 +6,41 @@ An intense program for young software engineers to become a cloud native enginee
To know more about us, please click [here](https://www.velotio.com/cloud-native-accelerator-program)

This training program is to kick start your journey in golang and kubernetes development. The aim for this program is to give you
good understanding of golang and cloud native and the best way to do that is by getting your hands dirty. Th
good understanding of golang and cloud native, and the best way to do that is by getting your hands dirty.

This course gives you outlines that what needs to be learned and it covers most of the scenarios. However you can go beyond this
This course gives you outline of what needs to be learned, and covers most of the scenarios. However, you can go beyond this
course and get a deep dive in the world of containers....

---

### Golang Training

- [Books to Read](https://gobyexample.com/)
- [Course to Undergo](https://www.youtube.com/watch?v=YS4e4q9oBaU)
- [Additional course](https://www.udemy.com/course/go-the-complete-developers-guide/?ranMID=39197&ranEAID=JVFxdTr9V80&ranSiteID=JVFxdTr9V80-lbOVF3Q_nKg.LLYxMkWLLg&LSNPUBID=JVFxdTr9V80&utm_source=aff-campaign&utm_medium=udemyads)
- [Assignment]()
- [Study materials](https://github.com/velotio-tech/go-k8s-training/blob/go-assignments/golang/StudyMaterials.md)
- [Assignment](https://github.com/velotio-tech/go-k8s-training/blob/go-assignments/golang/Assignments.md)

---

### Docker Training

- [Course to Undergo](https://www.udemy.com/course/learn-docker/)
- [Assignments]()
- [Study materials](https://github.com/velotio-tech/go-k8s-training/blob/go-assignments/docker/StudyMaterials.md)
- [Assignments](https://github.com/velotio-tech/go-k8s-training/blob/go-assignments/docker/Assignments.md)

---

### Kubernetes Training

- [Course to Undergo](https://www.udemy.com/course/certified-kubernetes-application-developer/)
- [Assignments]()
- [Study materials](https://github.com/velotio-tech/go-k8s-training/blob/go-assignments/kubernetes/StudyMaterials.md)
- [Assignments](https://github.com/velotio-tech/go-k8s-training/blob/go-assignments/kubernetes/Assignments.md)

---

### Contribution.

Please read our submission guidelines at [SUBMISSION.md]() on how to submit your assignments.
Please read our submission guidelines at [SUBMISSION.md](https://github.com/velotio-tech/go-k8s-training/blob/go-assignments/SUBMISSION.md) on how to submit your assignments.

---

Expand Down
30 changes: 9 additions & 21 deletions golang/Assignments.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# go-k8s-training
# Assignments
---
### Exercise 1
### Assignment 1
Topics covered:
API development and Http communication using client, Json Encoding/decoding, DB connection, Docker , Helm, k8s
Create a private git repo for this and add a Readme.md explaining the steps to run you application using Docker and k8s
Expand All @@ -14,27 +14,15 @@ Create a private git repo for this and add a Readme.md explaining the steps to r
4. Store the data in any DB of your choice
5. Containerize your services and test it.
6. Package your application using Helm and deploy on K8s and test it.
Eg: http://localhost:80/users -> all users

Eg:

http://localhost:80/users -> all users

http://localhost:80/users/0/orders -> all orders of user 0

http://localhost:80/users/0/orders/0 - order 0 of user 0

---

### General Requirement

- Comment all the things you are doing

- Code should be structured even though it is an assignment

- write up a simple summary of what you tried to do and how did you do in the commit comments

- Follow some good go repo template like https://github.com/IBM/go-repo-template
---

### Submission

- Fork this repository and work on it

- Raise a PR against this repository

- Add/ Tag the reviewer for that PR
---
38 changes: 38 additions & 0 deletions golang/StudyMaterials.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# Golang Courses and Study Materials

## Courses

- [FreeCodeCamp - Youtube](https://www.youtube.com/watch?v=YS4e4q9oBaU) This is a good video tutorial from scratch for
beginners

- [Udemy](https://www.udemy.com/course/go-the-complete-developers-guide/?ranMID=39197&ranEAID=JVFxdTr9V80&ranSiteID=JVFxdTr9V80-lbOVF3Q_nKg.LLYxMkWLLg&LSNPUBID=JVFxdTr9V80&utm_source=aff-campaign&utm_medium=udemyads)
This is also a good course from scratch, covers some more grounds with fine-grained topics and test your knowledge
with MCQ

Above 2 covers will give you the working knowledge of Golang and you can start developing...

---

## Study Materials

- [Go By Example](https://gobyexample.com/) It covers all the Golang topic's introduction with example programs. It also
provides GoPlayground(online go environment) to test out your code. As it covers just a little introduction of every
topic, should be used as reference or for revision of certain topics.

- [Go Dependency Management Using Go Modules](https://blog.golang.org/using-go-modules) It covers how all the
dependencies are managed in Go, how dependency versioning is done, upgrading dependencies and how to create your own
Go module.

- [Testing In Go](https://tutorialedge.net/golang/intro-testing-in-go/) It covers basics of Go testing using
inbuilt `testing`
package, code coverage and benchmarking.

### Advanced Blogs/Articles:

These are advanced topics that covers internal working of some core features of Golang. These should covered once done
with basic understanding of Golang and assignments.

- [Deep Dive Into Go Channels](https://codeburst.io/diving-deep-into-the-golang-channels-549fd4ed21a8)
- [Deep Dive into Go Scheduler](https://www.ardanlabs.com/blog/2018/08/scheduling-in-go-part1.html)
- [Deep Dive Into Garbage Collector](https://making.pusher.com/golangs-real-time-gc-in-theory-and-practice)

2 changes: 1 addition & 1 deletion kubernetes/StudyMaterials.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,5 @@ the course.

## Advance Articles on the Kubernetes:

Please read this articles only when you finish the first course because basic understanding of dokcer is needed to
Please read this articles only when you finish the first course because basic understanding of docker is needed to
understand the advance concepts.

0 comments on commit cf99821

Please sign in to comment.