New Books for JetBrains Products
In recent months, there have been at least three books published in English that helps users of MPS, TeamCity and RubyMine learn and extend their skills. There are more books on the horizon and we will highlight those when they become available. If you know of, or are working on, a JetBrains product related book, we would love to know about it.
Designing, Implementing and Using Domain Specific Languages
By Markus Voelter
Domain-Specific Languages are programming languages that are tailored to a particular application domain. By incorporating knowledge about that domain, DSLs lead to more concise and more analyzable programs, improved code quality, tighter stakeholder integration and faster development speed.
This book provides a thorough introduction to DSLs, relying on today’s state-of-the-art language workbenches: JetBrains MPS, Xtext and Spoofax. The book is divided into four parts: Introduction to DSL, DSL Design, DSL Implementation and DSLs in Software Engineering, and lends inspiration to readers of where and how to use DSLs.
DSL Engineering is highly relevant to developers, as well as architects, who want to consider employing DSLs on their projects. Of particular interest to JetBrains MPS users:
- Part II looks at DSL design strategies. It discusses seven design dimensions and explains a number of reusable language paradigms. Such a conception overview helps readers to build effective DSLs.
- Part III showcases DSL implementation techniques with different language workbenches. This part presents non-trivial examples and touches on all language and IDE implementation aspects supported by MPS, including syntax, projection, transformation, type systems, constraints, refactorings, debugging and dataflow. Since the book also contains examples for other language workbenches (Xtext and Spoofax), readers will see the broader context and understand how MPS works and how it differs.
- Part IV discusses the use of DSLs for requirements engineering, architecture, system implementation, product line engineering and implementing business logic, as well as their role as an effective developer.
DSL Engineering is available in print and as a PDF (donationware) from dslbook.org.
TeamCity 7 Continuous Integration Essentials
By Volodymyr Melymuka
TeamCity 7 Continuous Integration Essentials is what it claims to be: an introduction to basic TeamCity usage. It describes common concepts and has a set of step-by-step tutorials for generic tasks like installing TeamCity, creation of a simple Java/Maven project and then configuring the project in TeamCity, using IntelliJ IDEA and Eclipse to launch TeamCity remote run, etc. The tutorials have lots of screenshots to help a novice walk through the steps.
The book will be a good fit if you prefer reading through a guide instead of proceeding directly to hands-on experience and using trial-and-error approach. It can also be a saver for a novice looking at implementing CI in a small company. TeamCity 7 Continuous Integration Essentials is available as an eBook or Print + eBook combination from PACKT Publishing.
Cucumber and Cheese
A Testers Workshop
By Jeff “Cheezy” Morgan
In this book Jeff shares his experience using Cucumber and Ruby. He covers many patterns, practices, tools, and Ruby gems that make testing applications easier. It covers the proper way to structure and write your test automation code so that it is less brittle, simpler, better organized, more expressive, and therefore easier to change over the lifecycle of your application. The goal is to help you see and understand the benefits of Acceptance Test Driven Development (ATDD, also known as Behavior Driven Development) and learn how to use Cucumber and Ruby to adopt this practice.
Automated functional testing is a practice that many teams are trying to add to their development process. Behavior Driven Development (BDD) with Cucumber is even hotter. This book is the culmination of Jeff’s work over the past four years working with numerous teams to implement these practices. Readers will learn techniques that will help them build robust test suites and avoid many of the problems that teams often encounter when they implement these practices.
While the book does not specifically showcase RubyMine, Jeff is a user himself (recent interview with Jeff) and mentions RubyMine throughout the book, including several screenshots of the tool. Readers will certainly find a thing or two to treasure. Cucumber & Cheese is available as an eBook from Leanpub.
Subscribe to Blog updates
JetBrains CEO Transition
We’re pleased to announce a new chapter at JetBrains: Kirill Skrygan takes on the role of CEO. As we embrace innovation in developer tooling, we remain committed to delivering excellence to our customers and partners and are excited to continue building the future of developer technology together.
Nx Champions Join the JetBrains Developer Recognition Program
Nx Champions join the JetBrains Developer Recognition Program.
Ready For an Update? The 2023.3 Versions of JetBrains Coding Tools Are Out!
The last release of the year brings a plethora of new features to empower you with an even more exceptional developer experience. You can find the summaries of JetBrains desktop tool updates below and dive deeper for a more detailed look. Introducing JetBrains AI Besides yourself, who knows yo…
Introducing JetBrains AI and the In-IDE AI Assistant
With the rise of generative AI and large language models (LLMs) this year, the landscape of not just the development industry but the creative industry as a whole has begun a transformation. Using this new technology to augment JetBrains tools was a no-brainer for us, and we see it as a logical n…