This question probably won't fit into the Stack Exchange guidelines because of a number of factors, so bare with me.
When I look at console log, I see this error on the times Esri widgets don't load:
[Error] TypeError: null is not an object (evaluating 'e.renderer.toLowerCase')
ia (init.js, line 33)
fa (init.js, line 33)
g (init.js, line 35)
(anonymous function) (init.js, line 40)
I don't even know what to ask, I'm afraid. Besides...what the hell? I feel like this became a problem as the code become more complex and/or as I called more widgets.
Here are some random thoughts: does this have something to do with the timing of how things are load? Does this somehow relate to dojo/ready or dojo/DomReady? Or parsing.