This salad is adaptable: buy whatever seafood is freshest in the market. If you don't like crabs (or find them too much work to eat), buy fresh clams or mussels and steam them instead; you can even use raw oysters. The fish fillets should be whatever is fresh and suitable for eating raw; raw scallops make a delicious substitution.
Make the dressing first. Mince the garlic, then halve and thinly slice the shallot. Mince a few springs of fresh coriander.
Pour the fish sauce and lime juice into a small bowl. Add the sugar and stir until it is dissolved. Add the garlic, shallot and coriander, then taste for seasonings and correct, if necessary.
Rinse the crabs and pull the back shells from the bodies.
Use scissors to snip off the crab faces from the bodies, then pull out the feathery lungs. Cut the crab bodies into quarters.
Pour water to the depth of about 2.5cm (1 inch) in the bottom of a steamer (or in a wok with a low-footed rack) and place over a medium-high flame. Place the crab bodies and back shells in one layer in a shallow bowl and put it into the steamer (or wok). Cover with the lid and steam until cooked, about five to seven minutes.
Place a medium-size pot of water over a medium-high flame and when it boils, add the shrimp. Cook until the shrimp are pink and curling, about two minutes. Drain and cool, then remove the shells but leave on the head and tail.
Put the crab quarters in a bowl and add the shrimp and raw fish or scallops. Scoop the soft tomalley out of the back shells and add it to the bowl. Add about three-quarters of the dressing and toss to combine until the seafood is lightly coated.
Cut the avocado in half and remove the pit. Use a large spoon to scoop the avocado from the shell. Sprinkle a little salt over the avocado halves then put one piece each in two individual dishes.
Divide the seafood between the dishes then drizzle with the rest of the dressing. Garnish with coriander leaves and serve immediately.