The complete grid:
In row 9 we can fill in two blocks of two just by simple counting, since the row must be at least "3 3 1". In the upper right corner, if we assume R2C9 is shaded, then this forces all of R2C8-9 and R3C8-9 to be shaded, contradicting the no 2x2 rule. So R2C9 is unshaded, forcing the squares above and to its right to also be unshaded, and then counting forces R2C6-7 to be shaded. The grid thus far:
The quicker-picker-upper (added later):
I originally had a longer contradiction argument to exclude the possibility that R2C8 is unshaded, but that's because I forgot the connectivity rule at first, and so did not immediately exclude the possibility that R1C10 could be shaded. With that correct deduction, simple counting shows that R6-7C10 need to be shaded for the 3-block in column 10, which forces R4-5C9 to be shaded for the 3-block in column 9, which forces R2-R3C8 to be shaded for the 3-block in column 8. This leads into the rest of the solution reasonably well, since I focused on the left side next, then came back to the right.
The original Long-Developing Contradiction:
By way of contradiction, assume R2C8 is not shaded. Thus gives us the 3 block in row 2 and column 8. Exactly one of R3C5 or R3C6 must be unshaded; were both unshaded, the two 3-blocks in these columns would have to be side-by-side, creating multiple 2x2 shaded blocks. If R3C5 is unshaded, then R4-6C5 and R8-10C5 must be the 3-blocks in C5, which only leaves room for one 3-block in C6. So R3C5 must be shaded and R3C6 unshaded. This forces the location of the 3-blocks in C6, which leaves only one location for the bottom 3-block in C5. Some additional simple deductions leave us with:
Focus now on C9 and C10. The 3-block in C9 must contain R6-7C9, which forces R3-4C9 to be unshaded. But then R4C10 cannot be shaded, since that would force all of R3-4C4-5 to be shaded. Thus the 3-block in C10 must also contain R6-7C10, a final contradiction.
All of that simply shows that R2C8 must be shaded, but this shows that R3C8 is shaded, and that R2C5 is unshaded, which forces the two 3-blocks below it, of which we can place 2 blocks of each. But one of these forces R8C6 to be unshaded, which forces the 3-blocks in C6. These placements also force the positions of the 3-blocks in R9. The grid thus far:
In row 3, the 3-block cannot start before column 3, due to the ? before the 3, so it must be C4-6. In row 4, we need two blocks right of the 3-block, so the 3-block must be in C1-5, forcing R4C3 to be shaded. This forces R1C3 to be unshaded, since the initial 3-block in C3 must contain R4C3. Similar logic in R6 shows that R6C2-3 are both shaded. Together, these force the 3-block in column 3, which then forces R2C4 to be shaded. In column 4, R5C4 must be unshaded, since it would create a 4-block, leaving no room for a 3- and a smaller-block to the right. This indeed forces the 3-block in row 5 to be C5-7. Also in column 7, the 3-block must go between rows 7-10, forcing R8C7 to be shaded. The grid thus far:
Finishing up the left side:
In row 4, the 3-block must be in the first 3 columns, which forces R1C1 to be unshaded. In addition, the 3-block in the second column has to be R2-4. The only other place it could be is R8-10, but if those blocks are all shaded, then connectivity forces R7C2 to be shaded as well. This then forces the 3-block in column 1 to be R4-6. This then forces R6C4 to be unshaded, since there is nowhere else for the 3-block in R6 to go. Connectivity forces additional squares in column 2 in R7-8. After ensuring we get no shaded 2x2, connectivity again forces us to bridge across column 4 in row 10, from C3-C5. Finally, R10C1 must be shaded in order to get four distinct groups in R10. The grid thus far:
The 3-block in columns 4 and 5 are now forced, as is the 3-block in row 8. The latter forces column 10's 3-block to lie between R3 and R7, so R5C10 is definitely shaded. There are thus only two places C9's 3-block can go: either R3-5 or R6-8. But note: R9C9 cannot be unshaded! If it were, then the shaded blocks in R10C7-10, of which there must be at least 2, must be connect out through R10C7 in a single block, but there must be at least two blocks there. So the 3-block in C9 must be R3-R5. The same connectivity and two blocks consideration in the lower right corner force R10C7 to be shaded: otherwise all shaded blocks would have to escape through column 9. Connectivity forces R7C9 to be shaded. The rest falls out with simple deduction.