Scala
fromMedium
3 days agoScala's Growth Model - Building Inward, Starving Outward
Scala's ecosystem excels internally but struggles to attract new users due to structural and cultural barriers.
Every iOS app I've shipped over the last nine years started the same way: a Rails developer with a great web app, users who want it in the App Store, and weeks spent on Xcode, signing certificates, and Swift boilerplate that has nothing to do with the actual product.
If there's one universal experience with AI-powered code development tools, it's how they feel like magic until they don't. One moment, you're watching an AI agent slurp up your codebase and deliver a remarkably sharp analysis of its architecture and design choices. And the next, it's spamming the console with "CoreCoreCoreCore" until the scroll-back buffer fills up and you've run out of tokens.
When you learn on your own, you're responsible for: Choosing what to learn next Deciding what "good enough" looks like Knowing when you're ready to move on Evaluating whether your work reflects real-world expectations Most beginners don't struggle because they lack discipline. They struggle because they don't yet have the context to make good learning decisions.
The main reason for Ruby's drop is Python's popularity. There is no need for Ruby anymore. Ruby was the Tiobe language of the year in 2006, having displayed the highest growth rate in popularity that year, it is now close to dropping out of the top 30, according to Tiobe CEO Paul Jansen.
Dear JS ecosystem, I love you, but you have a dependency management problem when it comes to the Web, and the time has come for an intervention. No, this is not another rant about npm's security issues. Abstraction is the cornerstone of modern software engineering. Reusing logic and building higher-level solutions from lower-level building blocks is what makes all the technological wonders around us possible. Imagine if every time anyone wrote a calculator they also had to reinvent floating-point arithmetic and string encoding!
One of my oldest open-source projects - Bob - has celebrated 15 a couple of months ago. Bob is a suite of implementations of the Scheme programming language in Python, including an interpreter, a compiler and a VM. Back then I was doing some hacking on CPython internals and was very curious about how CPython-like bytecode VMs work; Bob was an experiment to find out, by implementing one from scratch for R5RS Scheme.
The Amazon SQS Extended Client allows clients to manage Amazon SNS and SQS message payloads that exceed the 256 KB message size limit, up to a size of 2 GB. In the event of publishing such large messages, the client accomplishes this feat by storing the actual payload in a S3 bucket and by storing the reference of the stored object in the SQS queue.
The core idea is three separate attribute layers: inputs (what comes in), internals (working state), and outputs (what goes out). Each is a distinct declaration with its own namespace and type checking. Combined with declarative make calls that define action order, the data flow through a service is visible at a glance: class Payments::Process < ApplicationService::Base input :payment, type: Payment internal :charge_result, type: Servactory::Result output :payment, type: Payment make :validate_status! make :perform_request! make :handle_response! make :assign_payment
You're in total darkness and then it'll flicker on and you go like, 'I can see everything.' And then two seconds later, boom, pitch black.
https://github.com/carter2099/hyperliquid There was no Ruby SDK for the HL API so I made one. This was my introduction to Claude Code and it was awesome. I was able to code with an LLM, stay in the terminal, and still learn something new (WebSockets). I also forked an existing ruby web sockets client gem and made it my own: https://github.com/carter2099/ws_lite. Up next I'll use this SDK to create an automated short rebalancer for my concentrated liquidity pool positions.
We're introducing a new animated map engine built on top of ruby-libgd and libgd-gis. It allows Ruby applications to render real basemaps, draw GIS layers, and animate moving objects (cars, routes, planes) entirely on the backend - no JavaScript or WebGL required.