рдФрджреНрдпреЛрдЧрд┐рдХ рдореЗрд╢рд┐рди рд▓рд░реНрдирд┐рдВрдЧ: 10 рдбрд┐рдЬрд╛рдЗрди рд╕рд┐рджреНрдзрд╛рдиреНрддрд╣рд░реВ

рдФрджреНрдпреЛрдЧрд┐рдХ рдореЗрд╢рд┐рди рд▓рд░реНрдирд┐рдВрдЧ: 10 рдбрд┐рдЬрд╛рдЗрди рд╕рд┐рджреНрдзрд╛рдиреНрддрд╣рд░реВ

рдЖрдЬрдХрд▓, рдирдпрд╛рдБ рд╕реЗрд╡рд╛рд╣рд░реВ, рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВ рд░ рдЕрдиреНрдп рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдХрд╛рд░реНрдпрдХреНрд░рдорд╣рд░реВ рд╣рд░реЗрдХ рджрд┐рди рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░рд┐рдиреНрдЫрдиреН рдЬрд╕рд▓реЗ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдЪреАрдЬрд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рд╕рдореНрднрд╡ рдмрдирд╛рдЙрдБрджрдЫ: рд╕реНрдкреЗрд╕рдПрдХреНрд╕ рд░рдХреЗрдЯ рдирд┐рдпрдиреНрддреНрд░рдг рдЧрд░реНрди рд╕рдлреНрдЯрд╡реЗрдпрд░рдмрд╛рдЯ рдЕрд░реНрдХреЛ рдХреЛрдард╛рдорд╛ рд╕реНрдорд╛рд░реНрдЯрдлреЛрди рдорд╛рд░реНрдлрдд рдХреЗрддрд▓реАрд╕рдБрдЧ рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛ рдЧрд░реНрдиред

рд░, рдХрд╣рд┐рд▓реЗрдХрд╛рд╣реАрдБ, рд╣рд░реЗрдХ рдиреМрд╕рд┐рдЦрд┐рдпрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░, рдЪрд╛рд╣реЗ рддреНрдпреЛ рдПрдХ рднрд╛рд╡реБрдХ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рд╣реЛрд╕реН рд╡рд╛ рд╕рд╛рдзрд╛рд░рдг рдлреБрд▓ рд╕реНрдЯреНрдпрд╛рдХ рд╡рд╛ рдбрд╛рдЯрд╛ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ, рдврд┐рд▓реЛ рд╣реЛрд╕реН рд╡рд╛ рдврд┐рд▓реЛ рдпреЛ рдЕрдиреБрднрд╡рдорд╛ рдЖрдЙрдБрдЫ рдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдЩ рд░ рд╕рдлреНрдЯрд╡реЗрдпрд░ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдирдХрд╛ рд▓рд╛рдЧрд┐ рдирд┐рд╢реНрдЪрд┐рдд рдирд┐рдпрдорд╣рд░реВ рдЫрдиреН рдЬрд╕рд▓реЗ рдЬреАрд╡рдирд▓рд╛рдИ рдзреЗрд░реИ рд╕рд░рд▓ рдмрдирд╛рдЙрдБрдЫред

рдпрд╕ рд▓реЗрдЦрдорд╛, рдо 10-рдХрд╛рд░рдХ рдПрдк рдкрджреНрдзрддрд┐рдХреЛ рдЖрдзрд╛рд░рдорд╛, рд╕рдЬрд┐рд▓реИрд╕рдБрдЧ рдЕрдиреБрдкреНрд░рдпреЛрдЧ/рд╕реЗрд╡рд╛рдорд╛ рдПрдХреАрдХреГрдд рдЧрд░реНрди рд╕рдХреЛрд╕реН рднрдиреЗрд░ рдФрджреНрдпреЛрдЧрд┐рдХ рдореЗрд╕рд┐рди рд▓рд░реНрдирд┐рдЩрд▓рд╛рдИ рдХрд╕рд░реА рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЧрд░реНрдиреЗ рднрдиреЗрд░ 12 рд╕рд┐рджреНрдзрд╛рдиреНрддрд╣рд░реВ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд░реВрдкрдорд╛ рд╡рд░реНрдгрди рдЧрд░реНрдиреЗрдЫреБред Heroku рдЯреЛрд▓реА рджреНрд╡рд╛рд░рд╛ рд╕реБрдЭрд╛рд╡ред рдореЗрд░реЛ рдкрд╣рд▓ рдпрд╕ рдкреНрд░рд╡рд┐рдзрд┐рдХреЛ рдЬрд╛рдЧрд░реВрдХрддрд╛ рдмрдврд╛рдЙрди рд╣реЛ, рдЬрд╕рд▓реЗ рдзреЗрд░реИ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВ рд░ рдбреЗрдЯрд╛ рд╡рд┐рдЬреНрдЮрд╛рди рдорд╛рдирд┐рд╕рд╣рд░реВрд▓рд╛рдИ рдорджреНрджрдд рдЧрд░реНрди рд╕рдХреНрдЫред

рдпреЛ рд▓реЗрдЦ рдФрджреНрдпреЛрдЧрд┐рдХ рдореЗрд╕рд┐рди рд▓рд░реНрдирд┐рдЩрдХреЛ рдмрд╛рд░реЗрдорд╛ рд▓реЗрдЦрд╣рд░реВрдХреЛ рд╢реНрд░реГрдВрдЦрд▓рд╛рдХреЛ рдкреНрд░рд╕реНрддрд╛рд╡рдирд╛ рд╣реЛред рддрд┐рдиреАрд╣рд░реВрдорд╛ рдо рдХрд╕рд░реА рд╡рд╛рд╕реНрддрд╡рдорд╛ рдореЛрдбреЗрд▓ рдмрдирд╛рдЙрдиреЗ рд░ рдЙрддреНрдкрд╛рджрдирдорд╛ рд▓рдиреНрдЪ рдЧрд░реНрдиреЗ рдмрд╛рд░реЗ рдХреБрд░рд╛ рдЧрд░реНрдиреЗрдЫреБ, рдпрд╕рдХреЛ рд▓рд╛рдЧрд┐ рдПрдкреАрдЖрдИ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН, рд╕рд╛рдереИ рд╡рд┐рднрд┐рдиреНрди рдХреНрд╖реЗрддреНрд░рд╣рд░реВ рд░ рдХрдореНрдкрдиреАрд╣рд░реВрдХрд╛ рдЙрджрд╛рд╣рд░рдгрд╣рд░реВ рдЬреБрди рддрд┐рдиреАрд╣рд░реВрдХреЛ рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрдорд╛ рдирд┐рд░реНрдорд┐рдд ML рдЫред

рд╕рд┐рджреНрдзрд╛рдиреНрдд 1: рдПрдХ рдХреЛрдб рдЖрдзрд╛рд░

рдХреЗрд╣реА рдкреНрд░реЛрдЧреНрд░рд╛рдорд░рд╣рд░реВ рдкрд╣рд┐рд▓реЛ рдЪрд░рдгрд╣рд░реВрдорд╛, рдпреЛ рдкрддреНрддрд╛ рд▓рдЧрд╛рдЙрди рдЕрд▓реНрдЫреАрдкрдирдмрд╛рдЯ рдмрд╛рд╣рд┐рд░ (рд╡рд╛ рдЖрдлреНрдиреИ рдХрд╛рд░рдгрдХреЛ рд▓рд╛рдЧрд┐), Git рдХреЛ рдмрд╛рд░реЗрдорд╛ рдмрд┐рд░реНрд╕рдиреНрдЫрдиреНред рддрд┐рдиреАрд╣рд░реВ рдпрд╛ рдд рд╢рдмреНрдж рдкреВрд░реНрдг рд░реВрдкрдорд╛ рдмрд┐рд░реНрд╕рдиреНрдЫрдиреН, рдЕрд░реНрдерд╛рддреН, рддрд┐рдиреАрд╣рд░реВрд▓реЗ рдбреНрд░рд╛рдЗрднрдорд╛ рдПрдХрдЕрд░реНрдХрд╛рд▓рд╛рдИ рдлрд╛рдЗрд▓рд╣рд░реВ рдлрд╛рд▓реНрдЫрдиреН/рдХреЗрд╡рд▓ рдкрд╛рда рдлрд╛рд▓реНрдЫрдиреН/рдкрд░реЗрд╡рд╛рд╣рд░реВрджреНрд╡рд╛рд░рд╛ рдкрдард╛рдЙрдБрдЫрдиреН, рд╡рд╛ рддрд┐рдиреАрд╣рд░реВрд▓реЗ рдЖрдлреНрдиреЛ рдХрд╛рд░реНрдпрдкреНрд░рд╡рд╛рд╣рдХреЛ рдорд╛рдзреНрдпрдордмрд╛рдЯ рд╕реЛрдЪреНрджреИрдирдиреН, рд░ рдкреНрд░рддреНрдпреЗрдХрд▓рд╛рдИ рдЖрдлреНрдиреИ рд╢рд╛рдЦрд╛рдорд╛ рдкрдард╛рдЙрдБрдЫрдиреН, рд░ рддреНрдпрд╕рдкрдЫрд┐ред рдорд╛рд╕реНрдЯрд░

рдпреЛ рд╕рд┐рджреНрдзрд╛рдиреНрдд рднрдиреНрдЫ: рдПрдЙрдЯрд╛ рдХреЛрдбрдмреЗрд╕ рд░ рдзреЗрд░реИ рдбрд┐рдкреНрд▓реЛрдЗрдореЗрдиреНрдЯрд╣рд░реВ рдЫрдиреНред

Git рджреБрдмреИ рдЙрддреНрдкрд╛рджрди рд░ рдЕрдиреБрд╕рдиреНрдзрд╛рди рд░ рд╡рд┐рдХрд╛рд╕ (R&D) рдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ, рдЬрд╕рдорд╛ рдпреЛ рдкреНрд░рд╛рдпрдГ рдкреНрд░рдпреЛрдЧ рд╣реБрдБрджреИрдиред

рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, R&D рдЪрд░рдгрдорд╛ рддрдкрд╛рдИрд▓реЗ рд╡рд┐рднрд┐рдиреНрди рдбреЗрдЯрд╛ рдкреНрд░рд╢реЛрдзрди рд╡рд┐рдзрд┐рд╣рд░реВ рд░ рдореЛрдбреЗрд▓рд╣рд░реВрд╕рдБрдЧ рдХрдорд┐рдЯрд╣рд░реВ рдЫреЛрдбреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рддреНрдпрд╕рдкрдЫрд┐ рд╕рдмреИ рднрдиреНрджрд╛ рд░рд╛рдореНрд░реЛ рдЪрдпрди рдЧрд░реНрди рд░ рд╕рдЬрд┐рд▓реИрд╕рдБрдЧ рдпрд╕рдХреЛ рд╕рд╛рде рдХрд╛рдо рдЬрд╛рд░реА рд░рд╛рдЦреНрдиред

рджреЛрд╕реНрд░реЛ, рдЙрддреНрдкрд╛рджрдирдорд╛ рдпреЛ рдПрдХ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдХреБрд░рд╛ рд╣реЛ - рддрдкрд╛рдЗрдБрд▓реЗ рддрдкрд╛рдЗрдБрдХреЛ рдХреЛрдб рдХрд╕рд░реА рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрджрдЫ рднрдиреЗрд░ рдирд┐рд░рдиреНрддрд░ рд╣реЗрд░реНрдиреБ рдкрд░реНрдЫ рд░ рдХреБрди рдореЛрдбреЗрд▓рд▓реЗ рдЙрддреНрдХреГрд╖реНрдЯ рдирддрд┐рдЬрд╛рд╣рд░реВ рдЙрддреНрдкрд╛рджрди рдЧрд░реНрдпреЛ, рдХреБрди рдХреЛрдбрд▓реЗ рдЕрдиреНрддрдорд╛ рдХрд╛рдо рдЧрд░реНтАНрдпреЛ рд░ рдХреЗ рднрдпреЛ рдЬрд╕рд▓реЗ рдпрд╕рд▓реЗ рдХрд╛рдо рдЧрд░реНрди рдЫреЛрдбреНрдпреЛ рд╡рд╛ рдЧрд▓рдд рдкрд░рд┐рдгрд╛рдорд╣рд░реВ рдЙрддреНрдкрд╛рджрди рдЧрд░реНрди рдерд╛рд▓реНрдпреЛ рднрдиреЗрд░ рдЬрд╛рдиреНрди рдЖрд╡рд╢реНрдпрдХ рдЫред ред рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛рд╣рд░реВ рддреНрдпрд╕рдХрд╛ рд▓рд╛рдЧрд┐ рд╣реБрдиреН!

рддрдкрд╛рдИрдВрд▓реЗ рдЖрдлреНрдиреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдХреЛ рдкреНрдпрд╛рдХреЗрдЬ рдкрдирд┐ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рдпрд╕рд▓рд╛рдИ рд░рд╛рдЦреЗрд░, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, Gemfury рдорд╛, рд░ рддреНрдпрд╕рдкрдЫрд┐ рдХреЗрд╡рд▓ рдЕрдиреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐ рдпрд╕рдмрд╛рдЯ рдкреНрд░рдХрд╛рд░реНрдпрд╣рд░реВ рдЖрдпрд╛рдд рдЧрд░реНрдиреБрд╣реЛрд╕реН, рддрд╛рдХрд┐ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ 1000 рдкрдЯрдХ рдкреБрди: рд▓реЗрдЦреНрди рдирдкрд░реЛрд╕реН, рддрд░ рдкрдЫрд┐ рддреНрдпрд╕рдорд╛ рдердкред

рд╕рд┐рджреНрдзрд╛рдиреНрдд реи: рдирд┐рд░реНрднрд░рддрд╛рд╣рд░реВ рд╕реНрдкрд╖реНрдЯ рд░реВрдкрдорд╛ рдШреЛрд╖рдгрд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН рд░ рдЕрд▓рдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реН

рдкреНрд░рддреНрдпреЗрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛рдорд╛ тАЛтАЛрдлрд░рдХ-рдлрд░рдХ рдкреБрд╕реНрддрдХрд╛рд▓рдпрд╣рд░реВ рдЫрдиреН рдЬреБрди рддрдкрд╛рдИрдВрд▓реЗ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдХрддреИ рд▓рд╛рдЧреВ рдЧрд░реНрди рдмрд╛рд╣рд┐рд░рдмрд╛рдЯ рдЖрдпрд╛рдд рдЧрд░реНрдиреБрд╣реБрдиреНрдЫред рдЪрд╛рд╣реЗ рдпреЛ рдкрд╛рдЗрдерди рдкреБрд╕реНрддрдХрд╛рд▓рдпрд╣рд░реВ, рд╡рд╛ рд╡рд┐рднрд┐рдиреНрди рдЙрджреНрджреЗрд╢реНрдпрдХрд╛ рд▓рд╛рдЧрд┐ рдЕрдиреНрдп рднрд╛рд╖рд╛рд╣рд░реВрдХреЛ рдкреБрд╕реНрддрдХрд╛рд▓рдпрд╣рд░реВ, рд╡рд╛ рдкреНрд░рдгрд╛рд▓реА рдЙрдкрдХрд░рдгрд╣рд░реВ - рддрдкрд╛рдИрдВрдХреЛ рдХрд╛рд░реНрдп рд╣реЛ:

  • рд╕реНрдкрд╖реНрдЯ рд░реВрдкрдорд╛ рдирд┐рд░реНрднрд░рддрд╛рд╣рд░реВ рдШреЛрд╖рдгрд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН, рддреНрдпреЛ рд╣реЛ, рдПрдЙрдЯрд╛ рдлрд╛рдЗрд▓ рдЬрд╕рдорд╛ рд╕рдмреИ рдкреБрд╕реНрддрдХрд╛рд▓рдпрд╣рд░реВ, рдЙрдкрдХрд░рдгрд╣рд░реВ, рд░ рддрд┐рдиреАрд╣рд░реВрдХрд╛ рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВ рд╕рдорд╛рд╡реЗрд╢ рд╣реБрдиреНрдЫрдиреН рдЬреБрди рддрдкрд╛рдИрдВрдХреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдорд╛ тАЛтАЛрдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫ рд░ рдЬреБрди рд╕реНрдерд╛рдкрдирд╛ рд╣реБрдиреБрдкрд░реНрдЫ (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдкрд╛рдЗрдердирдорд╛ рдпреЛ Pipfile рд╡рд╛ requirements.txt рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред рд▓рд┐рдЩреНрдХ рдЬрд╕рд▓реЗ рд░рд╛рдореНрд░реЛрд╕рдБрдЧ рдмреБрдЭреНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ: realpython.com/pipenv-guide)
  • рд╡рд┐рдХрд╛рд╕рдХреЛ рдХреНрд░рдордорд╛ рддрдкрд╛рдИрдВрдХреЛ рдХрд╛рд░реНрдпрдХреНрд░рдордХреЛ рд▓рд╛рдЧрд┐ рд╡рд┐рд╢реЗрд╖ рд░реВрдкрдорд╛ рдирд┐рд░реНрднрд░рддрд╛рд╣рд░реВ рдЕрд▓рдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред рддрдкрд╛рдЗрдБ рдирд┐рд░рдиреНрддрд░ рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВ рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрди рд░ рдкреБрди: рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрди рдЪрд╛рд╣рдиреБрд╣реБрдиреНрди, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, Tensorflow?

рдпрд╕ рддрд░рд┐рдХрд╛рд▓реЗ, рднрд╡рд┐рд╖реНрдпрдорд╛ рддрдкрд╛рдИрдВрдХреЛ рдЯреЛрд▓реАрдорд╛ рд╕рд╛рдореЗрд▓ рд╣реБрдиреЗ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ рддрдкрд╛рдИрдВрдХреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдорд╛ тАЛтАЛрдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдПрдХрд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдпрд╣рд░реВ рд░ рддрд┐рдиреАрд╣рд░реВрдХрд╛ рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВрд╕рдБрдЧ рддреБрд░реБрдиреНрддреИ рдкрд░рд┐рдЪрд┐рдд рд╣реБрди рд╕рдХреНрд╖рдо рд╣реБрдиреЗрдЫрдиреН, рд░ рддрдкрд╛рдИрдВрд▓реЗ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдкрдорд╛ рд╕реНрдерд╛рдкрд┐рдд рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВ рд░ рдкреБрд╕реНрддрдХрд╛рд▓рдпрд╣рд░реВ рдЖрдлреИрдВ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЧрд░реНрдиреЗ рдЕрд╡рд╕рд░ рдкрдирд┐ рдкрд╛рдЙрдиреБрд╣реБрдиреЗрдЫред рдкрд░рд┐рдпреЛрдЬрдирд╛, рдЬрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдкреБрд╕реНрддрдХрд╛рд▓рдпрд╣рд░реВ рд╡рд╛ рддрд┐рдиреАрд╣рд░реВрдХреЛ рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВрдХреЛ рдЕрд╕рдВрдЧрддрддрд╛рдмрд╛рдЯ рдмрдЪреНрди рдорджреНрджрдд рдЧрд░реНрдиреЗрдЫред

рддрдкрд╛рдЗрдБрдХреЛ рдПрдкреНрд▓рд┐рдХреЗрд╕рдирд▓реЗ рдкреНрд░рдгрд╛рд▓реА рдЙрдкрдХрд░рдгрд╣рд░реВрдорд╛ рдкрдирд┐ рднрд░ рдкрд░реНрдиреБ рд╣реБрдБрджреИрди рдЬреБрди рд╡рд┐рд╢реЗрд╖ OS рдорд╛ рд╕реНрдерд╛рдкрдирд╛ рд╣реБрди рд╕рдХреНрдЫред рдпреА рдЙрдкрдХрд░рдгрд╣рд░реВ рдкрдирд┐ рдирд┐рд░реНрднрд░рддрд╛ рдкреНрд░рдХрдЯреАрдХрд░рдгрдорд╛ рдШреЛрд╖рдгрд╛ рдЧрд░рд┐рдиреБрдкрд░реНрдЫред рдЙрдкрдХрд░рдгрд╣рд░реВрдХреЛ рд╕рдВрд╕реНрдХрд░рдг (рд╕рд╛рдереИ рддрд┐рдиреАрд╣рд░реВрдХреЛ рдЙрдкрд▓рдмреНрдзрддрд╛) рдПрдХ рд╡рд┐рд╢реЗрд╖ OS рдХреЛ рдкреНрд░рдгрд╛рд▓реА рдЙрдкрдХрд░рдгрд╣рд░реВрд╕рдБрдЧ рдореЗрд▓ рдирдЦрд╛рдиреЗ рдЕрд╡рд╕реНрдерд╛рд╣рд░реВрдмрд╛рдЯ рдмрдЪреНрдирдХреЛ рд▓рд╛рдЧрд┐ рдпреЛ рдЖрд╡рд╢реНрдпрдХ рдЫред

рдпрд╕реИрд▓реЗ, рдпрджрд┐ рдХрд░реНрд▓ рд▓рдЧрднрдЧ рд╕рдмреИ рдХрдореНрдкреНрдпреВрдЯрд░рд╣рд░реВрдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ рднрдиреЗ, рддрдкрд╛рдИрд▓реЗ рдЕрдЭреИ рдкрдирд┐ рдирд┐рд░реНрднрд░рддрд╛рдорд╛ рдШреЛрд╖рдгрд╛ рдЧрд░реНрдиреБрдкрд░реНрдЫ, рдХрд┐рдирдХрд┐ рдЕрд░реНрдХреЛ рдкреНрд▓реЗрдЯрдлрд░реНрдордорд╛ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдЧрд░реНрджрд╛ рдпреЛ рддреНрдпрд╣рд╛рдБ рдирд╣реБрди рд╕рдХреНрдЫ рд╡рд╛ рд╕рдВрд╕реНрдХрд░рдг рддрдкрд╛рдИрд▓рд╛рдИ рд╕реБрд░реБрдорд╛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реБрди рд╕рдХреНрдЫред

рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рддрдкрд╛рдИрдВрдХреЛ requirements.txt рдпрд╕реНрддреЛ рджреЗрдЦрд┐рди рд╕рдХреНрдЫ:

# Model Building Requirements
numpy>=1.18.1,<1.19.0
pandas>=0.25.3,<0.26.0
scikit-learn>=0.22.1,<0.23.0
joblib>=0.14.1,<0.15.0

# testing requirements
pytest>=5.3.2,<6.0.0

# packaging
setuptools>=41.4.0,<42.0.0
wheel>=0.33.6,<0.34.0

# fetching datasets
kaggle>=1.5.6,<1.6.0

рд╕рд┐рджреНрдзрд╛рдиреНрдд 3: рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рдирд╣рд░реВ

рдзреЗрд░реИрд▓реЗ AWS рдмрд╛рдЯ рдкрд╛рд╕рд╡рд░реНрдб рд░ рдЕрдиреНрдп рдХреБрдЮреНрдЬреАрд╣рд░реВ рд╕рд╣рд┐рдд рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рднрдгреНрдбрд╛рд░рд╣рд░реВрдорд╛ GitHub рдорд╛ рдЧрд▓реНрддрд┐рд▓реЗ рдХреЛрдб рдЕрдкрд▓реЛрдб рдЧрд░реНрдиреЗ, рднреЛрд▓рд┐рдкрд▓реНрдЯ $ 6000, рд╡рд╛ $ 50000 рдХреЛ рдЛрдг рд▓рд┐рдПрд░ рдЙрдареЗрдХреЛ рдХрдерд╛рд╣рд░реВ рдзреЗрд░реИрд▓реЗ рд╕реБрдиреЗрдХрд╛ рдЫрдиреНред

рдФрджреНрдпреЛрдЧрд┐рдХ рдореЗрд╢рд┐рди рд▓рд░реНрдирд┐рдВрдЧ: 10 рдбрд┐рдЬрд╛рдЗрди рд╕рд┐рджреНрдзрд╛рдиреНрддрд╣рд░реВ

рдирд┐рд╕реНрд╕рдиреНрджреЗрд╣, рдпреА рдШрдЯрдирд╛рд╣рд░реВ рдЪрд░рдо, рддрд░ рдзреЗрд░реИ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдЫрдиреНред рдпрджрд┐ рддрдкрд╛рдЗрдБ рддрдкрд╛рдЗрдБрдХреЛ рдкреНрд░рдорд╛рдгрд╣рд░реВ рд╡рд╛ рдХреЛрдб рднрд┐рддреНрд░ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рдирдХреЛ рд▓рд╛рдЧрд┐ рдЖрд╡рд╢реНрдпрдХ рдЕрдиреНрдп рдбреЗрдЯрд╛ рднрдгреНрдбрд╛рд░ рдЧрд░реНрдиреБрд╣реБрдиреНрдЫ рднрдиреЗ, рддрдкрд╛рдЗрдБ рдЧрд▓реНрддреА рдЧрд░реНрджреИ рд╣реБрдиреБрд╣реБрдиреНрдЫ, рд░ рдорд▓рд╛рдИ рд▓рд╛рдЧреНрдЫ рдХрд┐рди рд╡реНрдпрд╛рдЦреНрдпрд╛ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫреИрдиред

рдпрд╕рдХреЛ рд╡рд┐рдХрд▓реНрдк рднрдиреЗрдХреЛ рд╡рд╛рддрд╛рд╡рд░рдгреАрдп рдЪрд░рд╣рд░реВрдорд╛ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рдирд╣рд░реВ рднрдгреНрдбрд╛рд░рдг рдЧрд░реНрдиреБ рд╣реЛред рддрдкрд╛рдИрдВ рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд░ рдмрд╛рд░реЗ рдердк рдкрдвреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рдпрд╣рд╛рдБ.

рдбреЗрдЯрд╛рдХрд╛ рдЙрджрд╛рд╣рд░рдгрд╣рд░реВ рдЬреБрди рд╕рд╛рдорд╛рдиреНрдпрддрдпрд╛ рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд░рд╣рд░реВрдорд╛ рднрдгреНрдбрд╛рд░рдг рдЧрд░рд┐рдиреНрдЫ:

  • рдбреЛрдореЗрди рдирд╛рдорд╣рд░реВ
  • API URLs/URI's
  • рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░ рдирд┐рдЬреА рдХреБрдЮреНрдЬреАрд╣рд░реВ
  • рд╕рдореНрдкрд░реНрдХрд╣рд░реВ (рдореЗрд▓, рдлреЛрди, рдЖрджрд┐)

рдпрд╕ рддрд░рд┐рдХрд╛рд▓реЗ рддрдкрд╛рдЗрдБрдХреЛ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдЪрд░ рдкрд░рд┐рд╡рд░реНрддрди рднрдПрдорд╛ рддрдкрд╛рдЗрдБрд▓реЗ рд▓рдЧрд╛рддрд╛рд░ рдХреЛрдб рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрдиреБ рдкрд░реНрджреИрдиред рдпрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рд╕рдордп, рдкреНрд░рдпрд╛рд╕ рд░ рдкреИрд╕рд╛ рдмрдЪрдд рдЧрд░реНрди рдорджреНрджрдд рдЧрд░реНрдиреЗрдЫред

рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдпрджрд┐ рддрдкрд╛рдЗрдБ рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рд╕рдЮреНрдЪрд╛рд▓рди рдЧрд░реНрди Kaggle API рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реБрдиреНрдЫ (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рд╕рдлреНрдЯрд╡реЗрдпрд░ рдбрд╛рдЙрдирд▓реЛрдб рдЧрд░реНрдиреБрд╣реЛрд╕реН рд░ рдореЛрдбреЗрд▓ рд░рд╛рдореНрд░реЛрд╕рдБрдЧ рдХрд╛рдо рдЧрд░реНрджрдЫ рднрдиреЗрд░ рдкрд░реАрдХреНрд╖рдг рдЧрд░реНрди рдпрд╕рдХреЛ рдорд╛рдзреНрдпрдордмрд╛рдЯ рдореЛрдбреЗрд▓ рдЪрд▓рд╛рдЙрдиреБрд╣реЛрд╕реН), рддреНрдпрд╕рдкрдЫрд┐ Kaggle рдмрд╛рдЯ рдирд┐рдЬреА рдХреБрдЮреНрдЬреАрд╣рд░реВ, рдЬрд╕реНрддреИ KAGGLE_USERNAME рд░ KAGGLE_KEY, рд╣реБрдиреБрдкрд░реНрдЫред рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд░ рдорд╛ рднрдгреНрдбрд╛рд░рдгред

рд╕рд┐рджреНрдзрд╛рдиреНрдд рек: рддреЗрд╕реНрд░реЛ рдкрдХреНрд╖ рд╕реЗрд╡рд╛рд╣рд░реВ

рдХреЛрдбрдХреЛ рд╕рдиреНрджрд░реНрднрдорд╛ рд╕реНрдерд╛рдиреАрдп рд░ рддреЗрд╕реНрд░реЛ-рдкрдХреНрд╖ рд╕реНрд░реЛрддрд╣рд░реВ рдмреАрдЪ рдХреБрдиреИ рднрд┐рдиреНрдирддрд╛ рдирд╣реБрдиреЗ рдЧрд░реА рдХрд╛рд░реНрдпрдХреНрд░рдо рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреЗ рд╡рд┐рдЪрд╛рд░ рдпрд╣рд╛рдБ рдЫред рдЙрджрд╛рд╣рд░рдг рдХреЛ рд▓рд╛рдЧреА, рддрдкрд╛рдЗрдБ рджреБрдмреИ рд╕реНрдерд╛рдиреАрдп MySQL рд░ рддреЗрд╕реНрд░реЛ-рдкрдХреНрд╖ рдПрдХ рдЬреЛрдбреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рдЧреБрдЧрд▓ рдирдХреНрд╕рд╛ рд╡рд╛ рдЯреНрд╡рд┐рдЯрд░ рдПрдкреАрдЖрдИ рдЬрд╕реНрддрд╛ рдмрд┐рднрд┐рдиреНрди рдПрдкреАрдЖрдИрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЙрд╣реА рдЬрд╛рдиреНрдЫред

рддреЗрд╕реНрд░реЛ-рдкрдХреНрд╖ рд╕реЗрд╡рд╛ рдЕрд╕рдХреНрд╖рдо рдЧрд░реНрди рд╡рд╛ рдЕрд░реНрдХреЛ рдЬрдбрд╛рди рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐, рддрдкрд╛рдИрдВрд▓реЗ рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд░рдХреЛ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рдирдорд╛ рдХреБрдЮреНрдЬреАрд╣рд░реВ рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ, рдЬреБрди рдореИрд▓реЗ рдорд╛рдерд┐рдХреЛ рдЕрдиреБрдЪреНрдЫреЗрджрдорд╛ рдХреБрд░рд╛ рдЧрд░реЗрдХреЛ рдЫреБред

рддреНрдпрд╕реЛрднрдП, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдкреНрд░рддреНрдпреЗрдХ рдкрдЯрдХ рдХреЛрдб рднрд┐рддреНрд░ рдбреЗрдЯрд╛рд╕реЗрдЯрд╣рд░реВ рднрдПрдХрд╛ рдлрд╛рдЗрд▓рд╣рд░реВрдХреЛ рдорд╛рд░реНрдЧ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрдиреБрдХреЛ рд╕рдЯреНрдЯрд╛, pathlib рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБ рд░ config.py рдорд╛ рдбреЗрдЯрд╛рд╕реЗрдЯрд╣рд░реВрдХреЛ рдорд╛рд░реНрдЧ рдШреЛрд╖рдгрд╛ рдЧрд░реНрдиреБ рд░рд╛рдореНрд░реЛ рд╣реБрдиреНрдЫ, рддрд╛рдХрд┐ рддрдкрд╛рдИрдВрд▓реЗ рдЬреБрдирд╕реБрдХреИ рд╕реЗрд╡рд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрднрдПрди (рдХрд╛ рд▓рд╛рдЧрд┐ред рдЙрджрд╛рд╣рд░рдг, CircleCI), рдХрд╛рд░реНрдпрдХреНрд░рдорд▓реЗ рдирдпрд╛рдБ рд╕реЗрд╡рд╛рдорд╛ рдирдпрд╛рдБ рдлрд╛рдЗрд▓ рдкреНрд░рдгрд╛рд▓реАрдХреЛ рд╕рдВрд░рдЪрдирд╛рд▓рд╛рдИ рдзреНрдпрд╛рдирдорд╛ рд░рд╛рдЦреНрджреИ рдбреЗрдЯрд╛рд╕реЗрдЯрд╣рд░реВрдХреЛ рдорд╛рд░реНрдЧ рдкрддреНрддрд╛ рд▓рдЧрд╛рдЙрди рд╕рдХреНрд╖рдо рднрдПрдХреЛ рдерд┐рдпреЛред

рд╕рд┐рджреНрдзрд╛рдиреНрдд 5. рдирд┐рд░реНрдорд╛рдг, рд░рд┐рд▓реАрдЬ, рд░рдирдЯрд╛рдЗрдо

рдбреЗрдЯрд╛ рд╡рд┐рдЬреНрдЮрд╛рдирдорд╛ рдзреЗрд░реИ рд╡реНрдпрдХреНрддрд┐рд╣рд░реВрд▓реЗ рдЖрдлреНрдиреЛ рд╕рдлреНрдЯрд╡реЗрдпрд░ рд▓реЗрдЦрди рдХреМрд╢рд▓ рд╕реБрдзрд╛рд░ рдЧрд░реНрди рдпреЛ рдЙрдкрдпреЛрдЧреА рдкрд╛рдЙрдБрдЫрдиреНред рдпрджрд┐ рд╣рд╛рдореА рд╣рд╛рдореНрд░реЛ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╕рдХреЗрд╕рдореНрдо рджреБрд░реНрд▓рдн рд░реВрдкрдорд╛ рдХреНрд░реНрдпрд╛рд╕ рдЧрд░реНрди рдЪрд╛рд╣рдиреНрдЫреМрдВ рд░ рд╕рдХреЗрд╕рдореНрдо рд▓рд╛рдореЛ рд╕рдордпрд╕рдореНрдо рдЕрд╕рдлрд▓рддрд╛ рдмрд┐рдирд╛ рдХрд╛рдо рдЧрд░реНрди рдЪрд╛рд╣рдиреНрдЫреМрдВ, рд╣рд╛рдореАрд▓реЗ рдирдпрд╛рдБ рд╕рдВрд╕реНрдХрд░рдг рдЬрд╛рд░реА рдЧрд░реНрдиреЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛рд▓рд╛рдИ 3 рдЪрд░рдгрд╣рд░реВрдорд╛ рд╡рд┐рднрд╛рдЬрди рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ:

  1. рд╕реНрдЯреЗрдЬ рд╕рдореНрдореЗрд▓рдирд╣рд░реБред рддрдкрд╛рдИрд▓реЗ рдЖрдлреНрдиреЛ рдмреЗрдпрд░ рдХреЛрдбрд▓рд╛рдИ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╕реНрд░реЛрддрд╣рд░реВрд╕рдБрдЧ рдПрдХ рддрдерд╛рдХрдерд┐рдд рдкреНрдпрд╛рдХреЗрдЬрдорд╛ рд░реВрдкрд╛рдиреНрддрд░рдг рдЧрд░реНрдиреБрд╣реБрдиреНрдЫ рдЬреБрди рд╕рдмреИ рдЖрд╡рд╢реНрдпрдХ рдХреЛрдб рд░ рдбреЗрдЯрд╛ рд╕рдорд╛рд╡реЗрд╢ рдЧрд░реНрджрдЫред рдпреЛ рдкреНрдпрд╛рдХреЗрдЬрд▓рд╛рдИ рд╕рднрд╛ рднрдирд┐рдиреНрдЫред
  2. рд╕реНрдЯреЗрдЬ рд░рд┐рд▓реАрдЬ тАФ рдпрд╣рд╛рдБ рд╣рд╛рдореА рд╣рд╛рдореНрд░реЛ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рдирд▓рд╛рдИ рдПрд╕реЗрдореНрдмрд▓реАрдорд╛ рдЬрдбрд╛рди рдЧрд░реНрдЫреМрдВ, рдЬрд╕рдХреЛ рдмрд┐рдирд╛ рд╣рд╛рдореА рд╣рд╛рдореНрд░реЛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдЬрд╛рд░реА рдЧрд░реНрди рд╕рдХреНрд╖рдо рд╣реБрдиреЗ рдЫреИрдиреМрдВред рдЕрдм рдпреЛ рдПрдХ рдкреВрд░реНрдг рд░реВрдкрдорд╛ рд╕реБрд░реБ рдЧрд░реНрди рддрдпрд╛рд░ рд░рд┐рд▓реАрдЬ рд╣реЛред
  3. рдЕрд░реНрдХреЛ рдЪрд░рдг рдЖрдЙрдБрдЫ рдкреВрд░реНрддрд┐ред рдпрд╣рд╛рдБ рд╣рд╛рдореА рд╣рд╛рдореНрд░реЛ рд╡рд┐рдореЛрдЪрдирдмрд╛рдЯ рдЖрд╡рд╢реНрдпрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВ рдЪрд▓рд╛рдПрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдЬрд╛рд░реА рдЧрд░реНрдЫреМрдВред

рдореЛрдбреЗрд▓ рд╡рд╛ рд╕рдореНрдкреВрд░реНрдг рдкрд╛рдЗрдкрд▓рд╛рдЗрдирдХреЛ рдирдпрд╛рдБ рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВ рдЬрд╛рд░реА рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рдпрд╕реНрддреЛ рдкреНрд░рдгрд╛рд▓реАрд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдкреНрд░рд╢рд╛рд╕рдХрд╣рд░реВ рд░ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВ рдмреАрдЪ рднреВрдорд┐рдХрд╛рд╣рд░реВ рдЕрд▓рдЧ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ, рддрдкрд╛рдИрдВрд▓рд╛рдИ рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВ рдЯреНрд░реНрдпрд╛рдХ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ рд░ рдХрд╛рд░реНрдпрдХреНрд░рдордХреЛ рдЕрдирд╛рд╡рд╢реНрдпрдХ рд╕реНрдЯрдкрд╣рд░реВ рд░реЛрдХреНрдЫред

рд░рд┐рд▓рд┐рдЬ рдХрд╛рд░реНрдпрдХреЛ рд▓рд╛рдЧрд┐, рдзреЗрд░реИ рдлрд░рдХ рд╕реЗрд╡рд╛рд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░рд┐рдПрдХрд╛ рдЫрдиреН рдЬрд╕рдорд╛ рддрдкрд╛рдЗрдБ рдЖрдлреИрдВрд▓рд╛рдИ .yml рдлрд╛рдЗрд▓рдорд╛ рдЪрд▓рд╛рдЙрди рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВ рд▓реЗрдЦреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, CircleCI рдорд╛ рдпреЛ рдкреНрд░рдХреНрд░рд┐рдпрд╛рд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрди config.yml рд╣реЛ)ред рд╡реНрд╣реАрд▓реА рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рдЙрддреНрдХреГрд╖реНрдЯ рдЫред

рддрдкрд╛рдИрдВрд▓реЗ рдЖрдлреНрдиреЛ рдореЗрд╕рд┐рди рд▓рд░реНрдирд┐рдЩ рдореЛрдбреЗрд▓рдХрд╛ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВрд╕рдБрдЧ рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рд░ рддреНрдпрд╕рдкрдЫрд┐ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдкреНрдпрд╛рдХреЗрдЬ рдЧрд░реНрдиреБрд╣реЛрд╕реН рд░ рдЖрд╡рд╢реНрдпрдХ рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рд░ рддрд┐рдиреАрд╣рд░реВрдХрд╛ рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВрд▓рд╛рдИ рддрдкрд╛рдИрдВрд▓реЗ рддреНрдпрд╣рд╛рдБрдмрд╛рдЯ рд▓реЗрдЦреНрдиреБрднрдПрдХреЛ рдХрд╛рд░реНрдпрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдиреНрджрд░реНрдн рдЧрд░реНрдиреБрд╣реЛрд╕реНред рдпрд╕рд▓реЗ рддрдкрд╛рдЗрдБрд▓рд╛рдИ рддрдкрд╛рдЗрдБрдХреЛ рдореЛрдбреЗрд▓рдХреЛ рд▓рд╛рдЧрд┐ API рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рдорджреНрджрдд рдЧрд░реНрджрдЫ, рд░ рддрдкрд╛рдЗрдБрдХреЛ рдкреНрдпрд╛рдХреЗрдЬ Gemfury рдорд╛ рд╣реЛрд╕реНрдЯ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ, рдЙрджрд╛рд╣рд░рдг рдХреЛ рд▓рд╛рдЧреАред

рд╕рд┐рджреНрдзрд╛рдиреНрдд 6. рдПрдХ рд╡рд╛ рдзреЗрд░реИ рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВрдХреЛ рд░реВрдкрдорд╛ рдЖрдлреНрдиреЛ рдореЛрдбреЗрд▓ рдЪрд▓рд╛рдЙрдиреБрд╣реЛрд╕реН

рдпрд╕рдмрд╛рд╣реЗрдХ, рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВрдорд╛ рд╕рд╛рдЭрд╛ рдбрд╛рдЯрд╛ рд╣реБрдиреБ рд╣реБрдБрджреИрдиред рдЕрд░реНрдерд╛рддреН, рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЕрд╡рд╕реНрдерд┐рдд рд╣реБрдиреБрдкрд░реНрдЫ, рд░ рд╕рдмреИ рдкреНрд░рдХрд╛рд░рдХрд╛ рдбрд╛рдЯрд╛рд╣рд░реВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЕрд╡рд╕реНрдерд┐рдд рд╣реБрдиреБрдкрд░реНрдЫ, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рддреЗрд╕реНрд░реЛ-рдкрдХреНрд╖ рд╕реЗрд╡рд╛рд╣рд░реВ рдЬрд╕реНрддреИ MySQL рд╡рд╛ рдЕрдиреНрдпрдорд╛, рддрдкрд╛рдИрдВрд▓рд╛рдИ рдХреЗ рдЪрд╛рд╣рд┐рдиреНрдЫ рднрдиреНрдиреЗ рдЖрдзрд╛рд░рдорд╛ред

рддреНрдпреЛ рд╣реЛ, рдпреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдкрдорд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдлрд╛рдЗрд▓ рдкреНрд░рдгрд╛рд▓реА рднрд┐рддреНрд░ рдбрд╛рдЯрд╛ рднрдгреНрдбрд╛рд░рдг рдЧрд░реНрди рд▓рд╛рдпрдХ рдЫреИрди, рдЕрдиреНрдпрдерд╛ рдпрд╕рд▓реЗ рдЕрд░реНрдХреЛ рд░рд┐рд▓реАрдЬ / рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдкрд░рд┐рд╡рд░реНрддрди рд╡рд╛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдЪрд▓реНрдиреЗ рдкреНрд░рдгрд╛рд▓реАрдХреЛ рд╕реНрдерд╛рдирд╛рдиреНрддрд░рдгрдХреЛ рд╕рдордпрдорд╛ рдпреЛ рдбрд╛рдЯрд╛ рдЦрд╛рд▓реА рдЧрд░реНрди рдиреЗрддреГрддреНрд╡ рдЧрд░реНрди рд╕рдХреНрдЫред

рддрд░ рддреНрдпрд╣рд╛рдБ рдПрдЙрдЯрд╛ рдЕрдкрд╡рд╛рдж рдЫ: рдореЗрд╕рд┐рди рд▓рд░реНрдирд┐рдЩ рдкреНрд░реЛрдЬреЗрдХреНрдЯрд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐, рддрдкрд╛рдИрдВрд▓реЗ рдкреБрд╕реНрддрдХрд╛рд▓рдпрд╣рд░реВрдХреЛ рдХреНрдпрд╛рд╕ рднрдгреНрдбрд╛рд░рдг рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рддрд╛рдХрд┐ рдХреБрдиреИ рдкрдирд┐ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреБрд╕реНрддрдХрд╛рд▓рдпрд╣рд░реВ рд╡рд╛ рддрд┐рдиреАрд╣рд░реВрдХреЛ рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВрдорд╛ рдХреБрдиреИ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдирдЧрд░рд┐рдПрдХрд╛ рдЦрдгреНрдбрдорд╛ рддрдкрд╛рдИрдВрд▓реЗ рдирдпрд╛рдБ рд╕рдВрд╕реНрдХрд░рдг рд╕реБрд░реБ рдЧрд░реНрджрд╛ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдкреБрди: рд╕реНрдерд╛рдкрдирд╛ рдирдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рдпрд╕ рддрд░рд┐рдХрд╛рд▓реЗ, рддрдкрд╛рдИрдВрд▓реЗ рдЙрджреНрдпреЛрдЧрдорд╛ рдЖрдлреНрдиреЛ рдореЛрдбреЗрд▓ рд╕реБрд░реБ рдЧрд░реНрди рд▓рд╛рдЧреНрдиреЗ рд╕рдордп рдХрдо рдЧрд░реНрдиреБрд╣реБрдиреЗрдЫред

рдореЛрдбреЗрд▓рд▓рд╛рдИ рдзреЗрд░реИ рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВрдХреЛ рд░реВрдкрдорд╛ рдЪрд▓рд╛рдЙрдирдХреЛ рд▓рд╛рдЧрд┐, рддрдкрд╛рдИрдВрд▓реЗ .yml рдлрд╛рдЗрд▓ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рдЬрд╕рдорд╛ рддрдкрд╛рдИрдВрд▓реЗ рдЖрд╡рд╢реНрдпрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВ рд░ рддрд┐рдиреАрд╣рд░реВрдХреЛ рдЕрдиреБрдХреНрд░рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрдиреБрд╣реБрдиреНрдЫред

рд╕рд┐рджреНрдзрд╛рдиреНрдд 7: рдкреБрди: рдкреНрд░рдпреЛрдЧ рдпреЛрдЧреНрдпрддрд╛

рддрдкрд╛рдЗрдБрдХреЛ рдореЛрдбреЗрд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧрдорд╛ рдЪрд▓реНрдиреЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВ рд╕реБрд░реБ рдЧрд░реНрди рд░ рд░реЛрдХреНрди рд╕рдЬрд┐рд▓реЛ рд╣реБрдиреБрдкрд░реНрдЫред рддрд╕рд░реНрде, рдпрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдХреЛрдб рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ, рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ, рдЫрд┐рдЯреЛ рд░ рд▓рдЪрд┐рд▓реЛ рд░реВрдкрдорд╛ рдорд╛рдкрди рдЧрд░реНрди, рд░ рдХрд╛рд░реНрдп рд╕рдВрд╕реНрдХрд░рдгрдХреЛ рд╕рдореНрднрд╛рд╡рд┐рдд рдмреНрд░реЗрдХрдбрд╛рдЙрдирд╣рд░реВ рд░реЛрдХреНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред

рддреНрдпреЛ рд╣реЛ, рдореЛрдбреЗрд▓рдХреЛ рд╕рд╛рде рддрдкрд╛рдИрдВрдХреЛ рдкреНрд░рдХреНрд░рд┐рдпрд╛:

  • рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рд╕рдордп рдиреНрдпреВрдирддрдо рдЧрд░реНрдиреБрд╣реЛрд╕реНред рдЖрджрд░реНрд╢ рд░реВрдкрдорд╛, рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рд╕рдордп (рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдЖрджреЗрд╢ рдЬрд╛рд░реА рднрдПрдХреЛ рдХреНрд╖рдгрджреЗрдЦрд┐ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕рдЮреНрдЪрд╛рд▓рдирдорд╛ рдЖрдЙрдБрджрд╛) рдХреЗрд╣реА рд╕реЗрдХреЗрдиреНрдб рднрдиреНрджрд╛ рдмрдвреА рд╣реБрдиреБ рд╣реБрдБрджреИрдиред рдорд╛рдерд┐ рд╡рд░реНрдгрди рдЧрд░рд┐рдПрдХреЛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреНрдпрд╛рд╕рд┐рдЩ, рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рд╕рдордп рдШрдЯрд╛рдЙрдиреЗ рдПрдЙрдЯрд╛ рдкреНрд░рд╡рд┐рдзрд┐ рд╣реЛред
  • рд╕рд╣реА рд░реВрдкрдорд╛ рд╕рдорд╛рдкреНрдд рдЧрд░реНрдиреБрд╣реЛрд╕реНред рддреНрдпреЛ рд╣реЛ, рд╕реЗрд╡рд╛ рдкреЛрд░реНрдЯрдорд╛ рд╕реБрдиреНрдиреБ рд╡рд╛рд╕реНрддрд╡рдорд╛ рдирд┐рд▓рдореНрдмрд┐рдд рдЫ, рд░ рдпрд╕ рдкреЛрд░реНрдЯрдорд╛ рдкреЗрд╢ рдЧрд░рд┐рдПрдХрд╛ рдирдпрд╛рдБ рдЕрдиреБрд░реЛрдзрд╣рд░реВ рдкреНрд░рд╢реЛрдзрди рдЧрд░рд┐рдиреЗ рдЫреИрдиред рдпрд╣рд╛рдБ рддрдкрд╛рдИрдВрд▓реЗ рдпрд╛ рдд DevOps рдИрдиреНрдЬрд┐рдирд┐рдпрд░рд╣рд░реВрд╕рдБрдЧ рд░рд╛рдореНрд░реЛ рд╕рдВрдЪрд╛рд░ рд╕реЗрдЯ рдЕрдк рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ, рд╡рд╛ рдпреЛ рдЖрдлреИрд▓реЗ рдХрд╕рд░реА рдХрд╛рдо рдЧрд░реНрджрдЫ рднрдиреЗрд░ рдмреБрдЭреНрди рдЖрд╡рд╢реНрдпрдХ рдЫ (рдЕрдзрд┐рдорд╛рдирддрдГ, рдкрдХреНрдХреИ рдкрдирд┐, рдкрдЫрд┐рд▓реНрд▓реЛ, рддрд░ рдХреБрдиреИ рдкрдирд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛рдорд╛ тАЛтАЛрд╕рдЮреНрдЪрд╛рд░ рд╕рдзреИрдВ рдХрд╛рдпрдо рд░рд╛рдЦреНрдиреБрдкрд░реНрдЫ!)

рд╕рд┐рджреНрдзрд╛рдиреНрдд рео: рдирд┐рд░рдиреНрддрд░ рдкрд░рд┐рдирд┐рдпреЛрдЬрди/рдПрдХреАрдХрд░рдг

рдзреЗрд░реИ рдХрдореНрдкрдиреАрд╣рд░реВрд▓реЗ рдПрдкреНрд▓рд┐рдХреЗрд╕рди рдбреЗрднрд▓рдкрдореЗрдиреНрдЯ рд░ рдбрд┐рдкреНрд▓реЛрдЗрдореЗрдиреНрдЯ рдЯреЛрд▓реАрд╣рд░реВ (рдЕрдиреНрддрд┐рдо рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдЙрдкрд▓рдмреНрдз рдЧрд░рд╛рдЙрдиреЗ) рдмреАрдЪрдХреЛ рд╡рд┐рднрд╛рдЬрди рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫрдиреНред рдпрд╕рд▓реЗ рд╕рдлреНрдЯрд╡реЗрдпрд░рдХреЛ рд╡рд┐рдХрд╛рд╕ рд░ рдпрд╕рд▓рд╛рдИ рд╕реБрдзрд╛рд░ рдЧрд░реНрди рдкреНрд░рдЧрддрд┐рд▓рд╛рдИ рдзреЗрд░реИ рдврд┐рд▓реЛ рдЧрд░реНрди рд╕рдХреНрдЫред рдпрд╕рд▓реЗ DevOps рд╕рдВрд╕реНрдХреГрддрд┐рд▓рд╛рдИ рдкрдирд┐ рдмрд┐рдЧрд╛рд░реНрдЫ, рдЬрд╣рд╛рдБ рд╡рд┐рдХрд╛рд╕ рд░ рдПрдХреАрдХрд░рдг, рдореЛрдЯрд╛рдореЛрдЯреА рд░реВрдкрдорд╛, рд╕рдВрдпреБрдХреНрдд рдЫрдиреНред

рддрд╕рд░реНрде, рдпреЛ рд╕рд┐рджреНрдзрд╛рдиреНрддрд▓реЗ рдмрддрд╛рдЙрдБрдЫ рдХрд┐ рддрдкрд╛рдИрдВрдХреЛ рд╡рд┐рдХрд╛рд╕ рд╡рд╛рддрд╛рд╡рд░рдг рддрдкрд╛рдИрдВрдХреЛ рдЙрддреНрдкрд╛рджрди рд╡рд╛рддрд╛рд╡рд░рдгрд╕рдБрдЧ рд╕рдореНрднрд╡ рднрдПрд╕рдореНрдо рдирдЬрд┐рдХ рд╣реБрдиреБрдкрд░реНрдЫред

рдпрд╕рд▓реЗ рдЕрдиреБрдорддрд┐ рджрд┐рдиреЗрдЫ:

  1. рджрд╕реМрдВ рдкрдЯрдХ рд░рд┐рд▓реАрдЬ рд╕рдордп рдШрдЯрд╛рдЙрдиреБрд╣реЛрд╕реН
  2. рдХреЛрдб рдЕрд╕рдВрдЧрддрд┐рдХреЛ рдХрд╛рд░рдг рддреНрд░реБрдЯрд┐рд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рдШрдЯрд╛рдЙрдиреБрд╣реЛрд╕реНред
  3. рдпрд╕рд▓реЗ рдХрд░реНрдордЪрд╛рд░реАрд╣рд░реВрдорд╛ рдХрд╛рдордХреЛ рдмреЛрдЭ рдкрдирд┐ рдХрдо рдЧрд░реНрдЫ, рдХрд┐рдирдХрд┐ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВ рд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рд╡реНрдпрдХреНрддрд┐рд╣рд░реВ рдЕрдм рдПрдЙрдЯреИ рдЯреЛрд▓реА рд╣реБрдиреНред

рд╕рд░реНрдХрд▓рд╕реАрдЖрдИ, рдЯреНрд░рд╛рднрд┐рд╕ рд╕реАрдЖрдИ, рдЧрд┐рдЯрд▓реНрдпрд╛рдм рд╕реАрдЖрдИ рд░ рдЕрдиреНрдп рд╣реБрдиреНред

рддрдкрд╛рдИрд▓реЗ рддреБрд░реБрдиреНрддреИ рдореЛрдбреЗрд▓рдорд╛ рдердкреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рдпрд╕рд▓рд╛рдИ рдЕрдкрдбреЗрдЯ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рд░ рддреБрд░реБрдиреНрддреИ рд╕реБрд░реВ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рдЬрдмрдХрд┐ рдпреЛ рд╕рдЬрд┐рд▓реЛ рд╣реБрдиреЗрдЫ, рдЕрд╕рдлрд▓рддрд╛рдХреЛ рдЕрд╡рд╕реНрдерд╛рдорд╛, рдХрд╛рдо рдЧрд░реНрдиреЗ рд╕рдВрд╕реНрдХрд░рдгрдорд╛ рдзреЗрд░реИ рдЪрд╛рдБрдбреИ рдлрд░реНрдХрди, рддрд╛рдХрд┐ рдЕрдиреНрддрд┐рдо рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд▓реЗ рдпрд╕рд▓рд╛рдИ рдзреНрдпрд╛рди рджрд┐рдБрджреИрдиред рдпрджрд┐ рддрдкрд╛рдЗрдБрд╕рдБрдЧ рд░рд╛рдореНрд░реЛ рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рдЫрдиреН рднрдиреЗ рдпреЛ рд╡рд┐рд╢реЗрд╖ рдЧрд░реА рд╕рдЬрд┐рд▓реИ рд░ рдЫрд┐рдЯреЛ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред

рднрд┐рдиреНрдирддрд╛рд╣рд░реВ рдХрдо рдЧрд░реНрдиреБрд╣реЛрд╕реН !!!

рд╕рд┐рджреНрдзрд╛рдиреНрдд 9. рддрдкрд╛рдИрдВрдХреЛ рд▓рдЧрд╣рд░реВ

рд▓рдЧрд╣рд░реВ (рд╡рд╛ "рд▓рдЧрд╣рд░реВ") рдШрдЯрдирд╛рд╣рд░реВ рд╣реБрдиреН, рд╕рд╛рдорд╛рдиреНрдпрддрдпрд╛ рдкрд╛рда рдврд╛рдБрдЪрд╛рдорд╛ рд░реЗрдХрд░реНрдб рд╣реБрдиреНрдЫрдиреН, рдЬреБрди рдПрдк (рдШрдЯрдирд╛ рд╕реНрдЯреНрд░рд┐рдо) рднрд┐рддреНрд░ рд╣реБрдиреНрдЫред рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЙрджрд╛рд╣рд░рдг: "2020-02-02 - рдкреНрд░рдгрд╛рд▓реА рд╕реНрддрд░ - рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдирд╛рдоред" рддрд┐рдиреАрд╣рд░реВ рдбрд┐рдЬрд╛рдЗрди рдЧрд░рд┐рдПрдХрд╛ рдЫрдиреН рддрд╛рдХрд┐ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд▓реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдЪрд▓рд┐рд░рд╣реЗрдХреЛ рдмреЗрд▓рд╛ рдХреЗ рднрдЗрд░рд╣реЗрдХреЛ рдЫ рднрдиреЗрд░ рд╢рд╛рдмреНрджрд┐рдХ рд░реВрдкрдорд╛ рд╣реЗрд░реНрди рд╕рдХреНрдЫред рдЙрд╕рд▓реЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВрдХреЛ рдкреНрд░рдЧрддрд┐ рджреЗрдЦреНрдЫ рд░ рдмреБрдЭреНрдЫ рдХрд┐ рдпреЛ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛ рдЖрдлреИрдВрд▓реЗ рдЪрд╛рд╣реЗрдХреЛ рд╣реЛ рдХрд┐ рд╣реЛрдЗрдиред

рдпреЛ рд╕рд┐рджреНрдзрд╛рдиреНрддрд▓реЗ рдмрддрд╛рдЙрдБрдЫ рдХрд┐ рддрдкрд╛рдИрдВрд▓реЗ рдЖрдлреНрдиреЛ рдлрд╛рдЗрд▓ рдкреНрд░рдгрд╛рд▓реА рднрд┐рддреНрд░ рдЖрдлреНрдиреЛ рд▓рдЧрд╣рд░реВ рднрдгреНрдбрд╛рд░рдг рдЧрд░реНрдиреБ рд╣реБрдБрджреИрди - рддрдкрд╛рдИрдВрд▓реЗ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рд╕реНрдХреНрд░рд┐рдирдорд╛ "рдЖрдЙрдЯрдкреБрдЯ" рдорд╛рддреНрд░ рдЧрд░реНрдиреБрдкрд░реНрдЫ, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдпреЛ рдкреНрд░рдгрд╛рд▓реАрдХреЛ рдорд╛рдирдХ рдЖрдЙрдЯрдкреБрдЯрдорд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реНред рд░ рдпрд╕ рддрд░рд┐рдХрд╛рд▓реЗ рд╡рд┐рдХрд╛рд╕рдХреЛ рдХреНрд░рдордорд╛ рдЯрд░реНрдорд┐рдирд▓рдорд╛ рдкреНрд░рд╡рд╛рд╣ рдЕрдиреБрдЧрдорди рдЧрд░реНрди рд╕рдореНрднрд╡ рд╣реБрдиреЗрдЫред

рдХреЗ рдпрд╕рдХреЛ рдорддрд▓рдм рдпреЛ рд╣реЛ рдХрд┐ рд▓рдЧрд╣рд░реВ рдмрдЪрдд рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫреИрди? рдкрдХреНрдХреИ рд╣реЛрдЗрдиред рддрдкрд╛рдИрдВрдХреЛ рдЖрд╡реЗрджрдирд▓реЗ рдпреЛ рдЧрд░реНрдиреБ рд╣реБрдБрджреИрди - рдпрд╕рд▓рд╛рдИ рддреЗрд╕реНрд░реЛ-рдкрдХреНрд╖ рд╕реЗрд╡рд╛рд╣рд░реВрдорд╛ рдЫреЛрдбреНрдиреБрд╣реЛрд╕реНред рддрдкрд╛рдИрдБрдХреЛ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд▓реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ-рд╕рдордп рд╣реЗрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдлрд╛рдЗрд▓ рд╡рд╛ рдЯрд░реНрдорд┐рдирд▓рдорд╛ рд▓рдЧрд╣рд░реВ рдлрд░реНрд╡рд╛рд░реНрдб рдЧрд░реНрди рд╕рдХреНрдЫ, рд╡рд╛ рдпрд╕рд▓рд╛рдИ рд╕рд╛рдорд╛рдиреНрдп рдЙрджреНрджреЗрд╢реНрдп рдбреЗрдЯрд╛ рднрдгреНрдбрд╛рд░рдг рдкреНрд░рдгрд╛рд▓реА (рдЬрд╕реНрддреИ Hadoop) рдорд╛ рдлрд░реНрд╡рд╛рд░реНрдб рдЧрд░реНрди рд╕рдХреНрдЫред рддрдкрд╛рдИрдХреЛ рдПрдкреНрд▓рд┐рдХреЗрд╕рди рдЖрдлреИрд▓реЗ рднрдгреНрдбрд╛рд░рдг рд╡рд╛ рд▓рдЧрд╣рд░реВрд╕рдБрдЧ рдЕрдиреНрддрд░реНрдХреНрд░рд┐рдпрд╛ рдЧрд░реНрдиреБ рд╣реБрдБрджреИрдиред

рд╕рд┐рджреНрдзрд╛рдиреНрдд 10. рдкрд░реАрдХреНрд╖рдг!

рдФрджреНрдпреЛрдЧрд┐рдХ рдореЗрд╕рд┐рди рд▓рд░реНрдирд┐рдЩрдХреЛ рд▓рд╛рдЧрд┐, рдпреЛ рдЪрд░рдг рдЕрддреНрдпрдиреНрдд рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдЫ, рдХрд┐рдирдХрд┐ рддрдкрд╛рдИрдВрд▓реЗ рдпреЛ рдмреБрдЭреНрди рдЖрд╡рд╢реНрдпрдХ рдЫ рдХрд┐ рдореЛрдбреЗрд▓рд▓реЗ рд╕рд╣реА рд░реВрдкрдорд╛ рдХрд╛рдо рдЧрд░реНрджрдЫ рд░ рддрдкрд╛рдИрдВрд▓реЗ рдЪрд╛рд╣реЗрдХреЛ рдХреБрд░рд╛ рдЙрддреНрдкрд╛рджрди рдЧрд░реНрджрдЫред

рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ pytest рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ, рд░ рдпрджрд┐ рддрдкрд╛рдИрдВрд╕рдБрдЧ рд░рд┐рдЧреНрд░реЗрд╕рди/рд╡рд░реНрдЧреАрдХрд░рдг рдХрд╛рд░реНрдп рдЫ рднрдиреЗ рд╕рд╛рдиреЛ рдбреЗрдЯрд╛рд╕реЗрдЯ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдкрд░реАрдХреНрд╖рдг рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред

рдЧрд╣рд┐рд░реЛ рд╕рд┐рдХрд╛рдЗ рдореЛрдбреЗрд▓рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдПрдЙрдЯреИ рдмреАрдЙ рд╕реЗрдЯ рдЧрд░реНрди рдирдмрд┐рд░реНрд╕рдиреБрд╣реЛрд╕реН рддрд╛рдХрд┐ рддрд┐рдиреАрд╣рд░реВ рд▓рдЧрд╛рддрд╛рд░ рдлрд░рдХ рдкрд░рд┐рдгрд╛рдорд╣рд░реВ рдЙрддреНрдкрд╛рджрди рдЧрд░реНрджреИрдирдиреНред

рдпреЛ 10 рд╕рд┐рджреНрдзрд╛рдиреНрддрд╣рд░реВрдХреЛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╡рд┐рд╡рд░рдг рдерд┐рдпреЛ, рд░ рдирд┐рд╕реНрд╕рдиреНрджреЗрд╣, рддрд┐рдиреАрд╣рд░реВрд▓реЗ рдХрд╕рд░реА рдХрд╛рдо рдЧрд░реНрдЫрдиреН рднрдиреЗрд░ рдкреНрд░рдпрд╛рд╕ рдирдЧрд░реАрдХрди рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдЧрд╛рд╣реНрд░реЛ рдЫ, рддреНрдпрд╕реИрд▓реЗ рдпреЛ рд▓реЗрдЦ рд░реЛрдЪрдХ рд▓реЗрдЦрд╣рд░реВрдХреЛ рд╢реНрд░реГрдВрдЦрд▓рд╛рдХреЛ рдкреНрд░рд╕реНрддрд╛рд╡рдирд╛ рдорд╛рддреНрд░ рд╣реЛ рдЬрд╕рдорд╛ рдо рдХрд╕рд░реА рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреЗ рднрдиреЗрд░ рдкреНрд░рдХрдЯ рдЧрд░реНрдиреЗрдЫреБред рдФрджреНрдпреЛрдЧрд┐рдХ рдореЗрд╕рд┐рди рд▓рд░реНрдирд┐рдЩ рдореЛрдбреЗрд▓рд╣рд░реВ, рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрдорд╛ рдХрд╕рд░реА рдПрдХреАрдХреГрдд рдЧрд░реНрдиреЗ рд░ рдпреА рд╕рд┐рджреНрдзрд╛рдиреНрддрд╣рд░реВрд▓реЗ рд╣рд╛рдореА рд╕рдмреИрдХреЛ рдЬреАрд╡рдирд▓рд╛рдИ рдХрд╕рд░реА рд╕рдЬрд┐рд▓реЛ рдмрдирд╛рдЙрди рд╕рдХреНрдЫред

рдо рдкрдирд┐ рд░рд╛рдореНрд░реЛ рд╕рд┐рджреНрдзрд╛рдиреНрддрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрдиреЗрдЫреБ рдЬреБрди рдЬреЛ рдХреЛрд╣реАрд▓реЗ рдЯрд┐рдкреНрдкрдгреАрд╣рд░реВрдорд╛ рдЫреЛрдбреНрди рд╕рдХреНрдЫрдиреН рдпрджрд┐ рддрд┐рдиреАрд╣рд░реВ рдЪрд╛рд╣рдиреНрдЫрдиреНред

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди