tgreer 189 Made Her Cry Team Colleague

You left out a class of email address, where the account name and the domain name are clearly related. That's what I use for business, as I believe such an email address clearly shows that the email originates from a principal and/or owner of the domain/business. One example might be j.doe@johndoe.com.

Nice article.

vedro-compota commented: +++++= +0
tgreer 189 Made Her Cry Team Colleague

I disagree. I think that all threads, in all forums, are conversations. However, if the only thing you have to say is "yeah" or "I agree" then you should use the reputation system.

Yeah, I agree.

majestic0110 commented: Haha! good humour! :) +2
Dave Sinkula commented: :p +14
tgreer 189 Made Her Cry Team Colleague

Don't listen to tgreer. He doesn't post here anymore, anyway.

tgreer 189 Made Her Cry Team Colleague

No, you're standing on flawed reasoning. Feedback is not a scientific poll.

Wait a minute, back up the bus. No one claimed that feedback was a scientific poll. I'm saying, the only feedback you have is feedback given. That's all. If you are using feedback to make decisions about the site, scientific or not, then those are your parameters.

You can make no assumptions whatsoever about feedback not given. The vast majority of site users float in and out without perhaps ever noticing a certain aspect of the site. Dani assumes that since they didn't complain, they must be in favor. That's an unwarranted assumption and is not a sound basis for making decisions.

Feedback may not be either, but that's the system in place. So when 6 or so users complain about something, you can't balance that against the 97,000 who don't, assume that's 97,000 in FAVOR, and ignore the 6 who care enough to give feedback because they are the minority. Flawed reasoning.

You take those 6 votes, ask for more feedback, ("Is anyone in FAVOR of the way things are...?) and make a decision on that feedback. While not scientific, it's better than giving "opinions in my favor" to people who've expressed no opinion at all.

Dave Sinkula commented: Good points. +11
tgreer 189 Made Her Cry Team Colleague

I solved this with a combination of two recursive templates and creative use of the "copy-of" function.

tgreer 189 Made Her Cry Team Colleague

Ok, I edited the link. Don't waste your time. If you really want to read psuedo-scientific b.s., try "Science Made Stupid". The only difference is that it is intentionally funny.

To the original poster: I have to ask, what made you decide to ask your question on Daniweb, an IT Discussion Community?

WolfPack commented: had a glance. nice link. +6
tgreer 189 Made Her Cry Team Colleague

Obviously we're faced with a changing demographic. In terms of the success of the forum as a business, that might not be a bad thing (this is the social networking crowd, after all). But if the goal is to be a top-notch technical site for working developers, then we're heading in the wrong direction. It's like turning a university into a shopping mall.

Infarction commented: Very good observation - Infarction +3
tgreer 189 Made Her Cry Team Colleague

lemurexplosion is the only user I've ever had to put on the Ignore List. Completely fractured, pointless posts. Why is he still here? What happened to the infraction system? A bigger question: why is Daniweb attracting this type of user?

'Stein commented: I like that idea..:icon_biggrin: -'Stein +6
tgreer 189 Made Her Cry Team Colleague

The trend of Daniweb attracting more and more of the myspace crowd these days should be a serious wake-up call.

John A commented: Good point. -joeprogrammer +11
tgreer 189 Made Her Cry Team Colleague

lol i gave you some good rep that time lemurexplosion. You actually managed to type fairly properly :)

Pot. Kettle. Black.

tgreer 189 Made Her Cry Team Colleague

Fair enough: if you don't pay attention to anything you type, then neither will I. Think it through.

John A commented: Random rep from Joe +8
tgreer 189 Made Her Cry Team Colleague

You do an excellent job of keeping the forum moving. Meaning, you never say "ok, now this is good enough". Always tweaking, always testing. That's good, even if it causes some ruffled feathers now and then.

Davey doesn't really need me to tell him he's a great writer and doing very well with the blogs. He's a professional tech writer so a professional, high-quality job is expected. I'll say it anyway: the featured blogs on Daniweb are excellent.

Now the feedback/critiques:

You still haven't found the magic formula for promoting member blogs. Maybe there isn't one? Not every member has interesting things to say. However, the recent revamp of the blog home page is a step in the right direction. I think the page is a bit busy with the 3-column layout. I would prefer to see a 2-column, even if the tag cloud has to be sacrificed. I'm not sure what good a tag cloud does for a blog reader. Presumably the words of interest to me are in the blog, right? Echo my comments on the tag cloud, wherever it rears up. Useless, I think, and wasted space. I've been enduring it; since you're always tweaking the layout, I've hoped it would just disappear one day.

Quick Reply. While I don't like it, it's hard to be too upset, since the change was made in response to other criticism about ad placement. It's a good compromise and if I'm not loving it, I can …

~s.o.s~ commented: What a great way of summing up things -- ~s.o.s~ +13
John A commented: Best post so far in this thread. - joeprogrammer +6
tgreer 189 Made Her Cry Team Colleague

If I'd already given up all hope, I wouldn't be participating in threads like this. I'm still hoping that Dani, a very skilled programmer, with whom I've spent many a pleasant hour conversing and debating, will step back into her role as main site administrator. I respect Davey as a writer and greatly enjoy his blog postings, but when the administrative reins were put in his hands, the culture changed. I've no doubt that his decisions are "good for business", as such, but have had a negative impact on the make-up of the moderation staff, the overall quality and nature of postings, and therefore the overall sense of community. Daniweb is currently on the path of becoming just another overly monetized, ad-heavy tech forum filled with unanswered or poorly answered posts.

IntelliTXT is just the first example. What other bad "management level" decisions, open to no debate, with no regard for the impact on the community, await? The ads here are past the point of "in your face", with IntelliTXT, the ads are "in your mouth". Dani at least ran a trial, and bent over backwards to try to answer the objections IntelliTXT generated. When it became apparent that many of the most qualifed, most active moderators/members still objected, she consented to not use it, even though she herself had no objections to it. I find that very commendable, even noble. However, when the decision was put in Davey's hands, it became a "business decision", and the fact that …

John A commented: Well said. -joeprogrammer +5
tgreer 189 Made Her Cry Team Colleague

Not necessarily "elite", but yeah, you get the point.

Members of the "Staff Writer" group get 1) a user profile badge, 2) access to the Staff Writer's Forum. As an administrative task, it's easier to assign those rights to a single thing, a group, than it is to assign those rights to X amount of users.

So, any Group formed would have to have something more within the site than just a shared interest. I think simply having a new forum added to the Coffee Shop area for Game Developers would work fine in your example - no need to create a vBulletin "Group".

~s.o.s~ commented: Thanks for your time and effort I appreciate it - ~s.o.s~ +7
tgreer 189 Made Her Cry Team Colleague

CSS cannot stretch an image: a browser is not an image editing program. CSS can repeat an image, but the image must be designed naturally to tile well.

The typical technique is to divide an image that must "stretch" horizontally into three images, a left, center, and right. The center image will be a solid color and will be set to repeat/tile in the x-dimension. This gives the effect of stretching.

The technique for an image that must expand vertically is to divide it in two, a top that remains static and a bottom that is a solid that is set to repeat/tile in the y-dimension.

tgreer 189 Made Her Cry Team Colleague

After a certain period of time, you cannot edit your post.

Your page is missing a doctype, so I'm not sure which version of HTML you're writing. However, since all the tags are lowercase, I can assume it's XHTML.

If that's the case, then centering is done with CSS, by setting the left and write margins of the top-most container element (such as the "body" tag", to "auto": body {margin:0 auto;}

Sulley's Boo commented: right* +5
tgreer 189 Made Her Cry Team Colleague

More is not always better. The choice for outsourced development, however, usually comes down to long-term maintainability. I find ASP.NET to be extremely burdensome from a support and maintenance perpsective.

tgreer 189 Made Her Cry Team Colleague

I strongly disagree, and in fact so does Daniweb's official rules. Communication is about conveying "the message" as clearly as possible. Here, that means writing your posts in conventional, standard English.

Glad I could help.

FC Jamison commented: what is capitalization? LOL +3
tgreer 189 Made Her Cry Team Colleague

Try "borderLeft" instead. One of the unfortunate aspects of web development is that the CSS property may or may not have a corresponding JavaScript property, and they don't always map directly to each other. Also, as you can see, the spelling will differ.

So, "style.borderLeft" is the JavaScript property that changes the "border-left" CSS declaration.

Here's a nice cross-reference: http://codepunk.hardwar.org.uk/css2js.htm

AndrewSmith commented: Huge help! provided great reference as well +1
tgreer 189 Made Her Cry Team Colleague

Ok... so I guess the essential nugget of information you were after is the "descendant selector" syntax. Note that it selects all descendants, not just child elements, but also their child elements, and so on. You should also understand exactly what a "child" element is, vs. for example an "adjacent sibling" element.

If you only want to select direct child elements, you'd use: .test1, .test1 > .test2 {} Here is the reference on Child Selectors.

tgreer 189 Made Her Cry Team Colleague

The Visual QuickStart series is good. The book I learned basic HTML coding from was by Elizabeth Castro. That was years ago, and I'm sure the book has been updated to cover CSS, and DHTML, by now.

First learn XHTML, which is the current version. It's the core markup, the elements. You then learn CSS for how to "style" and "place" those elements on the page. JavaScript, you learn as-needed.

For sites that actually "do something", you'll need to learn a server-side language, and I recommend PHP. Learn PHP and MySql together, there should be thousands of books on that topic.

'Stein commented: Awsome, thanks Thomas. +1
tgreer 189 Made Her Cry Team Colleague

Have an "onload" function. The script would look at the document's referrer. If the documents are named in a logical way, for example "page1", "page2", then you can do a substr on the name, get the number, and tell which direction you came from.

If you're running fullscreen, then what back button are you pressing? If you have built your own navigation buttons, then you can handle this with a querystring variable.

Sulley's Boo commented: =') +2
tgreer 189 Made Her Cry Team Colleague

A web browser, regardless of which, can only communicate to a web server via an HTTP REQUEST, which come in two flavors: POST, and GET.

POST = A form.
GET = A querystring.

That's all.

A server-side language, such as ASP.NET or any other, can only generate a RESPONSE. That response can be any document for which there is a corresponding MIME type. If HTML, you can place HTML, CSS, and JavaScript in the response.

Despite all the fancy bells and whistles in ASP.NET, all it does is generate RESPONSE objects. It can do all sorts of fancy stuff along the way, but that's the final result.

There are a couple of different mechanisms for shuttling values between the client and server.

One of them is the ViewState, which on the client side is a big nasty encoded hidden input element, but on the server-side becomes an "object" with methods and properties.

The other is to use ASP.NET to create client-side scripts and place them in the RESPONSE.

campkev commented: Well put +1
tgreer 189 Made Her Cry Team Colleague

To change the innerHTML of an element, you need to use the (wait for it) "innerHTML" property of that element.

<html>
<body>

<a href="#" onclick="this.innerHTML='<strong>You changed me</strong>';"><em>Change from emphasized to strong.</em></a>

</body>
</html>

This also avoids using the out-of-date document.write() or document.writeLn() methods.

Killer_Typo commented: w00t, worked out perfectly. thanks. +3
tgreer 189 Made Her Cry Team Colleague

DOM methods have replaced document.write(). You can create elements (nodes), set their attributes, and invoke their methods. You've seen some of this, for example: document.getElementById("x").innerText = "Howdy"; sjklein: just the opposite. You're asking the client to do something that should be done on the server.

The web is very simple: you have web server (the server), and you have browsers (the client).

Clients can request documents from the server. That request (called HTTP Request or just "Request" in web development jargon) can pass in parameters. There are two modes, GET, and POST. With GET Requests, the parameters are tacked onto the URL in what's known as the QueryString:

http://server_name/page.html?key=value

With a POST, the variables are passed in via an HTML Form.

The server generates a RESPONSE, which can be the document itself. The document comes back to the client, and at that time, any client-side code, such as a JavaScript, can be run by the browser.

The Web Server might be configured to perform additional tasks with certain types of documents. For example, a PHP document is passed to the PHP interpreter, which runs all the server-side code, generating the final HTML, which is given back to the web server and then eventually to the client.

So it's real simple: CLIENT = BROWSER = REQUEST, SERVER = WEB Server = RESPONSE.

In your case, doing a "document.write()" of an include line won't work, because it doesn't generate a Request.

Ok, …

Comatose commented: ;) +3
tgreer 189 Made Her Cry Team Colleague

If you truly believe that, then you understand Dani, and me, about as well as you understand the programming involved in what you're asking.

You began this thread talking about one thing, then attempted to refute the objections to your naive suggestion by pointing at something else entirely.

So, just because Dani doesn't want to attempt to implement the unrealistic first suggestion, nor the ineffectual second suggestion, doesn't mean she's "brainwashed". In fact, I suggest you re-read her posts within this thread, as they obviously didn't sink in the first time.

Also, notice how I'm addressing you directly. That's what grown-ups do. So while I find your clumsy, juvenile flame-baiting personal asides mildly amusing (kind of a like a Three Stooges rerun), I'm going to have to ask you to stop.

Either: come up with some realistic, on-topic suggestions, address personal issues to me (that's what PM is for), or stop posting in this thread. If you keep posting about "tgreer" in your messages, I'm going to have to start charging you a usage fee.

Also, this will be my last posting in this thread, as everything that can be said, has been said. So if you really want to slam back, I'll graciously allow you the last word: have at it. I would just ask that you put some thought into the reply. I can appreciate a really well-constructed, witty, sarcastic message, so... take your time, perhaps seek the advice …

tgreer 189 Made Her Cry Team Colleague

When the user submits the form, the values from the form will be inside the Response object. You can get the values there, if you like.

The ASP.NET Page Lifecycle goes through a series of discrete steps, well-documented on my site and elsewhere on the web.

Any static web controls, meaning, those controls that you built into the page via the Visual Studio toolbox/designer, are re-created, and the values from the Response object bound to them as part of the LoadPostBackData stage in the lifecycle.

If these textboxes are dynamically created, via some server-side event procedure, then the controls need to be re-created, by you, in every code path that might need them and their values, prior to the LoadPostBackData stage, so that they can be properly bound.

Thus my original question, which you never answered and isn't displayed in your code:

So... where are these textboxes actually created?

Also, examine your code-path. How are you preventing your step "1" from occuring when the user submits the form? From the code you posted, evidently you're calling "filldata" on Page_Load. Thus, everytime you run your code, you're going to ignore what the user entered, and instead go get what's currently in the database. I hinted at that in my first response, as well.

Before I can help any further, you need to re-read and think through the answers you've already been given.

tgreer 189 Made Her Cry Team Colleague

Next is to open a window. In this version, we add back our HREF's so the links actually go somewhere.

Notice the new onclick attributes. It now looks like: return link_click(this); What that does is tell the link that we expect the function to "return" a true or false. If a "false" is returned, then we "cancel" the click. Why? Because we will do the navigation in our script, we don't want the actual hyperlink to do what it would normally do: navigate to the page.

We also pass in a parameter called "this". "This" is a special keyword that passes in the current object, which is our hyperlink. Notice the function? It will store "this" in a variable, "x".

We added a "window.open()" statement. You need to research that. We pass in a URL. What URL? x.href, the URL value from the hyperlink's HREF attribute.

That will open the page in a new window.

Lastly, we return false, to cancel the hyperlink click. If we didn't do that, our main page would ALSO navigate, which we don't want to do.

<html>
<head>
<script type="text/javascript">

var counter = 3;
function link_click(x)
{
  counter--;
  if (counter != 0)
  {
	document.getElementById("myMessage").innerHTML = "Please click on at least " + counter + " of the links below.";
  }
  else
  {
	document.getElementById("myMessage").innerHTML = "Proceed to download.";
  }

  window.open(x.href,'');
  return false;
}

</script>
</head>
<body>

<p id="myMessage">Please click on at least 3 of the links below.</p>

<a href="
       
DanceInstructor commented: Above and beyond the call of duty :P +1
tgreer 189 Made Her Cry Team Colleague

Thanks for the gracious answer... I thought my last post came across too strong. My point was, ASP.NET is a profoundly different web development methodology (profoundly flawed, in my opinion).

Thus web developers who understand the client-server nature of the web, the stateless environment, etc. who then try to switch to ASP.NET, which "pretends" that you're developing on a fat client with state, will have a very difficult time.

We get tripped on on KNOWING how the web works, what the client does with scripts, cookies, and the retinue of HTML Form elements and CSS. ASP.NET hides all of that from the developer, so we end up fighting it all the way. Your scenario was a perfect example: you wanted to create some HTML elements, client-side, with JavaScript. You then wanted to get those values, server-side. Simple, in ASP or PHP - mind-numbingly awkward in ASP.NET.

red_evolve commented: :) +4
tgreer 189 Made Her Cry Team Colleague

Use the "submit" method of the Form object. You should always give your form an ID:

<form id="myForm" action="myServerSideCode.php" method="post"></form>

Then, you can reference and submit the form with a script that looks like:

document.getElementById("myForm").submit();
tgreer 189 Made Her Cry Team Colleague

Yet some valid points were raised in regard to overall CONTRAST of the various forum elements. Don't dismiss them!

tgreer 189 Made Her Cry Team Colleague

Now that you mention it, the buttons do tend to blend in a bit too much. I know someone probably worked very hard to achieve the chrome look, but the buttons would be more functional (and marginally faster loading) if they were a solid color, slightly bigger with larger text, and responded to hovers.

The postbit buttons work well. Perhaps switch the thread-buttons to match?

tgreer 189 Made Her Cry Team Colleague

Return an array, containing the values.

tgreer 189 Made Her Cry Team Colleague

I listen to a lot of different styles, but as a guitar player myself, I tend to focus on simpler, acoustic performers. I like music that "features" simple instrumentation and "interesting" vocals and wordplay. "Interesting" might mean a distinctive voice. I'm always trying to find some great "new" guitar player or singer, not only because I enjoy that type of music, but because I like one-upping my friends with my new "discovery". One such recent find was Martin Sexton.

tgreer 189 Made Her Cry Team Colleague

I'm not sure about the exact nature of the problem, here.

First, stop using FrontPage! Learn to write HTML, CSS, and JavaScript "by hand".

Second, realize that you can put standard HTML into an aspx (ASP.NET WebForm). You don't HAVE to use an ASP.NET Web Control.

If you want an ASP.NET page to contain a hyperlink to a standard web page, then just include a standard hyperlink!

<a href="myStandardPage.html">Link to my non-asp.net page</a>

If you want a standard HTML page to link to an ASP.NET page, it's the same thing.

<a href="myASPNETpage.aspx">Link to my ASP.NET page</a>

If I haven't answered your question, try asking it again, and be very, very specific.

Paladine commented: Bravo! +4
tgreer 189 Made Her Cry Team Colleague

Hi. I'm having some difficulty with a project that involves working with very large binary files. These are PCL files, where the decimal character "12" represents a Form Feed, but only if it's not embedded within a string of binary data.

In other words, I'm looking for decimal "12", then looking at the next few bytes to make sure it's really a form feed. I want to record the byte position of each "real" Form Feed, for futher processing down the line.

Here's what I have, it's working but extremely slow. The interesting part is in the "while" loop:

static void Main(string[] args)
{
	// need to initialize header and position of first page.
	filename = @"C:\Statements-05-03-05.pcl";
	infile = new FileStream(filename, FileMode.Open, FileAccess.Read);

	test = new byte[1024];
	infile.Read(test, 0 , test.Length);
	asciiChars = new char[ascii.GetCharCount(test, 0, test.Length)];
	ascii.GetChars(test, 0, test.Length, asciiChars, 0);
	asciiString = new string(asciiChars);

	header = asciiString.Substring(0,asciiString.IndexOf("*b0M") + 4);
	page_positions.Add(header.Length);

	counter = 1024;

	while (counter <= infile.Length )
	{   
		pcl_char = infile.ReadByte();
		counter++;
		if (pcl_char == 12)
		{
			test = new byte[14];
			curr_pos = infile.Position;

			infile.Read(test, 0, test.Length);
			counter = counter + 14;
			asciiChars = new char[ascii.GetCharCount(test, 0, test.Length)];
			ascii.GetChars(test, 0, test.Length, asciiChars, 0);
			asciiString = new string(asciiChars);

			if (asciiString == bgn_of_page)
			{
				page_positions.Add(curr_pos);

			} // if (new string(test) == bgn_of_page)
						
		} // if (pcl_char == 12)
	} // while (sr.Peek >= 0)
	infile.Close();
}

This is slow because I'm reading a single byte at a time. I check to see if the byte is …

tgreer 189 Made Her Cry Team Colleague

You need to empty the current selection range.

function addtb()
{
  document.selection.empty();
  document.getElementById("TextEditor").focus();
  cmd = 'InsertInputText';
  document.getElementById('TextEditor').document.execCommand(cmd,'true');

  var TE = document.getElementById('TextEditor');
  var TEcn=TE.children;

  for (i=0;i<TEcn.length;i++)
  {
    n++;
    if(TEcn[i].id == "")
    TEcn[i].id = "tb" + n;
  }

}
belama commented: Thanks, I seached long for this but for some reason, I did not find it. :) +1
tgreer 189 Made Her Cry Team Colleague

I would not suggest a career in programming. I'm a programmer, and have seen the field dramatically polarize. Either you'll need to be a PHD working at Microsoft, or a low-wage employee working at a giant outsourcing company.

For someone in the middle, like me, the field is shrinking and shrinking, and wages are dropping dramatically.

Programming in the "developed" world is fast becoming a cottage industry, with small groups (1 or 2 people) providing custom solutions for small to mid-size private companies.

If I were starting over today, I'd look at networking (routers, servers, cabling), since that is fast growing and will transition to optical soon.

On the other hand, small town, local "computer handy-man" has a market: someone who can install a new DVD drive, show you how to use eBay, and remove all the spyware you dumped on your system.

I wish you well.

tgreer 189 Made Her Cry Team Colleague

You just set the style to whatever property you would like, for example "border=0".

tgreer 189 Made Her Cry Team Colleague
tgreer 189 Made Her Cry Team Colleague

cosmic rays
celestial dice rolls
through my system

So, you're all heading over to http://www.tgreer.com/forum, right? :?: