Ramblings of the constant presence of Gates in my life RSS 2.0
 Thursday, June 19, 2008

I have been a huge fan of IFrames for a long time, but have recently steered clear of them due to "cross-browser issues" with how they are rendered. Well, a solution I worked on recently basically required that I use an Object tag for PDF display inside of an IFrame - actually this is the way the tool worked, I would have done away with either the IFrame or the Object tag.

Anyway, I ended up with a simple list box that worked as a document selector. Select a document and on the post back the page loads your selected PDF into the Object tag in the IFrame. No problem. Well, one problem, that led to another.

If you get high energy users that want to click on three different documents before the page actually posts back you get big problems. The selector might indicate you should be viewing one document, but the PDF shows another.

So, this is easy to fix. Obviously, my first choice was to write a little javascript to disable the list control when the user selects a doc. Hmm, yeah, well that works so long as you don't actually want the value selected posted back to the server. The browser is so smart that it doesn't post back values from disabled controls. Ok, so I dropped to method 2 and add a little more JavaScript, some extra DIV tags and new CSS based on this from 4 Guys. Really cool and simple and mostly worked.

This got me almost there, but I suddenly had a really odd problem that I wasn't sure of what to do. I placed my new divs at z-index 999, but it was still showing behind the stupid IFrame/Object with my PDFs. I did some searching and found that most browsers render IFrames/Objects at the very top of the stack no matter what you do. I wrote JavaScript to try to override it; no luck. I just didn't have control.

The only thing I could do, and I did, was to actually set the iframe to visibility='hidden' when I show my new DIVs. What a pain. Why not just let me control where the IFrame is in the stack? Wouldn't that be much better?

Thursday, June 19, 2008 7:53:34 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0] -
Posted By: Mark Wall
Blog Categories: .NET Dev | Bugs
 Saturday, May 31, 2008

The most ironic part of my lost session problem (see previous post) is that it reared its ugly head on me on Thursday night, May 29, 2008. What's the problem there? I MISSED THE SEASON FINALLY OF LOST!!!!!! Totally unfair. BTW, if you ruin the episode for me before I see it, you might die. So, you are warned. Lost session = Lost LOST = I HATE SESSIONS NOW.

Saturday, May 31, 2008 8:07:44 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0] -
Posted By: Mark Wall
Blog Categories: .NET Dev

I have been writing web applications for several years now. Whether you like sessions or not, I have made REALLY good use of them in classic ASP, .NET 1.1, 2.0 and now 3.5. Oddly enough, I never had an issue where my session was lost unexpectedly in one of my applicaitons until now.

It seems (according to lots of posts out there - and MSDN) that sessions are treated a little differently in .NET. Hmm, really, no kidding! But, the changes made to session management shouldn't cause my user to hit the page and immediately lose their session, right? If so, I am really in trouble, becuase like I said, I likes the sessions.

After reading about a thousand posts that didn't fix my problems and trying every combination of session state management (SQL, StateServer, InProc, BiteMyProc) nothing was working. I actually gave up on it at about 9:30 at night after working on it for 3 hours.

I came back to it yesterday after a not so great night of sleep, but still with a fresh mind. Suddenly it popped into my head that MAYBE the browser/IIS were being somewhat intelligent for me (thanks). MAYBE, since I was only wanting to track the SessionID and didn't store anything into that session as a variable, the system ASSUMED I didn't need that session to stick around. Yep, I put a line of code in my landing page that looked like this: session("hold") = "I cannot believe it was this stupid" and ran my site. There it is, sessionID is persisted.

I wouldn't really care too much about that except that I have done similar things in classic ASP and the session was always maintained even without information stored in it. It would have been nice, and I am pretty sure I have said it before, for Microsoft to document this one a little better (or maybe at all).

Saturday, May 31, 2008 8:04:08 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0] -
Posted By: Mark Wall
Blog Categories: .NET Dev
 Thursday, May 22, 2008

I have tried my best to avoid JavaScript as much as possible. Primarily, it is because it just looks too much like C and C++ (YIKES!). Yes, I LOVE VB. Anyway, over the last couple of weeks I was introduced to the YUI (Yahoo User Interface) tools/libraries. This toolset is simply incredibel. What's more, is this stuff can be rather easily retrofitted into your SharePoint Layout Pages to do some REALLY cool stuff.

Today, we (by we, I mean I watched as some User Interface guys worked) implemented the Panel and animation libraries. Literally in a matter of about 2 hours, we had a rocking fly-out set of web parts. All we had to do was copy/paste in some of the YUI tags and point them to our DIV wrapped around the web part zone hosting our webparts. In our case, this was just the Right web part zone. So, now there is this awesome little tab sitting over on the right of the screen that when you click it, it slides out to the left with all the web parts there. Talk about a real-estate saver. Let me repeat the best part - 2 HOURS! That was it.

I am sure we (spoken lightly) will spend a little more time tweaking the CSS to style that panel, but for the most part, the YUI took care of everything for us. You HAVE to check it out!

http://developer.yahoo.com/

Thursday, May 22, 2008 7:34:19 PM (Eastern Standard Time, UTC-05:00)  #    Comments [2] -
Posted By: Mark Wall
Blog Categories: .NET Dev |  Branding | Cool Tools
 Friday, May 16, 2008

One of the things I absolutely love about my job these days is the ability to meet with new customers to talk about what SharePoint does and what it is. I had the pleasure last year of putting on a "Deminar" as part of my company's (Optimus Solutions) quarterly online educational events. This was my first live online demonstration, so it was a completely new experience for me. I have to say, it was fun, but I prefer the face to face interaction. Give me a room full of people any day over little green dots. ;-)

Anyway, I thought I would share it with you. It really just talks about the document management features and the benefits they offer an organization.

http://www.optimussolutions.com/Deminar/Media/collaboration_11-16-2007.wmv

Friday, May 16, 2008 2:05:27 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] -
Posted By: Mark Wall
Blog Categories: Information Architecture | SharePoint
 Thursday, May 15, 2008

While I was completing my MBA a couple years ago, I spent a good bit of time thinking and writing about management philosophies and theories. Since then, I kind of fell back into the mindset that everyone should just build their careers with a good company. Fortunately, things in my career have changed in recent months to get me again researching and thinking on ways to manage people and businesses.

There is the big problem where "managing" takes the manager down a path of having to motivate workers or, even worse, demonstrating their power over their workers. I am sure there are places where this style/practice works very well, but when it comes to highly skilled consultants, developers, or IT personnel I don't think those approaches get too far. That is, unless you want your highly skilled people to become lathargic and non-responsive.

Take a look at these couple of blog posts/articles I ran across the last few days. These really get to some of the ideas I think should be used when trying to "manage" skilled information technology workers. Once you are done with those, I will have one more for you that really fits with my philospohy, which is: The only task a manager of highly skilled IT people should focus on is to facilitate the efforts of their employees. Even more simply phrased: Stop de-motivating your workers with too much of your involvement!

First two articles:
http://thedailywtf.com/Articles/Up-or-Out-Solving-the-IT-Turnover-Crisis.aspx
http://steve-yegge.blogspot.com/2006/05/not-managing-software-developers.html (his political views are not necessarily consistent with my own - just read the article)

And THEN read this one from CIO Magazine: http://cio.com/article/123406/Stop_Demotivating_Me_/

And just saw a post from my friend the SimpleCoder that fits in here a litte too: http://www.simplecoder.com/blog/?p=61

Basically, if you have good people, let them do their jobs and trust them to do it. They likely don't need you to "help" them very often. And guess what, when they do need your help, they will ask for it. That is when you, as a manager, can (and better) really shine for your team. I think my favorite line in the "not managing software developers" article is this (paraphrased), "be a leader, don't be a pecker". If your goal is to wield power, don't be a manager of IT people. They will HATE you. Lead them by showing your trust in them and working hard to remove all barriers that hold them up from doing their work the way they want. Then, they will love you forever, even after they move on to the next company.

Thursday, May 15, 2008 12:51:34 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] -
Posted By: Mark Wall
Blog Categories: Managment | Philosophy
Advertisements
Archive
<June 2008>
SunMonTueWedThuFriSat
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345

Blogroll
Statistics
Total Posts: 27
This Year: 0
This Month: 0
This Week: 0
Comments: 3
Themes
Pick a theme:
All Content © 2012, Mark Wall