Skip to content

Commit

Permalink
Merge branch 'MichaelCade:main' into main
Browse files Browse the repository at this point in the history
  • Loading branch information
wenchaoh997 authored Apr 28, 2022
2 parents 0d67a70 + 25f6244 commit a29127b
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 26 deletions.
2 changes: 1 addition & 1 deletion Days/day07.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ To be successful in DevOps you have to have a good knowledge of programming skil

## Understand why you need to learn a programming language.

The reason that Python and Go are recommended so often for DevOps engineers is that a lot of the DevOps tooling is written in either Python or Go, which makes sense if you are going be build DevOps tools. Now this is important as this will determine really what you should learn and that would likely be the most beneficial. If you are going to be building DevOps tools or you are joining a team that does then it would make sense to learn that same language, if you are going to be heavily involved in Kubernetes or Containers then it's more than likely that you would want to choose Go as your programming language. For me, the company I work for (Kasten by Veeam) is in the Cloud-Native ecosystem focused on data management for Kubernetes and everything is written in Go.
The reason that Python and Go are recommended so often for DevOps engineers is that a lot of the DevOps tooling is written in either Python or Go, which makes sense if you are going to be building DevOps tools. Now this is important as this will determine really what you should learn and that would likely be the most beneficial. If you are going to be building DevOps tools or you are joining a team that does then it would make sense to learn that same language, if you are going to be heavily involved in Kubernetes or Containers then it's more than likely that you would want to choose Go as your programming language. For me, the company I work for (Kasten by Veeam) is in the Cloud-Native ecosystem focused on data management for Kubernetes and everything is written in Go.

But then you might not have clear cut reasoning like that to choose you might be a student or transitioning careers with no real decision made for you. I think in this situation then you should choose the one that seems to resonate and fit with the applications you are looking to work with.

Expand Down
54 changes: 29 additions & 25 deletions zh_tw/Days/day01.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,56 +8,60 @@ canonical_url: null
id: 1048731
date: '2022-04-17T10:12:40Z'
---
## Introduction - Day 1
## 介紹 - Day 1

Day 1 of our 90 days and adventure to learn a good foundational understanding of DevOps and tools that help with a DevOps mindset.
在90天旅途的第1天,學習基本的DevOps和工具可以幫助我們建立基本的心境

This learning journey started for me a few years back but my focus then was around virtualisation platforms and cloud based technologies, I was looking mostly into Infrastructure as Code and Application configuration management with Terraform and Chef.
這趟學習旅程開始於我幾年前專注在虛擬化和雲平台相關的技術,我當時主要使用 Terraform 和 Chef 研究 Infrastructure as Code Application configuration management

Fast forward to March 2021, I was given an amazing opportunity to concentrate my efforts around the Cloud Native strategy at Kasten by Veeam. Which was going to be a massive focus on Kubernetes and DevOps and the community surrounding these technologies. I started my learning journey and quickly realised there was a very wide world aside from just learning the fundamentals of Kubernetes and Containerisation and it was then when I started speaking to the community and learning more and more about the DevOps culture, tooling and processes so I started documenting some of the areas I wanted to learn in public.
時間快轉到2021 3月,Veeam 為我提供了一個絕佳的機會讓我能將精力專注於Kasten的Cloud Native strategy。也因為如此我花了很大的時間在 Kubernetes DevOps 及圍繞這些技術的社群上。我開始了我的學習之旅,並很快意識到除了學習 Kubernetes 和容器化的基礎知識之外,還有一個非常廣闊的世界,那時我開始與社群交流並越來越瞭解 DevOps 文化、工具和流程,所以我開始公開紀錄一些我想學的領域。

[So you want to learn DevOps?](https://blog.kasten.io/devops-learning-curve)
[想學DevOps?(英文)](https://blog.kasten.io/devops-learning-curve)

## Let the journey begin
## 讓旅途開始吧!

If you read the above blog, you will see this is a high level contents for my learning journey and I will say at this point I am no where near an expert in any of these sections but what I wanted to do was share some resources both FREE and some paid for but an option for both as we all have different circumstances.
如果你讀了上面的Blog,你會發現這是我學習之旅裡的高品質內容,我會說在這些領域都不是專家,但我想做的是分享一些免費和付費資源,你可以自由選擇,因為我們都有不同的情況。

Over the next 90 days I want to document these resources and cover those foundational areas. I would love for the community to also get involved. Share your journey and resources so we can learn in public and help each other.
在接下來的 90 天裡,我想記錄這些資源並涵蓋不同領域的基礎。 我希望社群也能參與其中。 分享你的旅程和資源,以便我們可以公開學習並互相幫助彼此。

You will see from the opening readme in the project repository that I have split things into sections and it is basically 12 weeks plus 6 days. The first 6 days we will explore the fundamentals of DevOps in general before diving into some of the specific areas. By no way is this list exhaustive and again,I would love for the community to assist in making this a useful resource.
從repo中的readme中可以看到,我將內容拆分為多個部分,基本上是 12 週加 6 天。前 6 天,我們將大致探討 DevOps 的基礎知識,然後再深入一些特定領域。 這份清單絕不是詳盡無遺的,我希望社群能夠協助使其成為有用的資源。

Another resource I will share at this point and that I think everyone should have a good look at, maybe create your own mind map for yourself and your interest and position, is the following:
另外一個我想分享的資源,這能幫助你拓展你有興趣的部分並找到自己的定位:

[DevOps Roadmap](https://roadmap.sh/devops)
[DevOps 路線圖](https://roadmap.sh/devops)

I found this a great resource when I was creating my initial list and blog post on this topic. You can also see there are other areas that go into a lot more detail outside of the 12 topics I have listed here in this repository.
當我開始建立關於這個主題相關的列表和Blog時,我發現這是一個很好的資源。你還可以看到,除了我在這份repo中列出的 12 個主題之外,還有其他更詳細的領域。

## First Steps - What is DevOps?
## 第一步 - 何謂DevOps?

There are so many blog articles and YouTube videos to list here, but as we start the 90 day challenge and we focus on spending around an hour a day learning something new or about DevOps, I thought it was good to get some of the high level of "what DevOps is" down to begin.
有很多Blog和YouTube影片在探討關於DevOps,但是當我們開始 90 天挑戰時,我們得專注於每天花大約一個小時學習新的東西或關於 DevOps,我認為獲得一些高品質的東西是件好事,而我們將從"什麼是 DevOps"開始。

Firstly, DevOps is not a tool. You cannot buy it, it is not a software sku or an open source GitHub repository you can download. It is also not a programming language, it is also not some dark art magic either.
首先,DevOps 不是一種工具。 你不能買它,它不是你可以下載的軟體 sku 或開源 GitHub repo。 它也不是一種程式語言,更不是什麼黑魔法。

DevOps is a way to do smarter things in Software Development. - Hold up... But if you are not a software developer should you turn away right now and not dive into this project??? No. Not at all. Stay... Because DevOps brings together a combination of software development and operations. I mentioned earlier that I was more on the VM side and that would generally fall under the Operations side of the house, but within the community there are people with all different backgrounds where DevOps is 100% going to benefit the individual, Developers, Operations and QA Engineers all can equally learn these best practices by having a better understanding of DevOps.
DevOps 是一種在軟體開發中更聰明的做事情的方法。 - 但休但幾勒……如果你不是軟體開發人員,你不是應該現在就轉身離開而不是深入研究這個項目嗎?
一點都不。 留下來,因為 DevOps 將軟體開發和運營結合在一起。
我之前提過,我主要研究在虛擬機相關的技能,這通常屬於運營方面,但在DevOps社群中,有不同背景的人,DevOps 將 100% 造福於個人、開發人員、運營和 QA 工程師都可以通過更好地了解 DevOps 來學習這些最佳實踐。

DevOps is a set of practices that help to reach the goal of this movement: reducing the time between the ideation phase of a product and its release in production to the end-user or whomever it could be an internal team or customer.
DevOps 是一組幫助達成目標的實踐方法:減少產品的構思階段和產品發佈到最終用戶或任何可能是內部團隊或客戶的人之間的時間。

我們將在第一週深入探討的另一個領域是**敏捷開發**。 DevOps 和敏捷一起被廣泛採用,以實現您的**應用程序**的持續交付。

Another area we will dive into in this first week is around **The Agile Methodology**. DevOps and Agile are widely adopted together to achieve continuous delivery of your **Application**.
從較高層次的方面來解讀,DevOps 想塑造的情境是將可能數年冗長的軟體發佈週期,縮短至更平凡而較小的版本變動。
而另一個關鍵點是 DevOps 工程師有責任打破我之前提到的團隊之間的隔閡:開發人員、運維人員和 QA。

The high level take away is that a DevOps mindset or culture is about shrinking the long, drawn out software release process from potentially years to being able to drop smaller releases more frequently. The other key fundamental point to understand here is the the responsibility of a DevOps engineer to break down silos between the teams I previously mentioned: Developers, Operations and QA.

From a DevOps perspective, **Development, Testing and Deployment** all land with the DevOps team.
從 DevOps 的角度來看,**開發、測試和部署**都屬於 DevOps 團隊。

The final point I will make is to make this as effective and efficient as possible we must leverage **Automation**.
最後我想說的是,我們必須利用 **自動化** 使其盡可能有效和高效。

## Resources
## 資源

I am always open to adding additional resources to these readme files as it is here as a learning tool.
我把這份readme當作一個學習工具,並且保持開放的心態希望能新增更多的資源

My advice is to watch all of the below and hopefully you have also picked something up from the text and explanations above.
我建議看完下列的影片,希望你能從中學到一些基本的名詞

- [DevOps in 5 Minutes](https://www.youtube.com/watch?v=Xrgk023l4lI)
- [What is DevOps? Easy Way](https://www.youtube.com/watch?v=_Gpe1Zn-1fE&t=43s)
- [DevOps roadmap 2022 | Success Roadmap 2022](https://www.youtube.com/watch?v=7l_n97Mt0ko)

If you made it this far, then you will know if this is where you want to be or not. See you on [Day 2](day02.md).
如果你已經看到這裡了, 那你大概會知道你想不想學習DevOps. 我們[Day 2](day02.md).

0 comments on commit a29127b

Please sign in to comment.