Tag Archives: architecture

Software Architecture cheat sheet

1. Is this a “Good Idea”? Feature creep – kill it.
2. DRY. Don’t Repeat Yourself
3. Orthogonal? how independent is this?
4. Testable? Testing is important. Manual testing is good. Automatic testing is much better.
5. Is there another way? “Nothing is more dangerous than an idea if it’s the only one you have.”
6. Costs of changing this later
7. What if I didn’t have this problem? See if you can change the problem.
8. Challenge assumptions – especially your own.
9. Document rationale

(Full Story: Software Architecture cheat sheet)

StubHub Architecture: The Surprising Complexity Behind the World’s Largest Ticket Marketplace

Scalability is specialization. Every problem space has its unique characteristics and any system must be built to solve that particular problem. StubHub is constrained by the need for a safe buying experience, the unique nature of the ticket market, bursty traffic, and the vagaries of events. Their system must reflect those requirements.

(Full Story: StubHub Architecture: The Surprising Complexity Behind the World’s Largest Ticket Marketplace)

Startups are Creating a New System of the World for IT

One reason for this revolution is explained by Etsy in terms of Conway’s Law:

When a team makes a product the product ends up resembling the team that made it.

I’ll extend this notion to say the team and thus the product end up resembling the underlying technology used to make it. When you change the underlying development infrastructure, by moving to a cloud, you are bound to change teams and processes they create.

(Full Story: Startups are Creating a New System of the World for IT)

Pinterest Architecture Update – 18 Million Visitors, 10x Growth,12 Employees, 410 TB of Data

80 million objects stored in S3 with 410 terabytes of user data, 10x what they had in August. EC2 instances have grown by 3x.

(Full Story: Pinterest Architecture Update – 18 Million Visitors, 10x Growth,12 Employees, 410 TB of Data)

What Powers Instagram: Hundreds of Instances, Dozens of Technologies

Most of our data (users, photo metadata, tags, etc) lives in PostgreSQL; we’ve previously written about how we shard across our different Postgres instances. Our main shard cluster involves 12 Quadruple Extra-Large memory instances (and twelve replicas in a different zone.)

We’ve found that Amazon’s network disk system (EBS) doesn’t support enough disk seeks per second, so having all of our working set in memory is extremely important. To get reasonable IO performance, we set up our EBS drives in a software RAID using mdadm.

(Full Story: What Powers Instagram: Hundreds of Instances, Dozens of Technologies)

The top 9+7 things every programmer or architect should know – Java Code Geeks

1. “You don’t have to make every module perfect before you check it in. You simply have to make it a little bit better than when you checked it out.”
2. “The bottom line is that beautiful code is simple code.”
3. Step Back and Automate, Automate, Automate – Cay Horstmann
4. Continuous Learning – Clint Shank
5. Check Your Code First Before Looking to Blame Others – Allan Kelly
6. Hard Work Does Not Pay Off – Olve Maudal
7. Comment Only What the Code Cannot Say – Kevlin Henney
8. Know Your IDE – Heinz Kabutz
9. Learn to Estimate – Giovanni Asproni
1. Understand The Business Domain – Mark Richards
2. Before anything, an architect is a developer – Mike Brown
3. Find and retain passionate problem solvers, Give developers autonomy, Empower developers
4. It’s never too early to think about performance – Rebecca Parsons
5. Record your rationale – Timothy High
6. Stand Up! – Udi Dahan
7. Great software is not built, it is grown – Bill de hora

(Full Story: The top 9+7 things every programmer or architect should know – Java Code Geeks)

Anatomy of a Crushing – Pinboard.in Blog

It was my experience that people approached an online purchase of six dollars with the same deliberation and thoughtfulness they might bring to bear when buying a new car. Prospective users would hand-wring for weeks on Twitter and send us closely-worded, punctilious lists of questions before creating an account.

(Full Story: Anatomy of a Crushing – Pinboard.in Blog)


Follow

Get every new post delivered to your Inbox.