Choosing the SKU setup correctly is important as this rarely changes later.
It is for this reason also that each SKU should be as granular as possible ie include color, style, version or whatever parameter you'll likely need to search by in the future (e.g. for reporting or filtering purposes). This approach of maximum information in a SKU name has the upside that it gives you maximum flexibility to process your data and only the downside that you end up with more SKUs.
The opposite approach (of not including some product information in the SKU name) has the upside of simplifying your data set and reducing its size making it a bit more manageable. The downside is that you cannot draw any conclusions regarding the information not included in the SKU and you have less flexibility to analyze your data.
Given that Megaventory can handle the first case of long SKUs and large number of product codes fine I'd suggest going for a more detailed SKU naming approach. Note also that you can use the SKU for an intermediate computer/human-friendly product identifier and have the Description as the strictly human friendly identifier alongside it. So feel free to make the SKU as rich/long as necessary.
Not including any spaces in the SKU comes handy when including the SKU e.g. in an invoice or email along with other text. If the SKU has no space it's easy to pick it out and not confuse it with surrounding information. Feel free to do a Google search for typical SKU names to get an idea about what people have adopted as a best practice.