A couple court decisions regarding gun bans (DC and Chicago) have put gun laws in the news lately. Banning guns and banning drugs have the same logic behind them, but a lot of people have completely different opinions on each of them.
The logic behind repealing gun laws is that criminals who want guns will get them no matter what the law is. The logic behind ending the 'war on drugs' is that drug users are able to get their drugs despite decades of criminalizing drugs. This is the same logic and both of them are correct. The funny thing to me is that conservatives agree with this logic when it comes to guns, but not drugs, and liberals are generally the opposite.
In my opinion guns need to be regulated (keep it locked up at home, ban assault rifles) but blanket gun prohibition is absolutely silly, especially if it is city by city or state by state, rather than federal. A city-wide ban on handguns just increases the cost of a gun by a round-trip bus ticket. A federal ban on assault rifles or on weapons that can be converted into assault rifles would likely be effective (it'd have to be written much better than the 1994 law) and would be something I would probably support. My reasoning is that there's no legitimate use for an assault rifle, but there is for handguns (personal/home defense) as well as shotguns and rifles (hunting).
Similarly, drugs need to be regulated but absolute drug prohibition has clearly failed. I'd be in favor of something like Portugal's approach. Drug trafficking and sales are criminalized, while drug use is not (drug users' drugs are confiscated and destroyed, while the user is issued an administrative summons that lead to either fines or treatment). Drug use, overdoses and HIV infections have declined in Portugal as a result.
We should have learned our lesson from prohibition. Blanket bans on products won't work if there's a huge demand.