etsy/Hound: Fast code search tool written in Go

Stock photo of a bassett hound

https://github.com/etsy/Hound


From the Hound github page:

Hound is an extremely fast source code search engine. The core is based on this article (and code) from Russ Cox: Regular Expression Matching with a Trigram Index. Hound itself is a static React frontend that talks to a Go backend. The backend keeps an up-to-date index for each repository and answers searches through a minimal API.

Bad Layering: The layering software architecture pattern

Stock Photo of sedimentary rock layers

http://www.michaelnygard.com/blog/2015/04/bad-layering/


The trouble arises when the layers are built such that we have to drill through several of them to do something common. Have you ever checked in a commit that had a bunch of new files like “Foo”, “FooController”, “FooForm”, “FooFragment”, “FooMapper”, “FooDTO”, and so on? That, dear reader, is a breakdown in layering.