1. Degiro is sort of Robinhood counterpart, but it's more expensive, does not have (documented) API and lacks access to US exchanges (for options).
2. Interactive Brokers is a heavyweight that provides API and all the bells & whistles you could ask, but it clearly expects larger accounts. I have < $100k invested right now which makes their commissions rather expensive for daytrading and there is effectively no support from them (which they don't state clearly, but none of my queries have been answered by a human).
3. ChoiceTrade is available in EU as well, but they refused to provide me API access. Their commissions (for US options) are lower than IB (for < $100k accounts at least), but the service itself has shadier reputation.
I have tried all three of these and decided to use IB. They provide two types of API. I am using a simpler one - "TWS API". It is widely used, so there is plenty of documentation and libraries. Protocol is pretty archaic and you need to run GUI Java-based app which acts as a gateway between your code and their servers, but there are documented ways to hack it for running in headless mode and performance is fine for my use case, so I didn't bother looking any ways around it. Additionally there is a second API, which is using FIX protocol that's "industry standard", but I'm not working in fintech and am not familiar with it / didn't need it so far. My understanding is that you still need to run the same local Java app if going FIX route.
That said, assuming most people here are from US, I would recommend to try starting out with either 1) Alpaca.markets (free, but only supports trading stocks) or 2) TD Ameritrade (both stocks and options). Both have modern REST API that you would expect in 21st century. Might be too limiting for professionals and definitely isn't meant for HFT, but IMO they should be sufficient for people algotrading as a hobby.
I know that there are other services as well, some specifically targeted for algotraders and some people even use reverse-engineered Robinhood API, but I can't vouch for any of these.
If you have purely technical questions, reddit has a few communities that can help and you can find more people on Discord.
Understanding stocks, options and all the financial stuff was the hardest part (for me as a non-fintech guy) as it's filled with their own lingo and large part of information available online is useless or even harmful (either coming from noobs/gamblers or "financial gurus willing to disclose their secrets for in a private webinar" or even legitimate traders that operate through textbook "cargo cult" rituals). Investopedia is a good start, but if your goal is to have profitable algorithm that does not require your attention, you will need to read and understand the rules and regulations that apply to your jurisdiction and exchanges you use. There are many somewhat obscure events that happen fairly rarely (during normal times - low volatility period, right now everything is accelerated 5x) so you might not hear about them at all until they affect you, but once they do occur you will either lose money or lose opportunity. I am going for sources (sec.gov, nasdaq.com, nyse.com - I trade US options exclusively), there might be some shortcuts (probably trainings), but I haven't tried any.
If you are just starting, try paper trading but also get a real account with real money as soon as you can (< $500 is fine and it's not like you're losing that money [outright] either), because paper trading is really just an approximation and you won't catch all the special cases through it.
If you want to be above the average algotrader - start by collecting detailed data (per minute or so) and storing it for future use. Many brokers give you access to historical data but it is very basic and good quality historical data is very expensive. Use this dataset to backtest your algorithms, but try to make distinction between features that have real-world causes, the ones that are just product of chance and the ones that are caused by market makers or other traders. Most of the trades are happening fully automatically and everybody uses basically the same few sets of approaches, so you should be aware of them to either make or avoid losing money on those somewhat predictable components.
Oh, also make sure you understand the way your broker calculates all the fees and commissions as with algotrading that can make or break the whole profitability for you.
what is your opinion on technical analysis and does it need to be used in algotrading? I've seen some of the basic indicators but wondering if I need something more than RSI and MACD
1. by having insider knowledge
2. by market manipulation
3. by getting lucky
Obviously, I haven't taken any classes or worked for the Wall Street so might be missing some hidden knowledge, do your own research. My strategies mostly assume random outcomes and work on a scale that does not require TI, but I also attempt to detect dangerous stocks, market makers' sentiment and market manipulation (btw, cryptocurrencies are great for studying mm).