If this were actually true, everyone would do it. When my students complain that something (validation, error handling, whatever) is hard, I remind them that if anyone could do it, their employers wouldn't need them. ---- Then why have so many programmers just finished junior high? ''Depends on your definition of programming. Someone who just learned to hack out a VB script may call themselves a programmer. . . I wouldn't.'' An alternative explanation is that AdultsAreStupid. ;) * Wait, I've heard that somewhere ... oh yes ... MTV and Nickelodeon! ---------- Getting something to work based on clear specifications is relatively easy. Getting it to work and be maintanable with fuzzy specs is the hard part. ---------- Almost anything can be done at different levels of skill. Heck I play guitar, woodworking etc. Am I good? Not really, but I qualify as an amateur player/woodworker. In this sense, programmers can also rate at the amateur level and why not? Just don't expect professional quality results. To be a professional takes quite a lot of skill and more importantly experience. So is it easy? Depends what you aim for. Just like playing simple songs is easy and playing intricate jazz solos is hard; making a notepad clone is easier than making Vim. ''not really. to make a notepad clone requires "copy notepad.exe notepad_clone.exe", but making vim is just "make vim" ;)'' Maybe it should be GettingItToWorkIsEasy but MakingTheBestDesignIsHard ? Or GettingItToDoSomethingIsEasy , GettingItToDoEverythingIsHard ?