It sounds to me like the issue may be that you're crowding the pan.
Basically, to get everything nice and brown and crispy, you need enough space for all of the steam to escape. That picture you showed has potatoes stacked on top of each other -- that means as the bottom items cook, they're going to end up steaming the items above them.
At a diner, they have a large griddle to work with -- they can really spread things out. You're not typically that lucky in a regular kitchen, as you don't have as much space, and you have a lip on the pans that'll hold the steam in.
So, either work in smaller batches, or consider recipes that use an oven -- using sheet pans instead of a pan on the stove solves much of the problem.
One other trick is that most diners don't start from raw potatoes -- maybe with hash browns, but not for home fries, you're not going to get the nice soft interior in a reasonable amount of time unless you start with a potato that's already been baked or boiled. (If you're doing things in the oven, you might be able to, but not in a pan)
Just for reference ... I have a 14" cast iron skillet that I use for home fries ... and it's about the right size for cooking a single large potato, which might be two servings, maybe three for kids. (I tend to cook carb-heavy meals).
update : I probably should've stated this directly -- you want the chunks of potato to form a single layer in the pan, with space in between them.
Microwave the potatoes before putting them in the oven for about 7 minutes(start with 5 minutes, add 30 seconds every time till done), covered with a little water (very little, couple of spoons full)(potatoes whole or sliced)
Make sure you're not using a 'heavy' oven dish, glass ones can taka a long time to heat up. Place the oven dish into the oven while heating and add a drop of oil. When you put in the potatoes you should hear a little 'hiss' indicating the termperature is right.
Best Answer
There are two basic kinds of potatoes: starchy and waxy.
The difference is actually in the amount of starch in them. Starchy potatoes, such as Russet or Idaho potatoes are best for baking, since the starch will allow it to be nice and fluffy after it's baked. They don't hold their shape particularly well when cooked. If you cut into a baked potato, it should be crumbly and dry.
Waxy potatoes include most fingerling potatoes, and most red potatoes. They hold their shape better when cooked, so they are good for soups and stews and potato salads.
Yellow-fleshed potatoes such as Yukon Gold or Yellow Finn are in between, and so can be used for either purpose. Purple potatoes also seem to have medium starch, and so can be used for both.
According to one cookbook I have (Moosewood Restaurant New Classics), there are two ways to determine which is which. If you cut the potato in half, the blade will have a film or a foamy residue on the knife. These potatoes may also stick to the knife because of the starch.
The rules for the brine is to make it of 11 parts water to 1 part salt. A high-starch potato will sink (it's denser) and a low-starch one will float.
Here's a good overview.
Now as to choosing ones that will bake well, it really depends on size. You want potatoes that will bake evenly, so try to choose ones of similar size. I bake my potatoes directly on the oven rack so that the hot air can move freely around them. Try to give them lots of room for that. Also, if you wrap them in aluminum foil, they'll steam and won't give you the nice crunchy skin. (And I'd avoid any potatoes with irregular shapes -- the smaller diameter ones may cook before the larger ones.)
Large potatoes take about an hour to bake at 350F. Lots of small ones may take a bit less time -- experiment with your oven and your potatoes. I'd start squeezing slightly after about 40-45 minutes. If they yield when squeezed, they're probably done.