They shouldn't need to be on the same workgroup, you can always go into "browse entire network" and access computers on different workgroups.. You do have to be in the same workgroup for the other computers to show up when you just dbl-clk on Network Neighborhood.
File sharing protocols just seem flaky to me, I've often had them work, then stop working, then start working again (on large lans, not small ones). I don't want to get too much into it and show my ignorance, but file sharing with the windows computer name uses one protocol (netbeui I believe), and file sharing with the IP address uses another protocol, TCP/IP ... So, when you go to find->computer, try looking for the computer's IP address, instead of the computer name...
if that works, then don't bother reading the ramble below...
The two PC's should be on the same subnet, meaning .. (I get to be technical now) If you do a bitwise AND on the subnet mask and the ip address of machine A, it should equal the AND of the subnet mask and ip of machine B. Since these are on the same network (sharing a hub) you really want them on the same subnet (the and of ip and netmask)
A quick example... if your subnet is 255.255.255.0, then all of your local PC's ip addresses should have the first 3 numbers the same, and the last one different ... The bitwise and of 255.255.255.0 and ip 10.5.3.1 would be 10.5.3.0, and the ip 10.5.3.23 would also bitwise and to 10.5.3.0 ... the same.