I don't know about MS Sync; I think Sync is name of the application, which runs on top Windows CE and MS Auto. My recollection could be wrong -- I've tried incredibly hard to forget everything 've ever known about WinCE, but I think WinCE and maybe MS Auto are "Shared Source", where you can obtain the source.
QNX is definitely open-source.
...the MISRA standard for embedded systems includes these rules: 2) absolutely no local variables. it could lead to stack overflows.
Could you please cite the MISRA C 2004, C 2012, or C++ 2008 rule that forbids local variables? I don't remember such a rule.
Also I'll make the distinction between a local variable (which could be static, and thus not on the stack) and an "automatic" variable, which is local and almost always allocated on the stack (but not required by the standard -- in fact, small automatics might only live in registers & not even use stack memory).
While it's absolutely true that a large automatic object ("variable") can blow the stack, I don't recall MISRA forbidding such objects.
I've made the exact same argument to co-workers at many firms... namespaces (e.g. Timer_Init()), virtual functions (tables of function pointers), etc. can be approximated / kludged together... but automatically invoking a function at the right place (destructor and, let's face it, the constructor is pretty handy too) is something that has to be baked into the language, and C++ has it. I work in safety-critical systems, and knowing that I can't leave a function with interrupts disabled, I can't forget to close this socket, etc. is incredibly comforting.
I'll quote Bjarne Stroustrup here:
"Just that closing brace. Here is where all the ‘magic’ happens in C++. Variables get destroyed, memory gets released, locks get freed, files get closed, names from outside the closed scope regain their meaning, etc. This is where C++ most significantly differs from other languages. It is interesting to see how destructors -- an invention (together with constructors) from the first week or so of C++ -- have increased in importance over the years. So many of the modern and most effective C++ techniques critically depend on them"
I'd be interested to know if the data-crunchers at Amazon have looked at the Amazon Vine reviews, as a group, to see if they are slanted positive.
Amazon Vine is the program where a certain select demographic of Amazon customers receive free stuff (including items such as 60" TVs, laptops, etc.), with the understanding that they will objectively review the product and post the review on Amazon. My experience is that almost every Amazon Vine review is 4-5 stars. I'd also be curious to see if Amazon looks at the spread of reviews from Vine reviewers -- by that I mean, "Do reviewers in the Vine program rate free Vine products higher than other products they've bought?"
The implication being that Vine reviews (many of them) probably feel that a good review of a product that Amazon wants to sell is "quid pro quo". I strongly suspect that Amazon wants exactly the opposite of quid pro quo; they want early Vine reviews to weed out marginal or bad products.
Absolutely. In a similar vein, have you noticed, the reviews with "Amazon Vine" next to them are typically full of platitudes & praise?
I appreciate Amazon's transparency, in fact I applaud it, but I think the whole Vine program is a bit brain-dead ("Hey we just shipped you a brand-new 60" Samsung HDTV, please let us know if you like it.")
IMO the Vine reviewers would have a lot more credibility if reviewers had to return the product after 30 days (shipping paid for by Amazon). I'll bet if you check most Vine reviews, they are made within 7 days of receiving the product, and I bet they average something like 4.5 stars.
If there is a big-data person from Amazon reading this, try instituting a 30-day "use & return" policy for Vine, and watch participation go down, along with average review. That will tell you who's in it for free stuff, and who's actually interested in using products & writing meaningful reviews (don't get me wrong, I'm not one of them, I wouldn't do it...)
Even though Vine "membership" isn't tied to the average review you give, and (in theory) the terms of participation in Vine are such that Amazon can ask for any Vine item to be returned to Amazon at any time, that's not the reality.
I swear on my life, I have the exact same story (Dave or John, is that you?!?!)
Back country camping the Tetons (this was summer 1990 I think), we took care to hoist anything with smell 100ft away, up in the trees... all of a sudden in the middle of the night, we hear an animal, which sounded very large, moving around our camp. Snorfling, walking, breathing, exploring.... it was probably only 5 minutes, but I swear, it felt like an hour. I have never, ever been more motionless in my life. 2 of us think it was a bear, one thinks it was a moose. All 3 of us agree at the time it sounded like a bear, and we all were having visions of huge bear claws shredding our tent into ribbons.
I've lost contact with my buddies (the aforementioned Dave & John), but I am 100% sure if I told this story, they would remember it instantly. Thank you for posting this, as I said, you described my/our experience to a T, so much so that I had to post a reply.
Mixelbin?!?! C'mon man, get with the times!!! All the kewl kids are dropping vowels like a bad habit.
Much better to go for mxlbn, it's way cooler.
Ironically (I believe that is the correct use of the term), mxlbn.com is actually available as a domain name as well. At least as of 4:18pm P.S.T.
Serious question (in case it sounds like I'm being antagonistic):
Since AES is a block cipher, and an AES block is 16 bytes, and since keypresses appear to be transmitted "instantaneously", does that mean for each keypress, a 16-byte block is formed, and encrypted? And what about the encryption mode? (Otherwise doesn't it basically become ECB?)
Seems like a stream cipher would make more sense, although you'd need a protocol on top of that to stay synchronized, since packets can become lost/corrupted.
I could only find a very non-technical PDF on the topic. Interestingly, the wording seemed to imply something like a DH key exchange (one time, during pairing).
I have a theory that it's impossible to prove anything, but I can't prove it.