I have written a little "guide to better mapping" tutorial so heres a list of things to keep in mind when constructing your maps. You can avoid alot of problems down the road and improve the look/fun factor with some pretty simple techniques. I hope this helps some of you getting started and makes it a little easier. I have been mapping for around 6 years now and basically am self taught, but with all the tutorials for how to do this and that I dont think there is a guide like this that I have seen so I help you gain something from it. Feel free to sticky if you find it of use.
1. Think of the theme of your map entirely from start to finish. You dont necessarily need to plan the layout in advance, but rather come up with the idea itself, what cool things you can add, how they will affect performance in your map, and how to best work it in.
2. Dont be sloppy with your brushwork and say I will go back and touch it up later, make it right the first time. Often times people tend to forget things they did, especially when verticing your walls etc in maps. That can greatly cut the cost of your map performance if you dont properly make your wall connections etc. Think optimization the entire time, dont build maps in such a way you cannot use hint brushes. Remember, if that brush does not block vis or seal the map, func_detail it, and ALWAYS do this for stairs.
3. Prop placement, yes you dont build complex brushes in hammer like in hl1 anymore. When placing your props, make sure you have the model itself fitting in with the theme of the room/setting. If you plan on using some larger models in a certain area such as railings, it is always a good idea to build your brushes around the model, dev textures can help measure the correct size of your brushes. Depending on the model you have in mind it might be better to use a model. If you need to use multiple props of the same type/model like trees for example. Rotate every other model to a different angle so they dont all look all the same. In my farmhouse map I have 3 trees of the same model, but rotated each at their own angle makes them look like 3 different models.
4. Mapping large outdoor maps, you should try to avoid putting alot of details into these types of maps, but if you have a house for example, you need to construct it in such a way you can hint off the indoor rooms that you will see into from the outside. If you dont the entire house will be drawn and likely cost you massive performance hits. Env_fog_controller is your friend, a great way to hide the z clip distance.
5. Texture alignment and schemes. Make sure the textures you use fit the room, same with the props you place in them. Avoid stretching them if possible, never try to fit a single texture onto a large brush or using a floor texture on your ceiling etc *yuck*
6. Sounds, often overlooked in maps. Visualize yourself in your map walking thru it, what sounds might you hear in the real world? Got it? Now to put them in your map. Be sure the volume is tweaked for ones that arent meant to be extremely loud (drops of rain etc)
7. PLEASE use nice architeture. Dont make a hollow box, texture the walls and say theres my room. Cut up the floor, make a step up floor or down, vent shafts, protruding walls, collumns. Same goes with the ceilings, dont always be so fast to slap a brush on top and call it done. Theres alot of things you can do with a ceiling to make it look better. Skylights anyone?
8. A great brush based entity to cut down on resources in larger outdoor maps for buildings is func_lod. This of course should be used with a fog to hid the disappearing brushes as you get out of range. For those who dont know what it is, basically if say you set the lod distance to 200 and are at 300 units you wont see the brush until you are 200 units away.
9. Lighting, make sure the light color and type matches the model it is supposed to be coming from. How dumb would it look to have a blue light coming from a yellow stained bulb? Cost of light sources go as follows starting with the cheapest to most complex for the engine to render. (Light/light_spot/point_spotlight) ALWAYS turn off dynamic light enable on your spotlights, it will cause massive performance drops if you dont.
Last and probably most importantly you should learn the art of optimization, even if you spend years mapping and get really good at it but never learn how to optimize, your maps will run like poo... Here is a link to a very well written and informative guide to optimizing your maps. Read it, read it again, and read it again until you understand every word.