Answers: <blockquote>
    <p>if I setup automate deployment of code, is this considered devops?</p>
  </blockquote>
  
  <p>Sure, automating everything is a big part of DevOps.</p>
  
  <blockquote>
    <p>I tried ansible but I prefer writing my own code for learning</p>
  </blockquote>
  
  <p>Now, this is laudable, but using Ansible (or Puppet or Chef or ...) would be "learning" as well. The benefit of using established tools over DIY is that if/when you meet other developers, you have a common toolset to work with. Doing it yourself is nice sometimes as well, but basing a whole software development process on 100% self-written tools (from scratch) is not a good idea, unless you have deeply evaluated the existing tools and consider them all unfit for the purpose. </p>
  
  <p>When your team grows and you encounter a new developer - is it more likely that they already know about Ansible, or that they know about the code you wrote?</p>
  
  <p>Also, the fact that the tools mentioned above do not do their stuff in the "code" directly, but that they have text files which configure them, is important as well. It abstracts the configuration stuff away from actual code, which <em>will</em> be hard to maintain a few years down the road, no matter how good you are.</p>
  
Answers: CC BY-SA 3.0
Answers: 2018-01-02T07:51:03.727Z
Answers: 2018-01-02T07:51:03.727Z
Answers: AnoE
Body: <p>I'm a new developer who is picking up python. I'm currently writing code using python's asyncio or twisted framework to automate the setup of some raspberry pi and servers I got 2nd hand (xen, hyper-v) using SSH, I tried ansible but I prefer writing my own code for learning.</p>
  
  <p>does this fit into software defined infrastructure?
  if I setup automate deployment of code, is this considered devops?</p>
  
  <p>additionally, I hope to enquire if my intended workflow is considered "devops"?</p>
  
  <ul>
  <li>gitlabs </li>
  <li>automated code testing (tox/travis ci)</li>
  <li>automated deployment of code to raspberry pi</li>
  </ul>
  
Comments: CC BY-SA 3.0
Comments: 2018-01-02T17:17:31.907Z
Comments: If you prefer, you can also use Salt Stack and ansible which both are based on python. I assume you don't write all your own libraries and will use existing libraries where possible. Why wouldn't you do the same with your configuration management/automation system? Reinventing the wheel every time is ill-advised. And this is a *big* wheel.
Comments: James Shewey
Comments: CC BY-SA 3.0
Comments: 2018-01-03T16:59:12.480Z
Comments: "I've laid down some gravel in my backyard to make a path. Is that considered infrastructure and can I apply for a federal grant? I don't like to use the industry standard wheelbarrow to carry gravel, but I prefer to make a makeshift one from my son's toy car. Can I call myself a civil engineer?" What are you trying to achieve? Learn a trade? Make a DIY project? Get skilled at the use of buzzwords? It is not exactly clear from your question.
Comments: Jiri Klouda
Tags: <configuration-management>
Title: how is software defined infrastructure related to devops?
UserDisplayName: laycat
ThreadText: # how is software defined infrastructure related to devops?
  
  (Asked by: username_0 on 2018-01-02)
  
  I'm a new developer who is picking up python. I'm currently writing code using python's asyncio or twisted framework to automate the setup of some raspberry pi and servers I got 2nd hand (xen, hyper-v) using SSH, I tried ansible but I prefer writing my own code for learning.
  
  does this fit into software defined infrastructure?
  if I setup automate deployment of code, is this considered devops?
  
  additionally, I hope to enquire if my intended workflow is considered "devops"?
  
  * gitlabs
  * automated code testing (tox/travis ci)
  * automated deployment of code to raspberry pi
  
  **Tags:** configuration-management
  
  > **Comments:**
  > **username_1**: If you prefer, you can also use Salt Stack and ansible which both are based on python. I assume you don't write all your own libraries and will use existing libraries where possible. Why wouldn't you do the same with your configuration management/automation system? Reinventing the wheel every time is ill-advised. And this is a *big* wheel.  
  > **username_2**: "I've laid down some gravel in my backyard to make a path. Is that considered infrastructure and can I apply for a federal grant? I don't like to use the industry standard wheelbarrow to carry gravel, but I prefer to make a makeshift one from my son's toy car. Can I call myself a civil engineer?" What are you trying to achieve? Learn a trade? Make a DIY project? Get skilled at the use of buzzwords? It is not exactly clear from your question.  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_3 on 2018-01-02. Score: 6 | Accepted answer
  
  > if I setup automate deployment of code, is this considered devops?
  
  Sure, automating everything is a big part of DevOps.
  
  > I tried ansible but I prefer writing my own code for learning
  
  Now, this is laudable, but using Ansible (or Puppet or Chef or ...) would be "learning" as well. The benefit of using established tools over DIY is that if/when you meet other developers, you have a common toolset to work with. Doing it yourself is nice sometimes as well, but basing a whole software development process on 100% self-written tools (from scratch) is not a good idea, unless you have deeply evaluated the existing tools and consider them all unfit for the purpose.
  
  When your team grows and you encounter a new developer - is it more likely that they already know about Ansible, or that they know about the code you wrote?
  
  Also, the fact that the tools mentioned above do not do their stuff in the "code" directly, but that they have text files which configure them, is important as well. It abstracts the configuration stuff away from actual code, which *will* be hard to maintain a few years down the road, no matter how good you are.
  
  
  ---
  
  