Indie game development tips:

#1) Be ready to fail. Most indie games do not break even. Studios close all over the place. Work hours are insane and crunch seems to be the norm in the games
industry. Expect insane stress and massive delays because things are not working. As in, 87% of indie games lose money. There are success stories, of course, but they're rare - only a dozen indies per year become legitimate hits. That's out of the thousands now released per year. You will NOT be the next Angry Birds.
Angry Birds IS NOT indie and I'm really, REALLY tired of idiots who don't know a thing about games, much less the games industry, telling me that it is. Angry Birds was Rovio's 52nd mobile game and the studio had a lot of experience, and a fairly large budget / ad campaign going into it. Meanwhile I'm sitting here making a game that will in the end cost less than 4% of what they spent, and yet will in many ways be far more ambitious, mainly due to thousands of entirely unpaid hours of labor.
I would not do any of this if I were aiming to 'strike it rich' - I am well aware my
game will [statistically] almost surely fail, and I'm fine with that because I loved much of the process of making it and there's a lot in it I feel strongly about, I sort of had to
make this game, even if I knew I'd never make a single sale, I'd still make it.
If you feel that way about your projects you are meant to do this. If not, find another career.

#2) Keep expectations low in terms of your game's scope. Don't make an MMO, that's an exercise in futility for an indie dev. I'm personally seeing a lot of [indie] hits are happening in 'adventure/puzzle' or 'platformer' categories or a mix of the two
[puzzle-platformers] and it's not an accident. These are genres which have been widespread since the '80s, when all game studios basically were small. They won't
ever make GTA V levels of cash but if you handle them well and give them a bit of a creative twist, they're well within reach for a solo indie dev. A smaller game you can
finish and release is better than a giant one you can't.

#3) Choose a game engine you are sure will be viable for the next 5 years. I learned this the hard way with Adventure Maker - I tried making a big game with it once [Traveler's Enigma] and by the time I was nearing some sort of finished thing, the engine was no longer supported by the developer or modern versions of Windows.
That was a foolish time sink. So try to future-proof your software/engine by opting for a modern engine like Unity or Unreal - one with a sizable community built around it and active updates on a regular basis. I now use Unity, along with a visual scripting tool called Playmaker, and couldn't be happier with all of it.

#4) Playing games is not equal to developing them, it is incredibly difficult at times and once in a while you'll get intensely frustrated doing it. Programming and interactions can go wrong in so, so many ways. So if you are doing this, figure it'll take way longer than it 'should', and focus on the hardest aspects of your project first.
If you can prototype those weak spots and show they're doable, then you'll more or less know the project as a whole can be completed. In my case I'm a decent artist and a sucky programmer. So I have tended to play to my strengths and am making
games with immersive visual environment art but relatively limited interactions. But testing the hard parts comes first.

#5) Teams work, but bring production value to the team, not just a concept. If you're good at some parts of development but not others, fine, you can always exchange work with another indie dev. But without some skill in some technical area you'll never make it.
'Idea Guys' are despised in this industry - because ideas have no value unless they're executed well. Ideas with a technically skilled person backing them up? Those go somewhere.
0.1% of the work is the concept. 99.9% is making it into a finished project. You can't only contribute 0.1% of the work. Everybody on your team will hate you for it and then bail,
unless you're the CEO paying them, which is just about the only way you can get away with not working meaningfully on a project.

 #6) Test, test, test. Not by yourself. Give your game to players before releasing it and check what confuses them or where they do things you didn't think of that break the game. Testing often is critical to refining a game and making it better.

#7) Promote your game once you know you have the ability to finish it. It is not likely people will just 'find' it without you telling them it exists. In fact, it's likely good to build up excitement well before the game is even ready to launch. If you truly believe your work has merit, and you've put your heart into it, this will probably come naturally anyway. Find the relevant communities of people online and let them know your game exists. [No spamming irrelvant groups though, it's a waste of everyone's time and is likely to just annoy people!] But if you fail to promote your work and put yourself out there, your odds of failing at launch go from 87% to essentially 100%.





The banner links at the bottom of each page include links to my own webpages, links to my storefronts/shops online, and occasional links to other [third-party] verifiably legitimate stores and services I've hand-picked, vetted, and used myself. 
That said, I'll openly disclose that when you buy something from another vendor using these links, for example, a link to Amazon.com, I will get a small fraction of the sale amount and will use that as a means of supporting and expanding the projects I'm working on here. These ads for other vendors, as well as - especially! - links to my own shops, are helping me keep these sites online and growing with new content on a more frequent basis.