Ugh... where to start. Still have a lot to learn myself, but I suppose I could try and outline the basics first.
Okay, first of all, all maps need to be sealed off from the outside void before you try to compile them. If there are any leaks/gaps in the world brushes/blocks in the outer most layer, so that you can see into the void beyond, then there will be problems. There is a prefab you can use to handle all of this, which has a skybox & light_environment to handle the basics.
Click the 'Entity Tool' on the left.
Over on the right side there will be "Categories" and "Objects" selection lists.
Set Categories to 'Prefab' and select the 'box' object
Click on the grid where you want it and then hit enter to inset the prefab.
Everything else will have to be then placed within this box, which can be resized by just selecting it and dragging the corners. Prefabs will be inserted as a 'group'. If you want to manipulate the indvidual parts of the prefab, select it and hit ctrl+u to ungroup them (to make a group select all the objects to be grouped and hit ctrl+g).
On the right side of the screen there will be a 'VisGroups' section. If you click on the 'auto' tab there should be an entry for 'Sky'. If you deselect this it will hide the skybox textured brushes. I found doing this is handy when you want to select a collection of other geometry later on without snagging the skybox.
I wish Hammer had AutoCADs different window selection modes, where if you drag the selection window one way it only selects items within the window, but if you drag it the other way it selects anything the window crosses. In Hammer it selects anything the window crosses, so you'll always be snagging the skybox if you don't turn it off.
Just remember to turn it back on when compiling. Or just leave inserting this til last.
The 'Block Tool' is used to create world brushes, which are the basic geometry of the map.
Drag a window on the 2D views to determine what size the brush will be (you can use [ and ] to adjust the size of the grid. by default vertices will always snap to the grids), and then hit enter to insert to brush/block. Again over on the 'Categories' and 'Objects' you can set what type of Primitive you want, blocks, arches, cylinders, cones etc. You can still manipulate the size of the brush after it has been inserted.
I hadn't actually played with anything but block type primitives... as I didn't realise there were any other types.
When the brush is inserted it will assume whatever texture is selected over on the right hand side of the screen, and apply it to all faces.
When selecting textures (or prefabs, or models, or overlays etc) it's best to stick to what is in the TF2 selections, even though you may have access to all the HL and CS stuff. Otherwise if someone who only has TF2 tries to play the map it will be screwed up for them.
Click on Browse beside the current texture to bring up the texture browser.
In the 'Keywords' drop-down box at the bottom select 'tf'
You can then use the filter to search for the like of concrete, wood, nature etc.
Double click on your desired texture and that become the selected texture for new brushes.
You can also apply that texture to an existing brush, by selecting the brush and then clicking the 'Apply current Texture' button (7th down on the left side).
When applying textures to all faces like this I found it is better to pick a generic pattern-less texture, otherwise you'd have to be cleaning up individual faces for mis-aligned patterns (you could see a load of em I missed on the map last night).
To edit a single face's texture click on the 'Toggle Texture Application' button (6th down on the left or shit+A). Here you can align, scale or select a new texture for that particular face. Just pick a face in the 3D camera view (navigate with WASD and arrow keys) with the tool on (should have a bucket icon). It should be pretty straight forward.
You can set the default texture scale in the options window if you find you keep having to alter scales.
To get a good sense of scale on the maps (like I'm an expert at that
) you can insert a resupply locker prefab.
Before the official SDK release, part of the instructions for the hacked up activation method were a bunch of community made prefabs, which include resupply lockers, capture points, roller doors (and now looking at it closer a bunch of standard entities I should have put in my map that would have made the lighting better, ugh). So if you can find those instructions somewhere, there should be a download for 'prefabsandfgd.rar'. There will be a TF2 Prefabs folder in there that you can put into '..\sourcesdk\bin\orangebox\bin\prefabs'. When you now select the entity tool, there should be a TF2 Prefabs category to select from.
So you can insert a supply locker there to get a sense of scale.
When inserting lockers this way, make sure you don't just copy and paste it if you want a second one. When these particular prefabs are inserted they have their 'name' values incremented by some counter (if you open the prefab file, the names will be like 'prop_resupply_red_&i', where the &i will translate to 1, 2, 3.. etc for each instance of that inserted prefab). If you were to just copy and paste, both the lockers, triggers etc would have to same names, so walking up to one would also trigger the other (you would see the others doors open). Would be more of an issue with the roller doors.
So, insert an actual prefab for each instance you want. Over time people will probably release more prefabs for the essentials to build up maps quicker.
Or if you didn't want to use prefabs, you could just piece them together yourself. The resupply lockers are pretty easy with just two elements to them:
Insert an entity of object type 'prop_dynamic' (selected in the 'objects' drop-down orver on the right side of the screen, or insert any type of Entity and edit its properties to select the correct Class).
Select the entity, right-click and select properties (or alt+enter).
Set the World Model as 'models/props_gameplay/resupply_locker.mdl' (you can browse with the model viewer) and give it a unique name
Then put a brush around the locker with a texture type of 'tools/toolstrigger'
Select the brush and hit ctrl+t to tie the brush to an entity of class type 'func_regenerate'. Then set 'associated model' to the name you gave to the locker prop. And then set the team.
And that should be it. When ever someone of the set team passes through the trigger brush they should regenerate.
You can insert static props, like signs, as entities in a similar way, but with the 'prop_static' class. The TF2 sign models have different skins, for example in the model browser you will only see the big wooden red control point signs for the A CP. If you insert that model as a prop you can turn it into a B or C sign by changing the skin keyvalue from 0 to 1 or 2. It's the same for a lot of the signs ('Intelligence', 'Resupply', 'Battlements' etc all on one model).
To apply non model signs you need an Overlay, which are special textures.
You need an existing brush face to apply the overlay using the Overlay Tool (9th down on the left or shift+O). Using the tool, click on a face in the 3D view and an overlay node will be placed near that face. Then edit the properties of the overlay, selecting the texture you want (filter by 'overlay' or 'sign' for the most likely ones you can use).
There is a straight forward tutorial
here on building spawnrooms
Enough to get started?