I will be writing scripts for ArcGIS Desktop in Python with ArcPy.
Is there a community or open source project where code and models can be shared?
The ESRI community for this used to be called ArcScripts, then ESRI closed that to new submissions in favor of their Code Galleries, and now with the release of ArcGIS 10.1 (presumably the version you have if you just acquired it) they are transitioning from the Code Galleries to ArcGIS Online. There's a set of instructions here for moving your things from the old Code Galleries to the new system, if you just ignore the first step (downloading your existing stuff), the rest of the instructions will tell you how to upload code, tools, maps, etc. and share them with other ESRI users. You'll need a (free) ArcGIS online account.
Esri host free to download user created code, models and applications on their ArcGIS Code Sharing web site, where you can:
Search, browse, and use code, scripts, models, add-ins, widgets, and more.
It is the successor to ArcScripts and ArcGIS Code Galleries.
ArcPy Cafe is a good place to go for some scripts and lots of tips:
Get all your ArcGIS Python Recipes here!
As already mentioned Github is a great choice. It certainly has the largest community.
I'd also have a gander at BitBucket. I find the Mercurial (hg) revision control tools easier to understand and use than git, which Bitbucket supports too. (It helps that Mercurial is naturally aligned with python, the community it grew out of and language it is written in. Helps me anyway ;-)
Whatever your choice, the code branching/merging/sharing alone of distributed version control and hosting is worth its weight in gold plated electrons (to reach very far for a badly strained metaphor...), let alone the built in issue tracking and wiki pages and vendor independence.
One of the "official" code sharing site from ESRI is http://codesharing.arcgis.com/ . This is more for tools that for scripts, because scripts are usually specific to a single workflow and environment, and therefore useless to share.
For Python scripts (IMHO more easy to share than models), you could also look ar Arcpy Café where you will find a lot of useful tips and examples.
As mentioned by @Mapperz, you can also find some stuff on GeoNET