← Back to context

Comment by SapphireSun

12 years ago

I agree with most of your points, but software is constrained by physics. Bandwidth (disk/network), calculation speed, which processors to allocate resources, ram. In fact, many software architectural decisions are made because of these inevitable physical barriers.

Sometimes the barriers are themselves architectural. How do you network together two computers when there's no simple route for a network cable and the Wifi is saturated? Where do you put this monster rack?

In real buildings, there are tons of dynamics - it just depends on the building. You can have commercial shipments, foot traffic, elevators, go karts, water pipes, and more. The reason we don't think of these is because buildings are well designed so that these things are managed well. Imagine if all commercial shipments were made during peak foot traffic and weren't given access in the back?

In any case, food for thought. :)

Imagine if all commercial shipments were made during peak foot traffic and weren't given access in the back

This exact scenario happens at my local Starbucks. The little strip mall it's in is set so far back on the property that there is no room for a delivery vehicle behind the building. So they get all their deliveries through the front door, and it usually seems to happen just at the end of lunch hour (the worst time, as people are getting their after-lunch coffee).

Point taken ;-)

I was thinking more along the lines that you can not have a building with 100 rooms, where each room has a door to every other room. In software on the other hand, nothing (except your own sanity) stops you from having 100 classes, where each class accesses every other class.