サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Appleイベント
dev.37signals.com
Recently, customers who have purchased a copy of ONCE/Campfire were invited to participate in a live walk through the app’s CSS code. Campfire was built with vanilla CSS, fully #nobuild without compiling or preprocessors, and uses the latest web platform features available in evergreen browsers—CSS nesting, :has(), :is(), and :where(); wide-gamut colors, View Transitions and more. In this post we’
We’ve just released Thruster as open source! Thruster is a minimal HTTP/2 proxy server that we wrote to make it easier to serve a Rails application with great performance and security. It runs alongside your existing Puma process, and adds: HTTP/2 support SSL (via Let’s Encrypt, for automatic certificate management) HTTP caching, for public assets Efficient static file serving via X-Sendfile and c
We’ve just open-sourced Solid Queue, a new backend for Active Job that we use in HEY to run about 1/3 of our roughly 18 million jobs per day. We’ll be moving more jobs in the coming days until we run HEY exclusively using Solid Queue. Besides regular job enqueuing and processing, Solid Queue supports delayed jobs, concurrency controls, pausing queues, numeric priorities per job, and priorities by
It’s been two decades since Rails changed the way we build web apps. As the demand for richer and richer UIs grew, teams came up with different frontends to deliver on those expectations. Client-side frameworks such as Angular, Ember, and React emerged as popular choices. One of Rails’ strengths has always been to empower individual programmers to not just contribute to, but to ship entire full st
Last week, we presented in Rails World an upcoming addition to Turbo that uses morphing to offer smoother page updates and a simplified broadcasting system. This is the article version of the presentation I delivered. The starting point The traditional server-side full-page programming model that Rails nailed twenty years ago is incredibly productive. It lets you think of your application as a set
We’ve just open-sourced Solid Cache, a new ActiveRecord::Cache::Store that we use in Basecamp and HEY. Solid Cache uses a SQL database as its cache store. We get a much larger cache at a fraction of the storage costs of memory caches like Redis or Memcached. For us, that’s a cache size of months rather than days. While memory access is many times faster than disk, it only accounts for a fraction o
I’m happy to announce the official launch of Strada, the long-awaited member of the Hotwire family. Strada enables you to create fully native controls in your hybrid mobile apps, driven by the web. Build web components and native components that work together in WebView screens to elevate your Turbo Native apps to the next level. We’ve been using Strada to build the HEY mobile apps for the past 3
Why are we doing this? A number of our applications have been on a long journey through various cloud providers and services over the years. Originally, we started by moving them from our data centers to AWS ECS, with the promise of lovely contained Docker builds and eventual cost savings. We liked Docker a lot, less so the lack of flexibility in ECS. Thus, we pivoted to GKE on Google Cloud Platfo
Since we published why we’re leaving the cloud last October, we’ve received a lot of questions about how we are using Amazon Web Services, what our current bills looked like, and if the costs savings are likely to justify our decision. We’re happy to share, both where we currently are and where we’re going, so let’s dive in. To begin, let’s review our collection of applications, and where they are
Active Record restates the traditional question of how to separate persistence from domain logic: what if you don’t have to? Persisting objects in relational databases is an intricate problem. Two decades ago, it looked like the ultimate orthogonal problem to solve: abstract persistence out so that programmers don’t have to care about it. Many years later, we can affirm that… it’s not that simple.
A common critique of Rails is that it encourages a poor separation of concerns. That when things get serious, you need an alternative that brings the missing pieces. We disagree. I have often heard this: vanilla Rails can only get you so far. At some point, apps become unmaintainable, and you need a different approach that brings the missing pieces, because Rails encourages a poor separation of co
Recently we focused on improving the performance of HEY. Fixing slow database queries for some of the HEY pages was a challenge, so I thought it would be worth writing up a technique we used. Background HEY currently runs on Amazon Aurora with MySQL 5.7 compatibility. It uses the InnoDB storage engine. In InnoDB, table and indexes are stored in a variation of a B+ tree data structure. The tree is
このページを最初にブックマークしてみませんか?
『How we do, what we do』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く