should have flowered a while ago imo. 18" is usually as big as i let them get before flowering-usually around 12". I would suggest pruning it well and clipping lots of the small branches so you dont get a bunch of popcorn buds. you can also top it and/or bend it out so it doesn't outgrow its space. Plants all have a max yield, they will produce this in large nugs or small nugs depending on how many nodes. some plants, like blueberry, do great when grown larger bc of their high yield, and can lose yield if not topped or trained. Most growers make that mistake the 1st time, including myself. The plant spends about 8 weeks in flowering, so it will get much bigger than it is now, so you might want to take that into consideration.
The top branch is pretty stretched, i would chop it so that it is same height as the majority of the plant, you want it to grow consistently. Its like if your cooking, and u put 1 thing closer to the heat than the rest-they aren't getting the same love from the light.
For now, make a nice canopy put it to flower cut off the bottom 8-12" of small branches since they wont grow much, and it will lower bug and mildew problems. Just make sure you never trim off more than 50% at one time or you will stress it and slow the growth. They regrow fast, so dont be shy-we all were our 1st time. also google "cannabis grow bible" and get the scribd version. read it, learn it, love it. best book for beginners to learn.
Look into Low Stress Training (LST). It will give you more yield, but that is for the next grow.