This is pretty darn creative…
http://www.damnfunnypictures.com/html/Anime-Girl-Casemod.html
Information about joeware mixed with wild and crazy opinions...
I received this email previously but I just happened to stumble on it this evening when trying to clean my inbox[1]. It made me chuckle. I have to hand it to the guy for having the stones to write me and ask me to start charging for one of my utilities and being honest in why he wants me to do so… Obviously English isn’t the first language so it is a bit rough but I am honored the person took the time to write me in English at all.
Hello Joe,
why do you dont sell your tool cpau.
You know that cpau is an extremely popular tool and I know that you can
make much money with cpau because i have something similar like cpau
but i sell it.
And the money i get is good.
I think on me to write you. Because i hope that i can make more money if
you also sell cpau.
I am sure you can get much more money because your tool is very popular.I hope you take a thought about it.
Sale is not so difficult.kindly regards
[name withheld]
[1] I am odd with email, if I see an email of someone I want to respond to come in by itself I will get to it usually quickly or right after I finish up whatever that is preventing me on the spot from responding. However if the email comes in during one of the huge slews of non-spam email I tend to get then it is likely it will get lost in there for days or sometimes weeks or possibly even months when I find it during one of my “catch up” periods.
I was combing through the newsgroups looking for folks in need of assistance and I ran into a relatively interesting problem:
I updated our recipient policy in Exchange 2003 to add a new SMTP domain
name to everyone’s mailbox, it all looked great until I noticed it added the domain to our
custom contacts in the reciepient OU too. Now these external contacts include this
other smtp address with our domain name. How can I get rid of these from
this custom contacts and not our AD users with mailboxes?
This would normally be something that will require a script as it has to go through and pick out the one proxyaddress of several in the multivalued proxyAddresses attribute for the contacts. Fortunately this is exactly the kind of things that I have made AdFind/AdMod capable of handling. While you could do this in a script, there is no need.
Paul “Warm” Williams responded with quite a good solution using AdFind/AdMod. I was quite happy to see someone post a fairly advanced command sequence for AdFind/Admod. I know there are people doing it, but I don’t often see them showing others in public forums what it is they have done. Paul being an MVP is quick on the trigger to help out and he likes AdFind/AdMod so that is one of the solutions he presented, here is Paul’s response:
If you're asking how to get rid of the proxyAddress or proxyAddresses added to contacts, you can do it in one of three ways: 1. Manually via the GUI. 2. Via script or code 3. Via command-line. To do this via the command-line, you could do something like this (not tested as I'm not near a DC): adfind -default -rb OU=Recipients -s onelevel proxyAddresses givenName sn -adcsv | admod proxyAddresses:-:"{{givenName}}.{{sn}}@domain-name.com" Note. Obviously, this depends on the structure of the addresses added by the RUS. Only you can answer which addresses need to be removed and which don't. One option could be to remove all proxyAddresses using the above tools, and create a separate policy for that OU, or more specifically any contacts in that OU.-- Paul Williams Microsoft MVP - Windows Server - Directory Services http://www.msresource.net | http://forums.msresource.net
Again, I was pleased as punch to see that my new mods to AdMod were being used and recommended by folks, that is one of the reasons I took the time to write that code for goodness sakes…
However… The command sequence could be a little tighter so I took the time to respond with a slightly more focused response:
Very smooth… Good job…
I can possibly do you one better… ;o)
Assuming the mail domain name of concern is test.com… You can use something like (all one line…)
adfind -default -rb ou=recipient -f “(proxyaddresses=smtp:*@test.com)” -mvfilter proxyaddresses=@test.com proxyaddresses -adcsv | admod proxyaddresses:-:{{proxyaddresses}} -unsafe
Regardless of what the proxyaddresses were set to in that OU, any object with a proxyaddress with test.com in it will get it cleared.
The thing to be concerned about here is if these addresses were set to be primary…. If that is the case when they are stripped, there will be no primary address on the objects. You can tell by looking to see if the SMTP is capitalized.
Still, I am impressed, good use of the utilities. 🙂
—
Joe Richards Microsoft MVP Windows Server Directory Services
Author of O’Reilly Active Directory Third Edition
www.joeware.net
This solution is “better” because I tell AdFind to only return the one proxyAddress for each object that I no longer want; I don’t have to assume it is some fixed format like Paul does in his solution. That is what the -mvfilter (multivalue filter) switch does. I pass in proxyaddresses=@test.com which tells AdFind that when it goes to output the proxyAddresses attribute, it should only output values that have the string @test.com in the value. That gets passed over to AdMod in the ADCSV stream so that now AdMod can simply remove that one value from the proxyAddresses attribute of that object with the simple command:
proxyaddresses:-:{{proxyaddresses}}
As I look at that, I realize I could have made it even more elegant, the command could also be
proxyaddresses:-:{{.}}
But joe… someone asks…. What if there were MULTIPLE values in proxyAddresses that have @test.com and you want to remove them all…. Well for that you have to make a small change to the clear command…
proxyaddresses:–:{{.}}
Note the addition of the second “-” to indicate that you should remove multiple values…
joe
P.S. The -unsafe is used with AdMod because I don’t know how many objects need to be changed, if the number of objects is less than 10, you don’t need -unsafe, if the number is greater than 10 then you either need to add -unsafe, -safety, or -upto… See the usage to understand the differences between those different switches.
Back in 1969/1970 Dr. Laurence J. Peter wrote what is obvious to anyone who has ever worked in a large company or government or military…
“In a hierarchy every employee tends to rise to his (her) level of incompetence.”
Have you ever seen a person who was amazing when they were at previous lower level and went down hill (maybe spectacularly) when they hit their current (often managerial) level? That is called the Peter Principle from the books written by Laurence J. Peter and quite honestly is more often expected than not by anyone intelligent watching people get forced up the corporate ladder in the name of career advancement.
If you don’t get the point… Let me break it down to one simple phrase… It is a BAD thing.
This isn’t something people should aspire to. It aligns with the completely incorrect idea that anyone can do anything. While that is a nice thought it is completely untrue. I, for instance, can aspire like the dickens to conceive and gestate a child in my abdomen and I would fail miserably. It has nothing to do with my shortcomings as a person, it is due to capability. I could as likely gestate a child as I could fly off the empire state building under my own power in the nude. Should I feel bad about either of those things? No. Not as all, while I may wish I had those capabilities certainly it would be silly to feel to be a lesser person because of it. Ditto if I can’t achieve being a rocket scientist or a greatly loved and respected manager or a tremendously successful salesperson or anything else…
Different people have different strengths and you cannot correct an item that is one of your weaknesses to a point to exceed the capability of someone who has that item as one of their natural strengths. You can try all you want but you won’t get there. Certainly you can possibly get to acceptable or possibly even good but everyone is better off if someone is given that job that just naturally does it well without all of the work and pain. You are better off honing your strength areas as well because with much less work you should see far more gains and be more productive and generally be happier. People want to succeed and be known for doing well, not fail time and again or think they have to constantly improve themselves. Think about it, anything that needs to be improved is generally considered inferior to start with… that is why it needs to be improved… Do you like feeling inferior? No, then stop thinking you always need to be improved… Sure, never stop learning and never stop helping and trying to do better but don’t feel you are so bad you MUST be improved or you MUST grow or you MUST advance.
I bring this up as I was catching up with some blogs this morning and read the Mini-Microsoft entry from November 13th and it seems that Microsoft could actually be actively enforcing the Peter Principle – allegedly if someone stays at a level too long they are to be labeled in their HR profile as limited… Wow, that is brilliant. What a morale booster. Someone who has been working their ass off for you that you have invested in and built up to be a good productive member that has hit a level they like and are good at and you label them with some arbitrary label that effectively blocks forward progress and points them out as bad?
You can read the Mini-Microsoft blog for yourself here
If this is accurate, even if Microsoft paid amazing money for their normal people, something like that could very definitely prevent me from ever joining them. I am on of those people that has no care in the world for my title in the company I work for, I am not there to climb the ladder to get into even higher positions, I am there to solve problems and make issues go away and have fun and learn things doing it… I could very easily see myself attaining that “Limited” ranking. I know that for the things I do, there is no one better in the company, I am better than the CEO, I am better than the CIO, I am better than anyone. For things I don’t do, I am not better, someone else is and I acknowledge that and let them do it. Rank means little to me other than for logically organizing resources to tackle problems by putting folks in a position where their strengths will help them make a difference. This means I have no desire to climb the ranks, there is no real point in it. Salary should not be tied to how many people are above you in the hierarchy, that is silly. Salary should be handed out just like any other supply/demand scenario. Not only am I not surprised if someone makes more money than their manager or me or the CEO or the head of anything, quite honestly, in many cases I expect it.
I think policies like this “limited” rating would be far more dangerous to Microsoft’s long term stability than all of the Open Source projects in the world. Let the people who want to climb the ladder like rats climbing the rope up to a ship do so, but don’t penalize those who just want to work.
My recommendation to the MSFT folks making policy decisions… Read “Now, Discover Your Strengths” and revisit any policies that force people to rise to their level of incompetence.
joe
You may recall the previous blog entries
http://blog.joeware.net/2005/06/12/36/
http://blog.joeware.net/2005/06/12/38/
about the new ACL that appeared in Windows Server 2003 SP1… The one that locks down who can work with the service control manager, like for instance enumerate services, etc. This problem impacts the Exchange tools as well as monitoring, etc many folks have set up.
Well another MVP pinged me and asked the question… “Hey do you know where that ACL is stored?”
Surprisingly or possibly not… My response was actually… “Why yes I do…”
One of the first things I wanted to know when that change was implemented was how was it implemented?? To figure this out I changed the ACL while watching the system[1] to see where the changes occurred. As I expected, it was in the registry with darn near everything else related to services… I thought about and rejected the idea of writing about it previously because this kind of information usually isn’t something people care too much about. It is probably a bit esoteric… Not something that regularly comes up during normal dinner conversation I expect[2]. However, since someone else actually asked, that means there are probably others that are curious as well… So….
As you may or may not know, service info is stored primarily in the HKLM\System\CurrentControlSet section of the registry, the two main subkeys are under Control and also the entire Services key. The Services key enumerates all of the services for you and their parameters, etc. The “main” entry under Control that is involved is ServiceGroupOrder. Now logically, the place to make this change would probably be on the actual Services Key itself, since it is over all of the services. However arguments could be made to put in ServiceGroupOrder or even create a new subkey under Control.
What Microsoft did in fact do is create a new subkey called Security under ServiceGroupOrder and then under that key is a value called Security. If I were to guess why this was done this way (and no I never actually chased into the source on this one), I would guess that it was because when the SCuM fires up, it has to read the ServiceGroupOrder info anyway so while your there… why not?
Anyway, this value is a binary security descriptor blob just like the Security values under the Security keys of the services listed under the Services key that have ever had their security modified.
So the full path to the Security Descriptor value is…
HKLM\System\CurrentControlSet\Control\ServiceOrderGroup\Security\Security
Now let me end by saying… I do not in any way shape nor form recommend anyone play with that value. Sure read it all you want, but if you modify it, you are on your own baby! I, in fact, have never tried to change it directly myself. The SCuM may actually protect it, I don’t expect it does, but maybe. 🙂
Oh if you want to watch this being updated on your own system, use SC according to the directions given previously while running your favorite free registry monitor and then look for where sc.exe runs and then right after it looks up the computer name (HKLM\System\CurrentControlSet\Control\ComputerName), look for some work being done by services.exe… That’s right, SC doesn’t change it directly, it asks the SCuM to make the change on its behalf and this is handled via an API call that is fielded by services.exe. Specifically look for a RegSetValue with the previously mentioned registry key and value.
joe
[1] You can guess what kind of free tools I was watching the system with to check for this… Those really good free tools that I didn’t write… You know, the other guys…
[2] Heck this is the first time someone has asked that I have seen in private or public forums in over a year and half….
I forgot to announce an update that occurred to AdMod back on Nov 6. It is a typo fix, new version is V01.08.02.
Also AdFind has been V01.34.00 uploaded this evening. There is a bug fix for a very specific issue with filtered security descriptor CSV output. Also I added the -qlist, -onlysacl, and -onlydacl options. I was trying hard to get some support in to handle the special ANSI characters like trademark symbols and smilies and copyright symbols but just couldn’t pull it off, it will have to wait for a V2.00.00.
joe
If you are an MSDN Subscriber (not just the library…) then Office 2007 is now available to you for download. It went up yesterday I believe but I wanted to download it before I told anyone. 😉
BTW, the site is still downloading quickly…
It means that Jim Allchin is very close to retiring…
That is a sad thing in my eyes, Jim is an amazing person and I believe Windows will change considerably without him and not necessarily for the better. Jim is an executive management level person who outgeeks most tech level people and gives geeks a voice at the highest levels of management at Microsoft. I think his leaving a serious position of control inside of MSFT will hurt. Obviously Jim deserves to retire and relax as he has been doing amazing things for a long long time (ever hear of Vines?[1]).
Good luck to Jim but where can he have more fun than what he is doing now?
joe
[1] I take that back as a lot of people working on Windows now, maybe even a majority probably haven’t heard of Vines.
Josh Ledgard blogged about some internal softie experiences in getting a QFE… It cracked me up…
Some interesting points…
1. With his choice of search key words Google took him directly to his KB article, Microsoft’s own live search didn’t…
2. This quote which I wholeheartedly and completely agree with
When are we going to realize that no one wants to pick up the phone. The contact us page listed above has a phone number on the top. Not only is that expensive for us, but also, my gut tells me that most people don’t want to pick up the phone for something like this.
3. This quote too
The “Online Costumer Service” is not what it sounds like. One link is to send feedback on this page and the other is a link to more resources… most of them about signing up for newsletters. Blah.
4. This quote as well
I get to a page that has a button for “start e-mail request”. Have fun mousing over stuff on that page and watching the CSS bugs. 🙂
4. And this one…
It brings me to a screen that’s going to try and find my PID. I hope it works. 🙂 I wonder what I would do here if my install was messed up and I couldn’t get to the help about screen to find my PID. The scan started… it couldn’t find my PID. I click “How to find me PID”.
5. Haha and this one
The “how to find me PID” page sucks because it doesn’t realize I had already selected VS 2005. Now I have to select navigate to it again. You begin to realize how badly Microsoft doesn’t get the web since most people who did this experiment and called… had their hot fix 2-5 minutes ago. If it takes longer to use the web site… somehow you’ve failed miserably. Thankfully, it was once my glorious job to test the “Help About” dialog in VS so I’m pretty confident I can find it there. (Hey, you have to start somewhere. 🙂 )
6. And….
250 Minutes: The VS Hotfix install seems frozen and something is chewing through CPU time… this is not a good end case yet.
252 Minutes: Closed down any managed apps I had running on my machine. As soon as a closed Windows Live Writer the install completed.
7. And the wrap up is great and I whole heartedly concur…
It also makes me wonder when/if our support processes are ever going to go Web 2.0. If we continue to push products like Office Live, Windows Live, Spaces, etc but we don’t have great online based support then we’ll be judged by the weakest link in the product chain… the support link. Offline (phone support) seems like a model that just won’t play in the new world we’re entering. If I want all my programs online then I want my support online to be great as well.
The best part of the whole blog is the fact that they are now piloting a program to all Dev guys to get the most popular public hotfixes for VS2005 from the web…
http://blogs.msdn.com/jledgard/archive/2006/10/31/download-hotfixes-without-contacting-support.aspx
I think what Josh did here was amazingly great. It would be even more great if MORE Microsoft people tried the solutions they state. How often have you heard “go search for that on MSN” or “you can call PSS” from a Microsoft resource? How many people are willing to actually call PSS even if they know it is a bug? Of those how many are positive they won’t be fighting over their credit card statements with MSFT?
I really like Microsoft, but I absolutely will not call their support lines unless my hair is on fire and I know they are the only ones with a fire extinguisher in reach. This is based on past experiences that I have no desire whatsoever to ever replicate. I feel the same way Josh does above, Microsoft is pushing how they are the web/online company… prove it.
joe
[joeware – never stop exploring… :) is proudly powered by WordPress.]