Version Control, DevOps and Agile Development with how to get rid of ants in your house naturally Plastic SCM The Plastic SCM book

It all starts with a task in your issue tracker how to get rid of ants in your house naturally or project management system: your jira, bugzilla, mantis, ontime, or your own home-made solution. The key is that everything you do in code has how to get rid of ants in your house naturally an associated task. It doesn’t matter whether it is a part of a new how to get rid of ants in your house naturally feature or a bugfix, create a task for it. If you are not practicing this already, start now. Believe me, entering a task is nothing once you and your team how to get rid of ants in your house naturally get used to it. Task branch

You work on your task branch and make as many how to get rid of ants in your house naturally checkins as you need. In fact, we strongly recommend to checkin very, very often, explaining each single step in the comments. This way you will be explaining each step to the how to get rid of ants in your house naturally reviewer, and it really pays off. Don’t forget to add tests for any new feature or how to get rid of ants in your house naturally bugfix. Code review

Then there is an optional step we do internally: validation. A colleague switches to the task branch and manually tests how to get rid of ants in your house naturally it. They don’t look for bugs (automated tests take care of that) but rather, look into the solution/fix/new-feature from a customer perspective. The tester ensures the solution makes sense. This phase probably doesn’t make sense for all teams, but we strongly recommend it when possible. Automated testing and merge

Once the task is reviewed/validated it will be automatically tested. (after being merged but prior to the merge to be how to get rid of ants in your house naturally checkedin. More on that later). Only if the test suite passes the merge will it how to get rid of ants in your house naturally be confirmed. This means we avoid breaking the build at all costs. Deploy

You can get a new release after every new task how to get rid of ants in your house naturally passes through this cycle or if you decide to group how to get rid of ants in your house naturally a few. We are in the devops age, with continuous deployment as the new normal, so deploying every single task to production makes a lot how to get rid of ants in your house naturally of sense.

Does your team need to handle huge files and projects? This is very common in the gaming industry. Then git can’t do it. Perforce is a good option but it lacks the super-strong branching and merging of plastic (again, not good at doing distributed).

Do you regularly face complex merges? Then, neither of these two can match plastic. By design, we can handle merge cases out of the scope of how to get rid of ants in your house naturally git and perforce. Besides, we package (we develop them!) the best diff and merge tools you can find, including the ability to even merge code moved across files how to get rid of ants in your house naturally (semantic diff and merge, our unique technology).

Extraordinarily good support: our support is part of the product. This is how we see it. Plastic is good technically, but what really makes it beat our competitors is how how to get rid of ants in your house naturally we care about users. We answer more than 80% of questions in less than one hour. 95% in under eight hours. And you can talk to real team members, not just a call center, but real product experts who will help you figure out how to get rid of ants in your house naturally how to work better, will help you solve issues, or will simply listen to your suggestions.

Bend repository boundaries. The boundaries of a repo are strict. It means if you put something on a repo, it is not easy to move it to a different how to get rid of ants in your house naturally one. Of course, you can always copy the files and checkin to a how to get rid of ants in your house naturally different repo, but loosing history and introducing the risk of duplication.

Shared knowledge. If you split the overall project into pieces many teams how to get rid of ants in your house naturally and individuals will just be aware of the few parts how to get rid of ants in your house naturally they work on. They’ll never go looking into the rest of the repositories how to get rid of ants in your house naturally for something they need, primarily because simple tools like searching and grepping won’t help them. Very likely this will end up in duplication of code how to get rid of ants in your house naturally and efforts.

Easier to refactor. Suppose you have a component used by 30 different products. If you just download the repo that contains this component, it won’t be safe to apply a rename to a public how to get rid of ants in your house naturally method or class used externally without a big risk of how to get rid of ants in your house naturally breaking one of those 30 projects potentially using it. If everything is on a single repo, you’ll have the 30 projects on disk and the refactor how to get rid of ants in your house naturally will be easier.

Software configuration management patterns: effective teamwork, practical integration by steve berczuk with brad appleton. It is the bible of patterns and practices, and although it was written in the early 2000. It is still unsurpassed by any other books in the how to get rid of ants in your house naturally matter.

The devops handbook. How to create world-class agility, reliability, and security in technology organizations by jez humble, gene kim, john willis, patrick debois. It is an easy-to-read book (unlike the previous title on continuous delivery by humble), entertaining and full of game changing experiences. If you need to understand why automating the last mile how to get rid of ants in your house naturally matters, or why devops in general makes sense from a business how to get rid of ants in your house naturally and technical perspective, this is your book.

Clean code: A handbook of agile software craftsmanship by robert C. Martin. It is the team’s favorite text on how to write code. I must admit it is not my personal favorite but how to get rid of ants in your house naturally it is certainly a good one and since the team how to get rid of ants in your house naturally here at plastic strongly recommends it, I had to add it to the list 🙂

Implementation patterns by kent beck. This one is the book I prefer over clean code. I consider it more serious and solid. You might wonder why I recommend books that are not how to get rid of ants in your house naturally strictly related to version control. Well, the reason is that I view version control as a how to get rid of ants in your house naturally part of a wider discipline. I like to see version control, and of course plastic, as a tool not only to control projects, but to produce better, more maintainable, easier to read code. And well, to achieve that goal it is good to understand what how to get rid of ants in your house naturally some experts consider good code 😉

Agile project management with kanban by eric brechner. I loved this book and it was the one that how to get rid of ants in your house naturally triggered us to jump from scrum to kanban. I read a bunch of titles on kanban but this how to get rid of ants in your house naturally was the one I really considered great. Of course, this might be a very personal choice, but I strongly recommend it. Task branches and devops blend extraordinarily well with brechner pragmatic how to get rid of ants in your house naturally view of kanban.

Explore it!: reduce risk and increase confidence with exploratory testing by elisabeth how to get rid of ants in your house naturally hendrickson. This book helped us better understand the role of manual how to get rid of ants in your house naturally testing and served as the basis of our validations. I always preferred automatic tests better than manual, but only because I saw many teams doing manual tests how to get rid of ants in your house naturally that were just scripted procedures that could be easily automated. Exploratory testing really gets the best of the human tester how to get rid of ants in your house naturally by making them use their creative side instead of constraining how to get rid of ants in your house naturally them to follow procedures.

Code complete: A practical handbook of software costruction by steve mcconnell. This is my all times favorite book on how to how to get rid of ants in your house naturally write software. It was originally written in the 1990s, but to me it is still one of the greatest how to get rid of ants in your house naturally books on the subject. It shows its age especially for young readers, but I would still recommend it as the best one. It is not only about code; if you want to clearly understand the difference between a how to get rid of ants in your house naturally walkthrough and a formal code review, you’ll find it in mcconnell’s greatest text.

Agile project management with scrum by ken schwaber. One of the originals textbooks on the matter. I asked all my students in the university to read how to get rid of ants in your house naturally chapters 1 and 2 as the best and shortest descriptions how to get rid of ants in your house naturally about how scrum works. And, it used to be a mandatory read for all newcomers how to get rid of ants in your house naturally to the team here too.

Rapid development: taming wild software schedules by steve mcconnell. I’m probably showing my age here, but mr. McConnell nailed it with this book where he plotted a how to get rid of ants in your house naturally ton of great practices to develop software faster prior to how to get rid of ants in your house naturally the agile explosion. It is still a great book to understand how to how to get rid of ants in your house naturally work in iterations and avoid the classic (and everlasting) pitfalls of project management.

Agile estimating and planning by mike cohn. If estimating is something you need to do (you never know anymore since many teams, including ourselves, pivoted to a more organic way of working and delivering how to get rid of ants in your house naturally software), then this book will explain lots of great things. It includes chapters on how to prioritize features based on how to get rid of ants in your house naturally value, and many other interesting topics I later found repeated again how to get rid of ants in your house naturally and again on other books.

Software estimation: demystifying the black art by steve mcconnell. Well, it is obvious by now who my favorite author is. Books on software estimation tend to be…​ well, ultra-boring. Cohn’s book and this one are my two favorites. T-shirt sizing and techniques like PERT to calculate best, worst and most likely estimation and combat our natural optimism how to get rid of ants in your house naturally as developers are greatly covered here.

Manage it! Your guide to modern pragmatic project management by johanna rothman. Any book by rothman is great to read, including the one on not doing estimations ("predicting the unpredictable"). I used "manage it!" as one of the textbooks for the project management classes how to get rid of ants in your house naturally during my six years as university professor (together with classics like "mythical man month" that I won’t list because while no list is good without this how to get rid of ants in your house naturally book I don’t want to add it…​ well, I did it 😜). It is fully packed with great advice on how to how to get rid of ants in your house naturally steer projects.

Peopleware: productive projects and teams by tom demarco and timothy lister. There are many books on how to make teams shine, but this is the original. I arranged our first office (and even the current one) based on the advice in this book. Much newer writings like "it doesn’t have to be crazy at work", while good, don’t say much peopleware did decades ago.

It all starts with a task, normally coming from the sprint backlog if you are using how to get rid of ants in your house naturally scrum, but it can be taken from a kanban board or how to get rid of ants in your house naturally any other project management mechanism you use. It is important to note, as I described in the chapter about task branches, how every single task branch has a one-to-one relationship with an entry in the issue tracker. Depending on how prescriptive and hierarchical your team is, everyone will enter tasks or only some designated members.

Then, at a certain point, a stack of finished tasks exists. Of course, the smaller the stack is, the fastest your team will move. And here is where the integrator enters into the scene. The integrator takes the list of pending branches to be how to get rid of ants in your house naturally merged and merges them, resolving any possible manual conflicts thanks to their project experience how to get rid of ants in your house naturally or asking the involved developers to help. Fortunately, the percentage of manual conflicts is small and conflict resolution how to get rid of ants in your house naturally is normally the smaller of the work efforts in the how to get rid of ants in your house naturally integrator’s bag.

Development happened on main until a product is ready to how to get rid of ants in your house naturally be released to the customer. Product A version A.1.0 is labeled and then further evolution and maintenance happens how to get rid of ants in your house naturally on product-A branch. In my experience, the beginnings are never that clear. If we have to import an old SVN repo, the initial branch most likely didn’t happen in such a clear way both probably well how to get rid of ants in your house naturally after A had evolution and close to the point where how to get rid of ants in your house naturally product B needs to be released. For the sake of simplicity, I’ll keep it in this "close to ideal" form.

Once product-A is out and used in production by the customer, further development happens both in main and product-A. Normally, main will receive a great evolution to get ready for how to get rid of ants in your house naturally the upcoming product-B, while product-A only receives minor fixes. Unfortunately, very often product-A receives major new features to respond to customer needs.

At this point, the team is actively working on four major branches. If they are lucky, product-A and product-B won’t be much trouble and they’ll be able to focus on C and the upcoming how to get rid of ants in your house naturally contract or major core upgrades. If they are not, they’ll be constantly switching projects.

Somehow, they have a core that all products reuse. The core is typically developed on main. But in reality, this core is not that cleanly defined and trying to how to get rid of ants in your house naturally componentize the project becomes an unachievable goal the team has how to get rid of ants in your house naturally been pursuing for years.

In some situations, we even found that main is not even stable (sometimes it doesn’t even build!) and stabilization is done on the product branches. This is one of the reasons why trying to unify how to get rid of ants in your house naturally the different products is repeatedly discarded, since account managers are very scared of regressions and the how to get rid of ants in your house naturally negative impact on their customer.

Fixes are done ad-hoc on the product where they are found, and often the same fix is done more than once how to get rid of ants in your house naturally by different developers, with the associated wasted effort. Teams dream of a magical solution to be able to how to get rid of ants in your house naturally identify and apply fixes correctly and avoid working twice.

Teams are usually stuck with some ancient version control, like SVN or even CVS, which makes merging even worse. And somehow, they expect a new version control to fit like a how to get rid of ants in your house naturally globe in their environment and magically fix all their issues, which is not going to happen because their problem is how to get rid of ants in your house naturally deeply routed in their way of working, not only the version control.

RELATED_POSTS