(Part 3) Top products from r/devops
We found 21 product mentions on r/devops. We ranked the 91 resulting products by number of redditors who mentioned them. Here are the products ranked 41-60. You can also go back to the previous section.
41. Working Effectively with Legacy Code
Sentiment score: 1
Number of reviews: 1
Prentice Hall
42. Unix Network Programming, Volume 1: The Sockets Networking API (3rd Edition)
Sentiment score: 1
Number of reviews: 1
44. Systems Performance: Enterprise and the Cloud
Sentiment score: 0
Number of reviews: 1
Used Book in Good Condition
46. DevOps: A Software Architect's Perspective (SEI Series in Software Engineering)
Sentiment score: 1
Number of reviews: 1
47. Front-End Web Development: The Big Nerd Ranch Guide (Big Nerd Ranch Guides)
Sentiment score: 1
Number of reviews: 1
48. Terraform: Up & Running: Writing Infrastructure as Code
Sentiment score: 1
Number of reviews: 1
49. In Business As in Life, You Don't Get What You Deserve, You Get What You Negotiate
Sentiment score: 1
Number of reviews: 1
50. Introduction to Algorithms, 3rd Edition (The MIT Press)
Sentiment score: 0
Number of reviews: 1
Hard Cover
51. Continuous Integration: Improving Software Quality and Reducing Risk (Martin Fowler Signature Books)
Sentiment score: 0
Number of reviews: 1
52. Growing Object-Oriented Software, Guided by Tests
Sentiment score: 1
Number of reviews: 1
Addison-Wesley Professional
53. Agile Testing: A Practical Guide for Testers and Agile Teams (Addison-Wesley Signature)
Sentiment score: 0
Number of reviews: 1
54. Advanced Programming in the UNIX Environment, 3rd Edition
Sentiment score: 1
Number of reviews: 1
55. DevOps Troubleshooting: Linux Server Best Practices
Sentiment score: 0
Number of reviews: 1
56. Switch: How to Change Things When Change Is Hard
Sentiment score: 1
Number of reviews: 1
Broadway Business
57. Kaiten: Japan's Secret Manned Suicide Submarine and the First American Ship It Sank in WWII
Sentiment score: -1
Number of reviews: 1
58. The Design of Everyday Things: Revised and Expanded Edition
Sentiment score: 0
Number of reviews: 1
Basic Books AZ
You're nearly 16; I'm assuming you're planning to go to university? My suggestions are based on that assumption ..
​
My recommendation is this - forget specifics except as a tool to understand theory! You've got another 6yrs before you're going to start looking for jobs and in that time, the software landscape can change a lot, so it's not worth focusing on e.g. Docker & Kubernetes until a year or two before you finish your education.
Programming languages - pick one to focus on and get as in-depth as you can, but play around with and write a handful of scripts in as many different languages as you can. The focus should give you a good understanding of how and why languages work, how you can be caught out without that understanding, etc (I recommend Fred Baptiste's 'Deep-dive' courses on Udemy, if you stick with Python). On the other hand, the more languages you learn, the easier it becomes to learn a new one - so if e.g. Python dies out while you're still at uni, you can easily switch to the next big thing.
That scattershot approach should be applied to applications as well - focus on what they do and why without getting bogged down in how.
When it comes to specifics, definitely learn networking, databases (both relational and nosql), operating systems (I recommend https://www.amazon.com/Operating-Systems-3rd-Harvey-Deitel/dp/0131828274 - still got 1st Ed around somewhere), security ... you're working on getting a good understanding without worrying about specifics.
Then a year or two before you graduate, come back and ask for advice on specifics.
I'd make sure I have a really solid understanding of systems and networks, e.g. how Linux works. This book seems like a great overview and I love No Starch Press. There's also this book which is used by Carnegie Mellon's introductory systems course, though that might be a bit too deep to dive into straight away, more like something that could be used if you want a deeper understanding of how systems work. You should have some familiarity with C just as foundational knowledge. The guy who wrote Learn Python The Hard Way also wrote an intro to C, Learn C the Hard Way. He's added a lot more material than the last time I checked (~Dec 2012) which looks like it covers a lot of topics so it would be great to work through it.
Some more technical books on this subject that are well regarded and can be used as reference books are Advanced Programming in the Unix Environment, Unix Network Programming, and The Linux Programming Interface
Also in addition to Python I'd also suggest learning some Ruby (Practical Object-Oriented Design in Ruby and Programming Ruby 1.9 & 2.0 are two resources I'd recommend), it's what Chef is/was implemented in and is fairly nice to work with.
Also a "Windows" DevOps guy.
I'd recommend this .NET Rocks podcast episode. It's a pretty healthy way of look at the meta.
I think you're on the right path with Flask if you really want to expose this information with a web (HTTP/S) interface. You'll learn lots, but may also open your environments up to security risks.
If your ultimate goal is to share with other teams, I'd look towards implementing a shared code repository first (GitLab, GitHub, BitBucket, etc.) You could start there because you should use code repositories and versioning. You can move on to some into Flask, HTML, CSS, and Javascript afterwards. I can easily recommend Front-End Web Development as a good place to start for beginner web learning. They also use Bootstrap in their example projects.
It helps to talk 'manager' langugage - perhaps read Switch or a similar business change focused work to help get into the mindset. The 'do it well in one spot and expand on that' method is basically the 'bright spots' concept in that book.
Working Effectively with Legacy Code is a good book that sounds applicable to your circumstance. Michael Feathers defines untested code as legacy code, which makes sense to me. Unfortunately untested code tends to be untestable, but tests are required to confidently make changes, so you have to chip away at the monolith strategically.
For the future, a good book on growing new systems alongside tests that inform design is Growing Object-Oriented Software, Guided by Tests
https://www.amazon.ca/Business-Life-Dont-Deserve-Negotiate/dp/0965227499
I litterally saw that book on the shelf of a family member, nothing more to it Haha. Needed to share the coincidence.
The founder of Gruntwork also wrote a great book which has just been updated: Terraform: Up and Running
It took three years of work for me to put all the pieces together and figure out what's going on (and formulate my own opinions on what should be going on).
It's good to hear others echo many of my opinions (I only found out about DevOps when a coworker in QA suggested I read https://www.amazon.com/DevOps-Software-Architects-Perspective-Engineering/dp/0134049845 ).
A local minimum is definitely the way it feels, leadership is very comfortable with the way things are - which is very frustrating. If I made change, I don't know if I'd be thanked for it - but I don't think I'd be vilified for it either.
More like CS University curriculum. Such as https://www.amazon.com/Modern-Operating-Systems-Andrew-Tanenbaum/dp/013359162X/
/u/lordv0ldemort I would recommend:
https://www.amazon.com/Continuous-Integration-Improving-Software-Reducing/dp/0321336380
https://www.amazon.com/Continuous-Delivery-Deployment-Automation-Addison-Wesley/dp/0321601912
https://www.amazon.com/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882
Agile Testing is solid on principles. Don't be scared of the agile label, it's a sound foundation for understanding test automation.
I'm not sure what you mean by "from a DevOps perspective" though. To use an extreme example, if the test engineers are writing Selenium tests and running them locally in a QA silo, reading a book about modern test automation isn't going to help you communicate with them.
You'll be showing up in a tuxedo to find everyone else is wearing jeans and an old Mickey Mouse t-shirt. Yes, you're both wearing pants and your torso is covered, but that's about where the common ground ends.
There is a book devops troubleshooting that has alot of the scenarios you are asking for. Link
The Design of Everyday Things by Don Norman. Then read the k8s docs. If you're working complex systems the book is also relevant.
https://www.amazon.com/dp/0465050654
Was relevant at publish date, and relevant now:
https://www.amazon.com/Time-Management-System-Administrators-Working/dp/0596007833/ref=nodl_
https://www.amazon.com/gp/product/0133390098/
Kaiten: Japan's Secret Manned Suicide Submarine and the First American Ship It Sank in WWII https://www.amazon.com/dp/0425272699/