High CPU use by taskhost.exe when Windows 8.1 user name contains “user”
support.microsoft.com
support.microsoft.com
To resolve the issue, do not create a user account contains the string "user" on the computer."
That's not really a resolution so much as a workaround.
That could be substantially inconvenient compared to going back in time and telling your former self not to create it.
Best to just wipe and reinstall.
Solution: GFYS
Solution: Don't say that word.
The word that the Knights of Ni cannot stand to hear!
Method 2: Move Your Mouse Pointer
If you move your mouse pointer continuously while the data is being returned to Microsoft Excel, the query may not fail. Do not stop moving the mouse until all the data has been returned to Microsoft Excel.
NOTE: Depending on your query, it may take several minutes to return the results of your query to the worksheet.
Is this sentence correct? Maybe a "that" is missing after "account", or shouldn't it be "containing" instead of "contains"?
I'm asking because English is not my native tongue.
"I wish you'd do the dishes" sounds fine to most native English speakers, except those who are extremely fussy about language. Leaving out "that" in this sentence will sound wrong to most native speakers (though we can easily gloss over it when reading).
"I wish you'd do the dishes" is fine. Far better than "I wish that you'd do the dishes". The "that" is useless. It's contextually clear what you're wishing, with no misunderstanding.
Many "that"s hide poor sentence structure and are a sign of lazy writing/thinking. Take the following:
- I realize now I need a car.
There is some ambiguity about what exactly I mean. I could use "that" to clear things up:
- I realize that now I need a car.
- I realize now that I need a car.
But that helps me spot the problem isn't the lack of "that", it's the "now", and I subtly alter the sentence's meaning based on where I place it:
- I realize I now need a car.
- I realize I need a car now.
- I now realize I need a car.
I should pick the sentence that most clearly communicates my meaning.
It should also be noted that leaving out "that" (if grammatical correct) can sometime sound wrong to native speakers, but that varies from accent and region since there is no standard (at least as far as I know).
While the article's mistake is a result of omitting a necessary "that", this example about dishes is a case of inserting one that is ugly, unnecessary, and actually ruins the sentence flow.
My other comment to a sibling explains more: https://news.ycombinator.com/item?id=11714645
https://en.wikipedia.org/wiki/Hauser https://en.wikipedia.org/wiki/Krauser https://en.wikipedia.org/wiki/Mauser_%28disambiguation%29
8-)}
So does DFPCommon.dl do, anyway? Does it have something to do with "telemetry", the built-in spyware in Windows 10?
So to answer your question, no, it's not part of the telemetry infrastructure. And I'll add that calling that infrastructure "spyware" is a simplistic analysis of what's a complex issue. I say that as someone who goes to great pains to turn off as much telemetry as I can across almost all applications I use.
Do I have a universal toggle to shut off all "telemetry" data? If not, then it's spyware.
If it spies on me making it difficult or impossible for me to disable the spying, then what really makes it any different from traditional malicious spyware other than the intention? (if there's any difference to begin with)
https://mdzlog.alcor.net/2009/08/15/bohrbugs-openoffice-org-...
Also the email bug some university had that they couldn't send emails further than 500 miles exactly.
Clearly this is to prevent students from racking up the phone bill surfing long distance[1].
Doctor: "Solution: stop touching your abdomen"
Doctor: "... Change your name?"
Doctor: "Your index finger is broken."
They're using pretty shit programmers these days I guess. Don't Apple and Google use pretty smart guys? How were they hoping to catch up with these muppets running the show?
return RedirectToAction("Index","ProductManager", new { id=id });
Same thing in the Razor syntax, the IDE has no way to check that a class you assign to an element exists since it is a magic string instead of being a markup the IDE can validate.
@Html.TextBoxFor(m => m.Name, new {@class = "title width-7" })
They built Entity Framework to get away from string based SQL statements and when they redesigned the web stack they went all-in on string based... As a result the IDE is pretty much helpless to spot errors in an asp.net MVC project before you compile (or to provide tooling - forget about renaming a controller).
https://blogs.msdn.microsoft.com/cdndevs/2015/08/06/a-comple...
Doesn't change the fact that it was bad design in the first place.
Your first example is a bad example because you simply don't have to use that stuff, they're convenience functions for quick prototyping using the controller names. Action links are urls, that's all, and urls are strings. If it bothers you, with a tiny amount of code in a helper method you can make it all strongly typed, or use the horrific overkill that is T4MVC as suggested in another reply.
Personally I completely avoid any MVC method with 'Action' in the method name, I use [Route] attributes and use hand-crafted urls rather than the controller autogenerated stuff. These can, again, all be hidden in nice statically typed helper functions and methods. Your example of `RedirectToAction` is simply a glorified `Redirect`, but the convenience method creates the url for you.
That's the good thing, you get to choose.
As for razor, it's the equivalent of complaining about misspelling html attributes. The whole reason that they're dynamic is so we can properly add whatever attributes we want to html, just like html allows us too. If we're using angular, we can easily add ng-attributes. If we want to make up a new data-thing-whatever, it will just work. When new attributes are released, we can simply use them without having to upgrade our MVC libraries.
The whole point is that you should be able to add it arbitrarily, it's not magic strings, it's dynamic by design. It can't be statically typed.
What you're asking for would require a new update for MVC every time they released a new html spec. It would be an utter nightmare.
It's a matter of taste. Some people only want a notepad and a command line compiler. For those there is really not much difference between a dynamic language or a statically compiled language, and the only difference to them between a magic string and an enum is one more character to type.
Javascript has really bad type coercion, no doubt. But there is nothing on the language that is built upon these concepts.
And I don't get the comparison between Rails (a framework that, indeed, does use a lot of "magic" in the naming of the classes) to programming languages.
If these would count as "magic", so would any language that supports operator-overloading and templates, which basically means that even C and C++ have "magic strings".
Still, you got close. If there is one thing that I could accept as "magic" is the fact that Python changes the accessor of functions if the function name starts with double underscore (but not if it also ends with double underscores). Even that would be debatable, because the behavior is well-defined and the transformation is simple.
Your definition of "magic" is much stronger than that, so by accident of not entirely understanding the GP's complaint, you think we're moving goalposts.
ASP.NET MVC is not a language, as far as I know.
Also, most "dynamic languages" have linters and syntax analyzers that you can hook up to your editor. If I have a typo in my code, flake8 will find it right away, and I don't need to run the code to do it.
The same thing goes for a bunch of the `ContentType` stuff where you address specific instances generically using the string `applabel.modelname.id`.
Edit: Oops, misread. This is Django specifically, not Python generally.
http://stackoverflow.com/questions/129945/what-does-0-but-tr...
Oh don't worry. Google will definitely add another insult with Android. They outsource dealing the injury to OEMs. As for Apple, I expect the next devices to be able to only connect with Apple's Wi-Fi devices. AFAIR they already did that with Bluetooth file transfer.
Well this magic is actually mostly BT, because not every phone is Wi-fi direct capable.
> and if you are on iOS you send an email
That's exactly what parent is talking about, this is a "workaround" and not even admissible in all situations.
For example, I wanted to print a photo last year on a photo printer in a store, you transfer the file there via BT, select size, then you pay the photo at the counter. After 5 years of Android, I wanted to try out the other side. Sadly I found out that the iPhone doesn't allow that, so I had to email my Android carrying friend the photo and he did it in couple seconds.
Also I'd notice that as a user I do care how my data is transferred, specially because every business nowadays wants to offer their computer to serve as the mediator for that - a.k.a. the cloud.
So no thanks, I'd rather use a protocol which sends the data locally in the vicinity, instead of shipping it around the globe or buying into proprietary ways of doing that.
I guess don't do upgrade-installs to 8.1 (though I haven't advocated doing those just about ever).
Also note to future me: no, these ideapad notebooks have nothing to do with thinkpads. Do not buy an ideapad.
Like specifically HP, because HP had a default account of 'HP User' for years.
That's also why I run gnu/linux and only use windows when forced to (for work or gamedev).
"HomeGroupUser$"
It seems to be mostly undocumented "feature," searching for something "official" I've just found this "errata":
https://support.microsoft.com/en-us/kb/981068
"Creating or joining a HomeGroup creates the HomeGroupUser$ account and the HomeUsers group, and adds all local accounts to the group."
People have real problems with it:
http://answers.microsoft.com/en-us/windows/forum/windows_10-...
So why isn't this just fixed in the next update?
It would be one thing if they had to research the problem, and presented a workaround in the meantime. But they appear to have found the cause! To me it seems it would take ten times longer to find this bug, than to fix it. Once they spent the effort to find it, why not patch it?
I'm purely speculating here but I've seen my fair share of seemingly simple-to-fix bugs requiring huge changes.
Is the code making decisions based on the username instead of a specific attribute of the user structure? That's one recognizable anti-pattern. Is it trying to parse the user's home path and encountering what looks like a folder with a special name?
The fact that it's obsessing you to figure out what kind of thought process could originate code that produces an interaction that expresses itself in this way IMO means that you'll probably never write code like this. Magic words, magic numbers...
Quite a few systems use the "bung all options into one configuration string, then have it parsed by this argument parser" method. And it is a reasonable method to use.
I hope that Microsoft doesn't use the same reasoning for security vulnerabilities.
For those who want to know what's going on, see this report from the year before, complete with stack trace:
* http://answers.microsoft.com/en-us/windows/forum/windows8_1-...
* https://technet.microsoft.com/en-gb/library/cc709628(v=ws.10...
* https://blogs.msdn.microsoft.com/uac/2006/01/13/identificati...
However, the fact that they do not fix this bug and instead offers a workaround as a resolution might offer some clues about the quality of the code and architecture of the product or their priorities or both.
As part of my job, I have discovered several bugs in Microsoft products or APIs that were blocking projects I was working on. When I filed service requests (my then employer had a premier support account with Microsoft), very smart support engineers from Microsoft were assigned to my service requests. By the way, I am calling them smart because they understood the issue accurately and quickly; that in itself could be a lot of trouble while dealing with support engineers of some companies.
I remember two such service requests in particular.
1. An incorrect implementation of WebDAV protocol related to WWW-Authenticate header and redirects. It was too long ago to remember the exact details but the issue was similar to but not exactly same as https://support.microsoft.com/en-us/kb/922722. We were trying to write some software that allows MOSS to be integrated with our SSO products. Since it was not the exact same issue as the one described in the KB article, the workaround provided in the KB article did not work for us. The response provided to me by Microsoft Premier Support was that the fix for the issue was considered multiple times in the past but due to the technical challenges involved, the changes were not approved internally in Microsoft.
2. ReadEventLog ( https://msdn.microsoft.com/en-us/library/windows/desktop/aa3... ) fails with error 87 under certain conditions when dwReadFlags has the EVENTLOG_SEEK_READ flag set. The resolution they provide at https://support.microsoft.com/en-in/kb/177199 is to use the EVENTLOG_SEQUENTIAL_READ flag instead. While that sounds acceptable in theory, when I actually tried it out, I found another bug there. When the event log file at the remote system is 2 MB or larger, ReadEventLog with EVENTLOG_SEQUENTIAL_READ flag did not honour the nNumberOfBytesToRead parameter at all. No matter how large a buffer we allocated to read events, due to this bug we would get exactly one event for every ReadEventLog call. When this issue does not occur, we can get hundreds or thousands of events in one call. But due to this bug, we get one event per call. These two bugs together caused such a major performance issue in our product that it made our product practically unusable in some scenarios. Once again, the Microsoft support engineer began working on the service request very swiftly. He wrote his own code and replicated the exact problematic behaviour we were facing. However, he could not offer a resolution; he said that the issue was present in a very complex part of the product and it was very unlikely that the product team would ever spend time on fixing this bug.
These responses led me to believe that there is a problem with the code quality and architecture of their products that makes bug fixing difficult for them. In my 10 years of career, I have never worked on a product where code complexity was cited as a reason for not fixing a genuine bug.
After filtering, the program can't find the user name. So it calls the function again.
This probably happened when they moved an old unix app to Windows.
Let's also assume that whatever this is has multiple instances for some reason; maybe it's something called as part of an update process for system accounting information.
If every process on the machine did this every time it got re-scheduled? Yeah, I can see that.
for (pos = 0; !found; pos++) {
row = get_next_row();
if (strstr(row, "user") {
// this is obviously a header row
continue
}
if (strstr(row, user_name)) {
found = 1;
}
} for (pos = 0; !found; pos++)
This is so cool, I have never thought about this in like a decade of programming. I mean using a bool variable within a for loop.I'd say fair, but...
> indeed try to avoid languages where "for" allows such arbitrary constructs.
... come on. I'd say - go for such languages, they give you if a tiny bit more expressive power than ones who don't let you write such a loop.
That said, if one has an alternative that can express their intention better (like e.g. mapcar, foreach loop, Lisp's dotimes, etc.), one should use it instead.
That said, I rarely if ever have to resort to low-level debugging in such cases. I'm yet to encounter a problem that couldn't be solved by looking at the code and (very occasionally) stepping it through in the debugger. Here, using higher-order constructs in code is actually very helpful - the closer your code gets to expressing your intent, the smaller the set of possible bugs is. For instance, you can't make an off-by-one error in a foreach or a mapcar.
for (pos = 0; !found || pos < limit; pos++)
but there is nothing wrong in using an iterator and break out of the loop, especially if the language or the library gives you iterators.When you are over the iteration limit you want to trigger True && False which is False to break out of the loop where the right side False is the condition when pos > limit
Btw this is covered in Code Complete Second Edition by Microsoft Press on page 378-380
while(!done)
{
try
{
foo();
baz();
done = true;
}
catch(...) {}
}
with baz failing, but the retry present to handle cases where foo fails.As other have said, maybe Raymond Chen will some day do a blog post on this, although, considering that the bug is in DFPCommon.dll, i.e. the "Disk Footprint Utility Library", I doubt it really belongs to the shell and thus he won't know more than we do.
But the non-solution is just pathetic response from MS - they used to talk in updates and fixits but with all the focus on Windows 10 now, they hardly seem to have a reason or incentive to care about older OSes.
Then I propose a new solution, just re-host your windows installation in a VM!