Embedding views in tpl files I need an advice. Is there any downsides when embedding views in the page/node tpl files like the following:

&lt;?php print views_embed_view('course_videos', 'block_1'); ?&gt; and this &lt;?php $key =  views_get_view_result('course_videos', 'block_2');  ?&gt; in the node.tpl files

I am little bit concerned cause I've read several articles saying you must not query the db or use a complex php logic in the tpl files. Everything's working like a charm now. The site is still not in production though...

Thank you in advance!
Including views in tpl is going backwards. Drupal allows you to use views as pages and as blocks. You can apply templates to that pages and blocks, and you can put blocks in regions. By calling views from template, you are messing with theme registry and cache logic. It might be not an issue if site is small, and both read and write volumes are low, but it will result in pages being out of sync on heavy loaded site.

Instead of outputting view directly, make a region, output it in template file, and put a views block inside.

Using views_embed_view in a preprocess function in template.php might be OK. Opinions and experience with it can vary, and I would try to avoid it, but certainly it does not mess with cache or theme registry like using it in tpl would.