Friday, April 30, 2004

A Week has gone by

Well, I know I haven't been very good that last couple of weeks about blogging everyday. I have two projects due, pretty much today, and my asthma has been acting up. So by the time I get home, if I have any energy, I am working. If not, then I am sleeping.

Asthma and the Attacks, not just a band anymore
Last night was little tough, I had a pretty good asthma attack. It was one of those that just shuts you down.

It was interesting, I was trying to think how to describe it. I mean, you take all of your medicine, but that doesn't make it go away. It just makes it think about going away. So you end up laying there, and sleeping, but it's not like regular sleep. Because your body has been lacking in oxygen, it just kind of goes to sleep, but your mind isn't sleeping. You can hear everything and feel time go by and you kind of can't do anything about it. I heard my beautiful Wife come in to the room to check on me, but, I couldn't really acknowledge that I knew she was in the room. Also because you are trying to move but can't really, you feel really heavy. Where regular sleep you don't feel like you are made of stone.

So after about three to four hours of this kind of sleep your body will start responding to your mind. But everything is slow and an effort. It's one of those things that I don't talk about much. It's not the focus of my life, it is just one of those things I deal with. But today I thought, hey maybe I will write about it so that you would know what it was like. Well enough about that.

NDoc and Documenting Code
So I have got the one project pretty much wrapped up. I have written a lot of code that is reusable, and helpful. It authenticates with Active Directory, uses AD groups to see whether the user has access to the application and what perrmissons they have, if they do have access. It uses XML to help archive the documents, giving the user a current and archived view on the fly. A WYSIWYG (what you see is what you get) editor written to work in the Internet Explorer browser, and is written in JavaScript and XSL so that I can use it to edit content that is stored in XML if I am so inclined (I was).

So will all of this code I need documentation to let others in the company use it and see what I Was thinking right? So am I going to sit down and type it all out in Word? No! I comment my code in C# using XML comments, and then when I build the project it gives me a xml file with every function documented! Now we have to make it human readable (I think that XML is human readable, but I am among the minority) . So I downloaded NDoc. This is a great program that takes that xml file and the dll that is created for your project and generates MSDN like documentation. Now .NET developers live and die by this stuff, so this is as good as gold. I can hand the project off to any other .NET developer and they can pretty much pick it up from there! Good stuff.

Tuesday, April 27, 2004

Riding and XML

Well, the camping/riding trip was great. It was really relaxing and I got to ride a lot. The ole' XR 500 did just great. The 30 dollar ebay shock worked great and over all it was a lot of fun to ride. I really enjoyed the long group ride. It's really cool seeing 10 bikes scooting across the dry lake bed. There are some pictures on the photoblog. Saturday we had a nice surprise, my Beautiful Wife called and said, "Hey, I'm at Kramer Junction, come get me". I was so thrilled she came. Everyone was!

So sunday morning, we hopped on a quad and went for a little ride. It was something that I have always wanted to share with her. I don't know what it is about dirt riding, I just really enjoy the feeling and the visuals of it all.

Well, the train is getting close to work, I will talk about the XML portion of this post a little later.

Thursday, April 22, 2004

Gone Ride Be Back Later

Well, tomorrow I am heading out with my Folks to go Camping and Dirt Riding. It should be a lot of funny and I am really looking forward to it.

Now I know that this week has been a little light on the post. What can I say, work has kept me pretty busy. I have written some very cool things though. We now have a web application that is using active directory. Not just for authentication, but also assigning roles by what groups the user is in. I wrote a fairly good xml based ASP.NET forms engine. It uses XSL and transforms a xml config file in to Web forms, that includes validation. I am going to be working on adding functionality to that and making it as good as I can. In fact once I get a couple more things polished we are going to start using it at work.

Now I know I still owe, the htmlGenerator, that takes xml and your xsl files and write you an html file. I will get it up here, I promise. I just need to takes some time to write a little documentation on it, before I set it free. But I have to tell you, I've been using the heck out if it. Infact on the ASP.NET form engine.

So next week, some more indept post on the path to Authenication with Active Directory (i.e. how to get the microsoft example code to actually work), ASP.NET webform from an XML template. (I love code that generates code...It makes me happy) and even a little talk about the Riding Trip.

 

Tuesday, April 20, 2004

Active Directory and Web Form Validation in ASP.NET (How I am learning to love Active Directory)

So it's been a little while since my last post. I have been working on a project that of course is due by the end of the month or even sooner if I can. The best part about this project is we are using active directory for our authentication engine. (If it's good enough for the network login it's good enough for me.) The data that this project is dealing with is very hush hush, only upper echelon people get to read kind of stuff (This would not be me!). So it has to be very secure and very reliable, and I have had a month to get it done. (humm, not sure how that worked out)

The tough part about this project has been the Security. It has to be tight, and with good reason. So we decide to use AD (Active Directory). Now how about find good information on authentication with AD? Not so easy really. There is not a great deal of stuff out there, and I have had to reread a lot of it to get the idea. But it is now starting to click. There is two parts to it. The LDAP authenication, and the FormsAuthentication. The first is to authenticate the user against AD, and the second is to make sure they don't have to login on every page. I don't have all of this mastered as of yet, but I am hoping to by wednesday.

Here are some of the links I have collected in this authentication journey.
Use Form Authentication with Active Directory
Forms Authentication with Active Directory
Active Directory Authentication with ASP.NET
ASP.NET Forms Authentication

Sunday, April 18, 2004

Movie Quote

Movie Quote for the Day
Movie : "Mystery Men"
Character: "The Shoveller"
Quote: "We have a blind date with destiny and it looks like she ordered the lobster."

Saturday, April 17, 2004

RSS Feed Junkie...have iPod will Travel

So I admit, I am an RSS feed junkie. I rather have my RSS aggregator open and the feeds stream into it, then to open a browser and look at the site that the content is coming from. At work I leave it open all day, and check it whenever it is updated. Now I know that everyone has worked really hard to make their blog nice to look at, I know that I have, but I just like having the content coming to me, instead of me going to it.

Now, I have my iPod, and it is great for my music, but what about RSS feeds. I know what you are thinking, those two things have nothing to do with each other. And at one time that is true. However, someone has written an app that lets you sync RSS feeds on your iPod. It is called iPod Agent. It is written in .NET (of course) and does a lot of stuff to make your iPod not only your music play, but a real world PDA. You can sync Mail, Contacts, Calendar, Tasks, Notes, Weather and RSS News Feeds.

So now,  I can listen to Dave Brubeck "Take Five" and catch up on reading my Email, and favorite blogs! Engagdet has a great post on it.

Thursday, April 15, 2004

Quote of the Week

The Wayward WebLog (Matt Warren) has summed up how it has been at work for me lately.

Some days you get stuck and you end up doing more thinking than anything else. On those days it?s easy to take a break and punch out a few paragraphs of pondering for the internet elite. But all this week I?ve been reluctant to do anything but spit out for-loops and conditionals.>I think my F10 finger is getting sore from too much debugging.I tried to go web-surfing and it started to hurt whenever I clicked. Maybe it?s some typing related malady, or maybe it just hungers for more code.

For me, it is the F5 key, but basically the same idea!

The Code Project

The Code Project is one of the best sites I've found for coders to get great examples and tutorials from other coder.

Tuesday, April 13, 2004

XAML

XAML stands for "eXtenisible Application Markup Language". basically it is a new technology that allows you to created user interface of your Windows applications using markup syntax to create and describe, text, links, images and controls. This will be available on the next Windows operation system. (code named "Longhorn"). Here is an interesting article showing an application created in XAML running on "Longhorn". Click here

Sunday, April 11, 2004

Started a Photoblog

So yesterday I started a photoblog. I plan on updating it once a week or so. So far, I have gotten some nice comments about my train picture. Check it out

Saturday, April 10, 2004

The next Wave of blogging

So I have been reading about mobbloging. It's been around for about a year, but with cameraphones getting cheaper, it is becoming more and more popular. What is a moblogging? Simply put it is the practice of submitting text messages and images directly to online diaries. This article from the Guardian Unlimited explians the whole thing better than I can.

It's an interesting movement. I have thought for awhile that some of the beauty of the photos that I've seen from cameraphones is the candidness of them. That the picture was very much of the moment, and had very little to do stoping everyone and getting the camera out and taking the picture. While I love those pictures, they aren't as truly a representation of day to day life. I really love the fact that moblogging lets you share those real life/real moment images with your friends and family and even the world.

Some links to check out:
textamerica
http://www.buzznet.com
http://cellphones.engadget.com/

DNS Changes

So yesterday, I made some (scary) changes to the DNS for our Domain at work. I changed the DNS Servers used for the domain, and transfer all of the records to the new DNS Servers. If I  goofed up, little things email for the entire company would of been down, and no one would of been able to get to our website.

I am happy to say that none of those bad things happened. The transfer and propagation happened in about 14 hours. (which is incredibly fast) Which means when I show up on monday, I get to keep my job :-).

Friday, April 09, 2004

Meetings are options, days off required

So I am not sure how it worked. We were suppose to have a meeting today about a project that is on a tight timeline. So feeling miserable, I get myself out of bed to come in to work, for this meeting. I was suppose to present what I have coded up. To show the protype site (1/3 of it with functionality built and usable) and get feedback. Little design and usability tweeks. Anyhow not one of the other people sheduled to be in the meeting were in the building today. Now, most people have a good idea earlier in the week that they are going to take friday off don't they? My boss was the only one that told me. And truth be told, he deserves some time off, he is a hard worker, and does his best to make my job easier. Sometimes he is the only reason my job is even doable. But how come the others couldn't reschedule.

In the end it was probably good I came in, there were issues that I needed to take care of. But still it would of been nicer to be sick at home instead of sick at work.

Thursday, April 08, 2004

feeliing Ill

Just not feeling well today. Got sick at work. Can't seem to keep anything down. But tomorrow is friday, maybe it will be better tomorrow.

Tuesday, April 06, 2004

Wrote something cool, saw something cool

Wrote something cool
So as a programmer, it is in my best interesting to be lazy. Not afraid of hard work lazy, and not slacker lazy. I mean lazy in a way that I never want to write the same code twice. Moreover, I don't want to write code, that I can generate with other code. Funny enough about this kind laziness, you can spend longer on writing a solution, then just doing the task at hand. Fortunately I broke even today. So what I wrote today, is a little utlity, that you feed a xml document, and the xsl stylesheet that your wrote for the xml, and it creates a html file from your xsl. So including the xsl I wrote 270 lines of code (145 for the xsl, 125 for the utlity), to create an html document, that only has 185 lines of code. Why would I do that?

Several reasons come to mind. First, accuracy, the xsl is going to more accurate, in writing the links, that I am going to be. In 185 lines of code, there are 150 links. Anyone would started to get a little bored and start to let their mind drift off, and the links won't of been as accurate because they are thinking about lunch or that movie they just saw. Second, flexibility, what if tomorrow, my boss says hey, 'Russ that looks great, but lets try this format instead'. Correctly changing the html page around could take a lot of time. However, changing the format of the xsl, is much quicker, and I can regenerate the html in half a second after the xsl is finished. Finally, that laziness factor we were talking about earlier. I don't want to write the code, when I can have something else do it for me.
An example of this would be the electric handsaw (skilsaw). Now you know it took longer to make the first skilsaw, then it did to cut 10 boards. But did it take longer to create the skilsaw then it would of taken to cut 5000 boards? Probably not.

In a couple days once I get my little utility all polished I will post it. I still need to write in some error checking and clean up the UI. (Ed we can do a command line version if you want :-> )

Something cool I saw
Checking the logs today I saw that I got a someone who came to my site from a yahoo.com search. I was pretty please to see with the keywords "Real Life Adventure" I was ranked 6th on the search results. So, I am thinking, right on, movin my way up the search engine ladder. Out of curiosity I typed in the title of my blog "Adventures in Real Life" and I came up ranked 2nd in the search engines. Now how cool is that.

Monday, April 05, 2004

All About Blogs and RSS

Here is a good article on what blogs are technically all about. It doesn't go in to the community that bloggers have, but it is quite informative. Check it out!

New Dev site

Ziff Davis has started a new developers site just for Windows/.NET Developers.  It's called  DevSource. On my first spin around the site it looks like it has some very useful articles and great tips. One of the articles that caught my attention was under their using VS section. ".NET Rock Stars: Chris Sells", it's an interview with Chris on windows development. It's pretty much a must read. The other article interested me was again, under the using VS section "Framework Patterns", this article specifically is targeting exception handling. It's good stuff, check it out.

Friday, April 02, 2004

Geek Glossary Part I

It was brought to my attention that I use a lot of acronyms ;-). And it's true, I do. With my job, it saves me about ten hours a week using acronyms in emails, phone calls, and in meetings. The computer industry is just over flowing with them. However, some acronyms have a different meaning depending on how they are used. It's like all the rules we have in the English language at it's worst. Let me give you an example. Here are two sentences using the same acronym to say two different things.

  • wrote something in ASP today.
  • I need to call our ASP to find out what happened.

So if that wasn't confusing enough I use phrases like "Classic ASP" and "ASP.NET". These are referring to versions of Active Server Pages. So in truth "Classic ASP" means version 3.0 and "ASP.NET" means version 4.0 and 4.1.

During a recent meeting at work, we were discussing the "API" for interfacing with this or that, and one of the people in the lending department asked what an "API" was. I thought this was a great question, because as geeks we forget that not everyone knows or even has any clue as to what we are talking about. So what does "API" mean? Well, it stands for Applications Programming Interface. Don't you feel better knowing that? So now you are going great, what does an Application Programming Interface mean in English. What it really means is, it is a way, or more correctly an program that someone has written that has methods of letting you talk with this other program, without having to know the particulars about it. Now, you are thinking so APIs are something that makes it easier to program for something. And the answer to that is a very positive, ummmm sometimes, maybe...

The last one we will cover today is "blog". It isn't really an acronym, and it's barely a word. Basically it's slang. What blog actually started out as was "Weblog". Then someone started to drop the "we" of "weblog" to make it "blog". So basically a blog or weblog is a web page that is updated almost daily that consists of someone?s ramblings, rants, raves and even geeky thoughts. (Kind of like this one).

Until our next installment of Geek Glossary, here is a link to a great Geek Glossary to look up computer acronyms and other computer industry mumbo jumbo.

Thursday, April 01, 2004

Thing one and Thing two

thing one
 I noticed something the other day but didn't have time to mention it. The blog has passed 1000 views. What's even cooler than that is for the most part my views aren't counted. Which is kind of cool because it is just the count of you guys visiting.

 When I started this blog four months ago, I didn't think about anyone visiting it. It was more like writing to the ether. However I have had people visit the blog from Sweden, Italy, Japan, Spain, Germany, China and of course from all over the United States. It's interesting to see on my little blog, the effect the internet has, and the whole global village idea coming true.

 Now I know that most of the readers of my blog are friends and family and I thank you for thinking that I have something interesting to say. Even when I go on and on about ASP.Boring (as one comment suggested ;-D ). I want all of your feedback, so please don't hesitate to use the comments feature. Just click Comment(n) and write away. If you have a popup blocker on, you may have to turn it off to use comments.

thing two
 On tuesday's blog I talked about a little utility called BlogJet. What it is, is a windows applications that works like Word for your blog posts. You don't really have to know any html to write you posts and have it look like you want it to. It has bold, italics, underline, bulleted lists, images and hyperlinks tools built in. It also as a really nice feature for people like me that lets you look at the code. (Being that I dream in code, I couldn't image not being able to see before posting my blog.)

 Every post since tuesday has been done through Blogjet. I am not sure why, but I find it more convenient to write and edit my posts in it. It's fairly intuitive and is really easy to set up. It even has settings to allow you to post blog account (for example I use blogger.com) and upload any images you are using for your blog to another server. While I haven't used this yet, it is a great idea and really speeds up the time it takes to post content to your blog.  Another nice feature is it allows you to connect to different blogger accounts. Not everybody uses only one  blog service and the creators of blogjet understand this.

 While I do think this is a great little product I do have a short feature wishlist. (Remember it is still in beta 1)

  • Spellchecker
  • CSS support
  • Cleaner HTML code in Code View

I am happy to tell that these features are on the feature request list on the BlogJet forum.

Got to code today

Today ended up having fun coding this afternoon. We needed something that let people securely move the data. So that is what I wrote. It was in classic asp and it was made up of little components that I have created over the last year or so. I also used some components from AspUpload that are really nice and easy to use. We also purchased and are using thier XUpload product which is a very user friendly way of uploading multiple files. It even lets the users drag and drop out of windows explorer.

It has been a little while since I've done anything in classic asp. It was actually nice. I am surprised about how easy it is to switch languages some days and so difficult others. I didn't have any problems today. Everything just flowed from a code point of few. For the most part I got a secure upload and download application done in a couple of hours including the user interface and security. Don't get me wrong, this isn't a modular piece of code that is reusable and perfect to use in ten other things. It was a one off solution. But it works and it solved a problem. Sometimes it's really nice to be able to solve a problem quickly.

Of course I am working on a .NET version of the same thing that is way more modular and will use Active Directory for security of the internal users and a salted hashed password for the external users. It will always create and delete directories and documents on the fly or scheduled. It will allow the helpdesk group to create the secure transfer sites on the fly.