Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?
Note: You can take 10% off all Slashdot Deals with coupon code "slashdot10off." ×

Comment Re:Not Very Hard (Score 1) 285

The nastiest bugs are almost always race conditions, which are by their nature non-deterministic and may not be reproducible across time or certain hardware.

That is certainly the problem with one of the toughest bugs I faced. It boiled down to a flag and value being set in a main thread to pass information to code running in an interrupt routine. The only thing that revealed it was exhaustive testing. Once in thousands of tests it would screw up. I studied the symptoms and postulated that the only way this could happen is if the ISR operated based on the flag setting but the value it needed hadn't been set. I examined the code and found that the flag was being set and the value assigned in the next statement. (Doh!) The only time the bug bit was if the ISR fired between the two assignments. Reversing the assignments solved the problem.

Comment What's the chance... (Score 1) 285

Mine wasn't particularly hard but was particularly funny. I was working on "blocking" for a guided vehicle system. Vehicles followed a guidepath buried in the floor which was broken into segments. It was (mostly) sufficient to make sure that no vehicle was in a segment before another vehicle was allowed to enter it. While developing this code a developer on another project ran into a problem where a small circle in the guidepath could be filled with vehicles which would then deadlock because none had an empty segment in front of them.

I realized my project had a similar configuration, a system with 5 vehicles and a circle with 5 segments. I thought "what is the possibility that all five vehicles will be in the circle at the same time" and did nothing about it. Within 15 minutes of getting all five vehicles working on site they were all sitting deadlocked in the circle. I manually moved one out of the circle to break the deadlock and they soon wound up back in the circle. It was comical, like they were drawn to that area so they could deadlock and take a break.

What I hadn't realized was that the vehicles had to traverse some part of the circle to go between to any two destinations on the guide path. I remind myself of this any time I'm tempted to ignore a problem just because I think it unlikely to happen.

Comment Re:It find it more amazing (Score 3, Informative) 302

IANAWE. I had a need to run Windows on something to develop a test TCP/IP server using VS/C#. It wasn't exactly a production system and I had SWMBO's Win7 PC to fall back on so I put Win10 preview on a new laptop and used it. VS 2013 works fine and I would expect that to be among the first programs they tested. I've also used a couple IDEs for embedded targets (Keil, PSoC creator) and they work fine on Win10 even when Win10 is running in a VMWare VM. The only thing I have seen not work is mounting host drives from the VM. I also see a null pointer exception for explorer.exe on shutdown for the most recent release.

The charms bar that pops up on the left if I ever get the pointer close to that edge is gone - Yay!
I can search the task menu with one click - Yay!
The propensity for built in apps to take over the whole screen and with NO option to minimize seems to be gone - double Yay!

And decades after other OSs have figured out how to manage multiple desktops, Win10 manages multiple desktops.

OTOH, Win10 still figures out ways to reboot w/out explicit permission from me. That has not been fixed. Would it be so hard to pop up a dialog box following an update that asks permission? There are times I've been in the middle of something but away from the PC and it restarts because I'm not there to stop it. That is incredibly rude and stupid beyond belief and yet Microsoft deems us not worthy to make that decision.

For my purposes Win10 is an improvement over 8.1 but not enough so to draw me away from Linux.

Comment Re:Meh (Score 1) 830


And before you think they are really in bad shape, according to this National Donut Day article, Canada has more donut shops per capita than the US. http://www.usatoday.com/story/...

I presume this is a US national holiday and that donuts are sold by the dozen and not in some stupid metric count like deca.

Comment Re:As a hiring manager (Score 1) 336

Perhaps you meant Meyer's "Effective C++". Or is it Sutter's "Exceptional C++?"

I hope you are not the hiring manager who throws around buzz words to see if they dazzle the prospective hire.

It's been over a decade since I read them but I still remember the title and author.

Comment One word: Google Services Framework (Score 4, Interesting) 434

I believe that's what it is called. I didn't read TFA but it sounds like they are claiming that Google is not doing anything about the problem. Not true. They have started putting things you might expect in the OS in a downloadable app. Then when it needs to be upgraded, they put a new version in the store and you get it. You do not need to wait for your carrier/manufacturer to provide an upgrade.

They are also unbundling stuff from the OS like the browser. Several years ago the browser was part of the OS and recently a security issue was uncovered in it. Google declined to fix it knowing the possibility that manufacturers and carriers would roll out an OS update. Today the browser is Chrome and it can be updated separately from the OS.

Both strategies allow Google to bring new features to older phones regardless of the lack of diligence on the part of the carriers.

We can predict everything, except the future.