Activision paid $99.9 million for Guitar Hero's publisher in 2006, made over $2 billion off the franchise, then killed the entire genre in four years. Today that publisher's name came back from the dead to sell plastic guitars again.
RedOctane was two brothers, Kai and Charles Huang, who started out selling dance pads. They published the first Guitar Hero in 2005 and it hit $1 billion in North American sales in 26 months, faster than any franchise before it.
So Activision did what Activision does. Annualize.
In 2009 alone they shipped Guitar Hero 5, Band Hero, DJ Hero, and Guitar Hero editions for Metallica, Van Halen, and Smash Hits. Six music games in twelve months.
That playbook works for Call of Duty because a sequel only asks for $60. A Guitar Hero sequel asked you to justify the $100 plastic guitar already in your closet, and every new SKU competed with the last one on the same shelf. Genre revenue went from $1.7 billion in 2008 to about $300 million in 2010. Activision shut down RedOctane, then the whole Guitar Hero business unit.
They strip-mined ten years of demand into three.
Now the Huang brothers are back as advisors at a revived RedOctane, the studio head is a Guitar Hero veteran, and Stage Tour launches December 10 with 90 licensed songs and 180 real Gibson guitars. Fifteen years of untouched demand, and the people who invented the genre finally get a second run at it.
Build your band, hit the stage, and go on tour! 🤘
• 90+ officially licensed songs
• 180+ authentic in-game @gibsonguitar guitars
• 50+ bandmates
• Official hardware
• New ways to play and more!
👉️ Pre-order game & hardware now at https://t.co/eYSYM2WQrL.
Inspired is the most valuable player in the west. Every single team and player he plays with peaks and plays at a level they've never reached before his arrival or since his departure.
His shotcalling and decisionmaking is unique and not possible to imitate because it is not observable by the public. He frees up the mental burden of his teammates and allows them to focus on their individual play by directing people on how to win, and he is undoubtedly a world class jungler if you IGNORED all of these qualities.
Absolutely insane, needed to glaze him a bit. LYON really made everyone believe again and it was amazing to see it live ❤
@Dyrus Thank you for sharing all of these memories. I've been a fan since way early on (even before you were on the roster and we had TRM in trashbags), you guys were on the ground floor of something really amazing doing something that most of the world didn't understand
SORRY guys for all the posts lately been super busy lately with a bunch of sponsor events but super excited to share the match schedule for my tournament tomorrow!! Stream starts at 12pm PT 👴@Alienware
I was going to participate in Peter's event but I have been dealing with some health issues so I am not able to 🫤
Please join me in tuning in and supporting the event from home. I know they have been working hard on this and we need more fun events like this in the scene.
Hopefully there will be other fun opportunities for me to do something around league again when my health is better ❤️
USA. A Mexican restaurant. We had not yet ordered anything, and the food was already arriving.
Chips. Salsa. Unrequested. Free.
I stopped the waiter. "We have not earned these."
"They just come with the table, man."
They come with the TABLE. In my land, hospitality is a debt. Every gift creates an obligation, weighed carefully, returned in the proper season with interest of feeling. Here, the gift arrives before you have even proven you can pay for dinner.
This is not an appetizer. This is a declaration: we trust you. Eat.
I ate with the gravity the moment deserved. And then — I must report this calmly — the basket emptied, and a new one appeared.
"Did we…?"
"Refill," the waiter said. "It's bottomless."
Bottomless. They have wells of salsa. The supply lines of this nation are beyond anything my ancestors imagined.
My friend warned me. "Don't fill up on chips, dude."
Too late. I had accepted three baskets. Honor demanded each one be finished — an unfinished gift is an insult. By the time my actual food arrived, I was a ruined man.
I was not hungry. I was not comfortable. I had been defeated by a courtesy.
Generosity that arrives before the request cannot be repaid. It can only be survived.
I know the rule now. I have made my peace with the basket. One basket. Two at the most.
Who am I deceiving. There is no number of baskets I would refuse. The trust of a nation is in that salsa, and I intend to honor all of it.
@MonteCristo@EsportsCharts The airtime dropping down in ‘24 explains the hours watched going down but the peak viewers being higher than the split prior… but then the name change to LTA also showing the huge drop in peak viewers… that’s rough.
I never realized the Airtime dropped by that much… why??
Dear frontend devs and UI designers. I bring you Liquid DOM, a complete and faithful implementation of Liquid Glass on the Web.
- Shape morphing
- All properties animatable
- Dynamic refraction and reflection
- Adaptive tint
- Adaptive specular highlight
- Dispersion
- Full html integration
- Super fast layout engine that works across Canvas and html
- Pointer event handling
- Framework and renderer-agnostic low level API
- High level React API
- Ootb @threejs and r3f integration
And lots more.
Read on for implementation details and demos.
just enabled a minimum age on npm package installs for my machine, should've done this sooner but if you haven't either here's a prompt for your coding agent to configure it for you:
""Find my package manager (bun/pnpm/npm/yarn) and configure a 3-day minimum-release-age / cooldown for installs to blunt supply-chain attacks. Exempt my workspace scopes. Verify the exact config key in current docs before writing."
🚨 How the TanStack npm attack actually happened:
1. Attacker opened a normal-looking pull request (#7378) on the TanStack repo.
2. GitHub automatically ran CI tests on that PR.
3. Code inside the PR stole the workflow's GitHub Actions Cache write token during the test run.
4. The attacker used that token to plant poisoned files in the shared build cache. The PR could be closed afterwards. The poisoned cache stays.
5. The official release workflow later pulled from the cache, baked the malicious files into the build, and signed and published 84 malicious package versions to npm.
Update 5:05 PT: The attack has now expanded well beyond @TanStack and @Mistral.
373 malicious package-version entries across 169 npm package names, including @uipath, @squawk, @tallyui, @beproduct, and more.
The malware propagates by stealing your CI credentials and using them to publish new compromised versions.
Full IOCs, affected package list, and detection steps: https://t.co/jWG9DUCu3x
Node.js v26.0.0 is out 💚
Temporal API enabled by default, V8 14.6, Undici 8, and key deprecations as we keep modernizing the platform.
Check it out https://t.co/ASREIY1jM0
👀 Responsive <img> getting simpler
You don't need to add "manual breakpoints" anymore
Just add sizes="auto" to lazy-loaded images and the browser will figure out the appropriate size of your srcset
Now in all latest browsers
Screenshot: how to use as progressive enhancement
`tabular-nums` should be the default for any number that updates ( timers, counters, prices, percentages, scores, live data etc ).
you can enable this tnum OpenType feature using the CSS property `font-variant-numeric`.
.tabular-nums {
font-variant-numeric: tabular-nums;
}