I've had experience with IB in a quant fund setting. I was impressed with it. Significantly further ahead of the curve in regards to their API offering compared to other brokerages.
At my last check it was mostly geared towards C++/Java with less than ideal documentation. However there are some good open source wrappers available (Python):
https://github.com/blampe/IbPy
As stated in the parent comment, the minimum account balance is $10k.
Not to mention PDT requirement is $25K and more like $30K if you want to get a good buffer zone. You can also trade it via FIX. They open sourced their API here:
https://github.com/InteractiveBrokers/tws-api
I've been a customer for 10 years, awesome service. They had two factor auth back in the day, a card with a simple cipher.
Specifically for options trading, they have incredibly low commissions, and instant execution. I was always impressed by their SDK and tools they exposed. I used the Java toolkit, I never made anything substantial in it though. They are extremely security focused as well.
Having said that, I still haven't created an account there, because I agree strongly with what you said:
not that one should ever go on margin
if you don't know what you are doing
For example, look at how the ex-CEO of Chesapeake Energy, Aubrey McClendon, got blown up by margin (from Wiki):
It was announced on October 10, 2008,
that McClendon sold approximately 33.4
million shares, approximately 90% of his
stock in Chesapeake Energy (stock symbol CHK),
for $16.52 per share to meet a margin call
after the drop in the U.S. stock market
that week. The stock had been worth as much
as $74.00 per share in the year prior to the
sale, a loss of nearly $1.92 billion.
I think that last bit qualifies as #RichPeopleProblems
With IAB, a small player (5k+ in IRA or 10k+ in normal account) can trade on terms comparable to what a mid-sized fund can get.
When it comes to financial assets, I'd rather pay an established player $1 per trade than a fly-by-night operation $0.