Interesting problem: I always use library functions in .NET apps to maximize code reuse, especially for Data Access calls. So when I ran across the following error from Oracle when connecting to a server running 10.2, I was stymied. Especially since it worked fine with a 10.1 server:
ORA-12571: TNS:packet writer failure
Looking this one up brings a whole lot of results, none of them helpful in this situation. To make it worse, VS2005 ran the application just fine.
The solution? The server had the 8.1 connector installed, which for some reason connects to 10.1 just fine. 10.2 was different enough to through the error above. We got IS to push the 10.2 client on the server, and everything is working.
I am not a great T-SQL developer, so I frequently struggle with some of the more advanced queries. I spent some time building the query below, so I want to post it for future reference and the hope it may help someone else.
Say you have a dependant table for lookup values of status. The status code in the primary table may be 1, 2, 3, etc., so the lookup table will define them as Open, Closed, Pending, whatever. Now say for reporting you want to know how many Open or Closed items you have in the table. The SQL query below will return each Status name with a count of items using the codes in the primary table: SELECT OS.ObjectStateID, OS.Code, OS.Name, (SELECT COUNT(RS.ProductRequestID) FROM ProductRequestState RS WHERE RS.IsCurrent = 1 AND RS.ObjectStateID = OS.ObjectStateID ) FROM ObjectState OS Where OS.IsActive = 1
The output will look something like this: OID Code Name Count
----- ----------------- --------------------------------- -----
1 WaitSubmit Created 154
3 Rejected Rejected 4785
4 WaitTSTechRvw Waiting TS Tech Review 68
6 WaitGroupApprv Waiting Cost/Labor/TS Tech Apprv 228
8 WaitExecApprv Waiting Manager/Executive Apprv 0
13 Complete Complete 14433
14 WaitCostApprv Waiting Cost Accounting Apprv 0
15 WaitLaborApprv Waiting Labor and Supply Apprv 0
16 WaitTSTechApprv Waiting TS Technologist Apprv 0 Sorry for the ugly formatting, WordPress is a bit limiting.
Today I was watching "Star Wars Tech" on the History Channel. They were examining different technologies in Star Wars and parallelling them with today's. Following the show, was the "Legacy of Star Wars" which looked at the philosophies in the series.
I just thought to myself: "It's just a movie." It slipped, didn't even know it was there. I guess now I will have to turn in my Nerd membership card. Oops.
But really, come on. Star Wars was great, it was fun, it defined our childhood. I might even go as far as suggesting it got alot of us into SciFi in a big way. But let's not try to put more into it than just entertainment. Brace yourself: George Lucas is NOT a visionary. He was just a great moviemaker. Well, until the last 3 movies, anyway.
I am reading through the remaining books from Dale Brown that I have missed. He is not as good an author as Tom Clancy was in his prime, but is far better than any other techo-political thriller author I have ever read. Shadows of Steel is book 9 of his Old Dog series (I believe all his books are from the Old Dog series).
SoS takes place in the Middle East, ironically, dealing with Iran. Ironically as Iran is being a bit of a problem now 10 years later. When, Sky Masters, Inc, loses a stealth UAV in the Persian Gulf, a new Iranian carrier of the old Soviet fleet traces the signal to a recovery ship belonging to the company. The ship flees, but it sunk by the Iranians. Several friends of Patrick McLanahan are captured and imprisoned in Iran. An enhanced B-2 and a V-22 make important appearances in the story along with the usual mix of high-technology and dream weapons that we can only hope are real.
Brown again mixes a good story with awesome, if a bit ambitious, technology to make a very enjoyable, if not real deep, read. Again, if you haven't read previous works, you may be a bit lost in places. I enjoyed this one enough to move right into the next in the series Fatal Terrain.
I have hired a few people in my time. Not many, and I'm not an expert, but I have learned a few things. In my experience, the best programmers exhibit obvious enthusiasm in 3 specific areas.
The first is their hardware. Truly great programmers take great pride in their setup, although not in the same ways. If you can get the gleam in the eye when off-handedly talking about the latest CPU, the home network, or custom case, or skinned interface, you have found proof that they really are into what they do. For me, it's my computer. I have never bought a computer. My dad purchased my first PC in 1991, and I have upgraded it ever since. My x386 is now a P4 and soon to be a Core2Duo. Of course, I love my home network I've been fiddling with since 1998 and I can't use a stock XP installation for more than a few minutes before I have it all modified up.
The second area I borrow from Jeff Atwood of Coding Horror. Yes, again. The interviewee should have a favorite piece of code that they have created. Not usually an entire application, but a class, algorithm or routine that they are especially pleased with. Don't blame them if they can't put their finger on a single one, I have a hard time there too. Either my frequent implementations of Linked Lists, the automated Secure File transfer / Content Management solution, auto-validation in C# from custom attribute assignment, or my comic strip collector... It's especially important to me that they have some personal code they love too, not just professional.
The last area I think is important is probably the most controversial: gaming. Find out what kind of games they play, it may say a great deal about the kind of coder they are. FPS gamers tend to be very direct, task oriented, focused coders. RTS guys are more big picture, and turn-based strategy players even more so and very methodical. If you find a Civ Addict, hire him now! MMO gamers are probably good at maintenance or grind programming. And the ones that love them all will not be exceptional in any one area, but will be very versatile. That's where I lean, though I LOVE Civ; so much so that I can't leave it on my PC for long before it becomes a problem.
These generalizations are just that. Not to be taken too seriously, but they have never let me down. I have found that I cannot even consider someone who doesn't exibit much in any of the categories, or prefers XBox gaming, or doesn't own a PC (!).
There are always exception, these are just my observations.
Today is Memorial Day. Today is the most important holiday, we, as Americans, celebrate. Today is the day we should remember the sacrifice of so many that make so many things possible. Even the ingrates that protest against the military should recognize that they would not even have that ability if not for the men who have died to make it possible.
So fly your flag high today, remember the brave servicemen who gave up everything so that we might, and see today as much more than a day off from work.
Now here's a holiday I can appreciate. Armed Forces Day is celebrated on the 3rd Saturday of May to honor all those in our military. And you know what? THEY DESERVE IT!
So why is this 60 year old holiday almost completely obscured, but we all get pounded by "Administrative Assistants" Day? Shows a profound disconnect in American priorities.
So, Happy Armed Forces Day! I personally thank all of you in the service of our country. I couldn't do it, so am doubly grateful that you do! Stop by, the first round's on me.
I have been working in SharePoint 2007 lately. Learning how to do things and getting our internal processes posted (and written). SPS is incredibly easy to use and very powerful for this. Some of the other things I want to do elude me. Primary among them is a pull from Exchange.
For some reason, our Exchange server is setup on a different Active Directory domain, so when I try to pull the user-data out of it, I end up with two profiles for everyone. I have not figured out a way to pull a users info across the domains. The problem: abc\frankhagen == AbCo\frankhagen. But not to a comparison operator... There must be a way around this, but I haven't figured it out. So for now I use a BDC to pull in human info for each profile. (Thanks to Sahil Malik for his excellent series of posts on BDC!)
Word of warning for BDC: the XML import file is critical. If you don't get it just right, it will not forgive you for hours. Start ultra-simple and work your way into it.
|