Preston So

Drush 10 is around the corner:

If you’ve touched a Drupal site at any point in the last ten years, it’s very likely you came into contact with Drush (a portmanteau of “Drupal shell”), the command-line interface (CLI) used by countless developers to work with Drupal without touching the administrative interface. Drush has a long and storied trajectory in the Drupal community. Though many other Drupal-associated projects have since been forgotten and relegated to the annals of Drupal history, Drush remains...

Preston So

In the previous blog post in this multi-part series about Yjs, we discussed the history and origins of Yjs, directly from its creator Kevin Jahns, as well as operational transformation (OT) and some of the advantages that peer-to-peer approaches to real-time collaboration have over the use of a centralized server. Tag1 recently selected Yjs as its shared editing framework of choice, pairing it with ProseMirror for a top Fortune 50 company.

Preston So

Tag1 TeamTalk #009
What happens when you have a connection that isn't working, but you have a mission-critical document that you need to collaborate on with others around the world? The problem of peer-to-peer collaboration in an offline environment is becoming an increasingly pressing issue for editorial organizations and enterprises. As we continue to work on documents together on flights, trains, and buses, offline-first shared editing is now a base-level requirement rather than a pipe dream. Yjs, an...

Preston So

How to maintain quality user experiences with visual regression and performance testing

Quality assurance (QA) is no longer the phrase that drove developers to recoil in horror and customers to run away to examine their balance sheets. Testing is quickly transforming the way developers work as the number of solutions and approaches increases substantially, especially in recent years. Given the continued promulgation of compelling solutions when it comes to continuous integration (CI) and new software-as-a-service (SaaS) vendors, testing is now a prerequisite rather than an afterthought. Nevertheless...

Preston So

Part 1 | Part 2 | Part 3 | Part 4 | At the moment, real-time collaboration is one of the hottest topics in the content management space. After all, one of the key features still absent from many content management systems (CMS) is shared editing among multiple users that successfully handles a variety of conditions. Applications like Google Docs, for instance, leverage a centralized server that manages all...

Preston So

Decoupled Drupal has been a trending topic for years in the Drupal community as well as the larger CMS landscape. What do some of the pioneers of the decoupled Drupal phenomenon have to say about what's possible today for decoupled Drupal and what's in store for practitioners? From GraphQL v4, to live preview with Gatsby, to Web Components browser support, innovation in the Drupal community is now quickly challenging some of our initial assumptions and...

Preston So

How to perform robust unit testing and functional testing

Part 1 | Part 2 | Part 3 | Part 4 | Testing is becoming an essential keyword and toolkit for developers and development teams who seek to architect and implement successful and performant websites. Thanks to the unprecedented growth in automated testing tools and continuous integration (CI) solutions for all manner of web projects, testing is now table stakes for any implementation. That said, many developers find automated...

Preston So

What's new and what's coming

Over the course of Drupal’s lengthy history, one of the most common feature requests has been automatic updates. A common complaint of Drupal site administrators, especially those who have smaller sites updated less frequently, is the frequently complex and drawn-out process required to update a Drupal site from one minor version to another. Updates can involve a difficult set of highly specific steps that challenge even the most patient among us. Indeed, many in the...

Preston So

Tag1 Team Talk #007
WebRTC, a protocol that facilitates peer-to-peer communication between two clients via the browser, is now supported by all modern browsers. Since its introduction it has mainly been used for web conferencing solutions, but WebRTC is ideal for a variety of other use cases as well. Because of its wide platform support, creating peer-to-peer applications for the web is now more straightforward than ever. But how do you manage many people working together at the same...

Preston So

How to foster a test-oriented development culture with code checks

Automated tests are rapidly becoming a prerequisite for successful web projects, owing to the proliferation of automated testing tools and an explosion of continuous integration (CI) services that ensure the success of web implementations. Nonetheless, for many developers who are new to the space, automated testing can be an intimidating and altogether novel area that causes more than a few groans at weekly meetings. Luckily, with the right development culture and testing infrastructure in place...