See Python, See Python Go, Go Python Go

Andrey Petrov is the author of urllib3, the creator of Briefmetrics and ssh-chat, and a former Googler and YCombinator alum. He’s here to tell us of a dangerous expedition his requests undertook, which sent them from Python, through the land of C, to a place called Go (and back again).

Today we're going to make a Python library that is actually the Go webserver, for which we can write handlers in Python. It makes Python servers really fast, and—more importantly—it’s a bit fun and experimental. This post is a more detailed overview of my PyCon 2016 talk of the same title. If you'd like to play along at home, this code was written in Go 1.6 and Python 3.5 and the entire complete...

Read more →

Reactive Ruby: Building Real-time Apps with JRuby and Ratpack

Nothing beats Ruby when it comes to rapid development, quick feedback, and delightful coding. The Ruby runtime and traditional ruby frameworks favor synchronous programming, which makes them easy to use and understand. But microservices and real-time apps require asynchronous programming and non-blocking IO to enable maximum throughput. That's where JRuby comes in.

You can build reactive microservices in Ruby using JRuby and frameworks like Ratpack. JRuby interprets Ruby code into Java Virtual Machine (JVM) bytecode to gain the performance and concurrency benefits of Java without writing any Java code or XML. But the performance benefits of the JVM are just the beginning. You can also...

Read more →

Announcing Heroku Free SSL Beta and Flexible Dyno Hours

At Heroku, we want to make it easy for everyone to be able to learn and explore our service, and the related ecosystem of technologies, for free - be it student, professional developer, hobbyist or just curious individual. We view this as both part of our mission and our business model; it has never been a more interesting - or important - time to be a developer, and we want to help everyone become one.

Today we are announcing two important updates to help bring us closer to that goal: a new and free SSL service and a more flexible way to use free dyno hours. Heroku SSL is being introduced as beta today, and will be rolled out over the coming weeks and months; flexible dyno hours roll out...

Read more →

Where Will Ruby Go Now? Talking with Tenderlove at RailsConf

DSCF4286 Last week at RailsConf in Kansas City, Terence Lee and Richard Schneeman of Heroku’s Ruby Task Force sat down with the legendary Aaron Patterson (AKA tenderlove).

Aaron has been working hard to make Ruby three times faster — a goal that Matz called Ruby 3x3. Along the way, Aaron has discovered that Ruby may face a hard decision. On one side, Ruby can continue to be the productive, general-purpose scripting language that it looks like today. But the other side of Ruby is that it’s used to run long-running processes in Rails applications, pushing it to be more performant, strongly-typed, and memory-heavy. Ruby can't prioritize both.

To find out where Aaron thinks Ruby’s going, you can...

Read more →

Heroku Connect APIs Now GA

Today we’re announcing that the APIs for the Heroku Connect data synchronization service are now GA. These fully supported endpoints will help our users with the tasks they most need repeatable automation for: creating consistent configuration across development, staging, and production environments; managing connections across multiple Salesforce deployments; and integrating Heroku Connect status with their existing operational systems and alerts.

When we first released Heroku Connect, users were delighted with the simple point and click UI: they could suddenly integrate Salesforce data with Heroku Postgres in one enjoyable minute! But as users’ familiarity with the service has grown...

Read more →

Browse the blog archives, subscribe to the full-text feed, or visit the engineering blog.