Summary: The slowest you’ll see the network is when you first joined. The IOTA protocol’s unique design makes it faster as the number of nodes and transactions on the network increase in number. It may not be “fast” right now, but it will only get faster in the future.
Confirmation times depend on 3 main things:
Number of transactions on the Tangle (the more transactions, the more opportunity for your transaction to be verified by others doing PoW)
Tangle topology - right now the network is clustered because of how full nodes are connected. Topology is in a constant state of flux, and will naturally be smoothed out as the number of nodes increases.
Your location in the Tangle. If you're located in one cluster, and you're trying to send to a node in a different cluster, it may take a very very long time for that transaction to confirm. If you're sending within your cluster, it can take a few seconds
How can we contribute to making confirmation times speedier within the framework presented above?
We can increase the number of transactions on the Tangle by encouraging organic growth of users on the network! Adoption is the way forward here. OR we can spam the network with our full node. Spamming has been common practice by many of the early adopters in months past, but the devs have requested that we refrain from spamming so that they can get a good feel for the network without external factors like inflated TPS.
It's super important to contribute to good Tangle topology by keeping good neighbors if you're a full node. Maintaining 9 solid, healthy neighbors is crucial for overall network health. Remove neighbors who are often un-synced or offline, and replace them with newer neighbors! This is an active process right now.
You can change your location in the Tangle by connecting your light wallet to a different host.
Remember to reattach transactions once every 30 minutes that they remain pending. After 5 reattachments, contact the sender to make sure the transaction wasn't double spent.