It's not perfect. I have a single-floor apartment with no door thresholds, yet it keeps getting stuck. I keep cables and so on neatly organized and hidden, but sometimes I've left a temporary charger cord or something on the floor; this kills the Roomba. You also have to careful with plants -- it ate a whole branch of a plant once that was hanging low near the floor. It has issues with rugs, especially with black areas, but also just getting onto the rug. It also loves to close the door on a room so that it can't get out; I had to buy a couple of door wedges to prevent that, but I don't always remember to use them. Pretty much 50% of the time I come home to find the Roomba dead in a corner.
Its dust compartment is quite small and must be emptied at least every 2-3 days. You also have to take out the little spindle things and remove hair which collects around the axles. Fortunately, the Roomba is really modular in design; you can take it apart completely, and there are replacement parts for absolutely everything. It is a rare product where the designers seem to have rejected the trend of planned obsolescence; I haven't really owned it long enough to be qualified to judge, or taken it apart, but everything I have seen indicates that it was carefully engineered to be repairable and last a long time. (It's probably hackable, too.)
Despite its weaknessss, I am quite happy with it. It keeps my apartment clean and removes the mental burden of thinking about dust. A couple of times a month I take my Dyson to clear up some corners that the Roomba can't get to where dust bunnies pile up. I have a friend who combines it with the cleaning model, but I can't deal with two gadgets that leave their depleted, cable-choked corpses around.
But after I moved to a different apartment, and he got his own place. I really saw how much work that thing was doing. I forgot how often the floors need to be swept to keep it clean. I plan to buy one myself once I move at the end of this month.
I had one about five years ago, and so long as I pressed the "clean" button every day when I left my flat it was good enough that I only manually cleaned every two weeks or so.
My place was ideal though, all on one floor, with no steps, and polished wooden floorboards + thin carpets only.
I expect modern ones are better in terms of suction, battery life, and I know that you can schedule them so that removes the element of having to remember to press the button
You can't have anything on the floor, so I wasn't really able to let it run while I am not at home because I was afraid it would hit stuff. Sometimes it even pushes furniture around or bumps into other stuff and scratches it.
I can vacuum my whole apartment in a lot less time than when using the roomba.
The roomba kept blowing around the dog hair and ignore spots, but kept going over the same spots a thousand times.