How to convert a DTED (Elevation) File to a Raster

Best Practices for CSS Style Sheets

23. January 2009 03:10 by Scott in   //  Tags: , , , , , ,   //   Comments (23)

A while back Microsoft released a program called "StyleCop".  StyleCop is almost like a style guide for code, kind of like what CSS is for HTML.  It gives the rules for how HTML should be setup and react.  Now I only wish someone released a stylecop for CSS.  In my many years of dealing with CSS I had to come up with a best practice or thought on how I would like all my Style Sheets to look and feel.  This would help me determine exactly where to look over each sheet.  I realized that this guide was in my head and I had never put it down on paper.  So here today, I won't put it down on paper, but will post it here for all to see.  I have seen many style sheets and this is the guide that I use when I start to build my sheets.

  • Style sheets should always have the basic essential styles which are things like underline, bold, italics, predefined h1, h2, and h3 fonts, colors, link variations, and sizes of fonts.  This allows for a similar look and feel on every page of the site.
  • Style sheets should be downloaded as fast as possible from the server and therefore must have the least possible white space while still allowing for the ability to separate styles with the human eye.  This is where a one line per style should come into practice.  For each style used, it should only take up one line of the style sheet.  No longer should you use one line per declaration of style.  This new way is an easy way of looking over each feature of the style while still allowing for fast downloads of the sheet. For Example:
body { margin:0px 0px 0px 0px; background-color: #0077b3; background-image: none; vertical-align: top; text-align: center; font-family: Arial; font-size: .8em; text-decoration: none; }

  • Style names should be camel cased starting with the name/abbreviation of the tag the style applies to and then the name of the div tag/style. 
    • For Example:  I have a Div tag with an id of userName, I should name the style divUserName. 
    • If I have no name for the tag, I should name a type of ID for the style.  For Example: divPageInformation. 
    • Unless it is a standard id like .bold, .italic, etc... I will not declare what the style does, rather I would declare where the style belongs. For example for links: aPageTitle
  • Style grouping is a way to organize your sheet for better readability and navigation of the sheet.  In the past, people used to just put styles up on the sheet and forget it.  Not thinking that they would have to later come back to the sheet for editing.
    • If the style is generic through out the entire site, I group it at the top of the sheet with all the other generic styles.
    • I then group all the styles by page and then control/object it styles.  I then alphabetize the styles in each group for a fast skimming rate.

For Example:  I have an accordion that is generic along the entire site, so I would group the entire accordion together and then alpha sort the tags.

/* Accordion */
.accordionContent { border: 1px dashed #2F4F4F; border-top: none; padding: 5px; padding-top: 10px; }
.accordionHeader { border: 1px solid #2F4F4F; font-family: Arial, Sans-Serif; font-size: 12px; font-weight: bold; padding: 5px; margin-top: 5px; cursor: pointer; text-align: left; }
.accordionHeader a { text-decoration: none; }
.accordionHeader a:hover { text-decoration: underline; }
.accordionHeaderSelected { border: 1px solid #2F4F4F; font-family: Arial, Sans-Serif; font-size: 12px; font-weight: bold; padding: 5px; margin-top: 5px; cursor: pointer; text-align: left; }
.accordionHeaderSelected a { text-decoration: none; }
.accordionHeaderSelected a:hover { text-decoration: underline; }

For another Example:  I have a reports page.  I group the reports page together separated by one line and then group the report styles together while sorting them.

.liReportChkbxs { list-style: horizontal; margin: 0 5px 0 0; display: inline; }
.ulReportChkbxs { float: left; margin: 0 5px 0 0; }

.liReportsList { list-style: none; padding: 5px 0 5px 5px; }
.liReportsListHorizontal { display: inline; }
.ulReportsList { text-align: left; display: block; list-style: none; }

I hope that helps in your style sheet endeavors.  I sure do wish I didn't have to go through the learning phase of this type of style.  I would love to hear my readers thoughts on this guide and how they differ from it.

If you liked this post, please be sure to subscribe to my RSS Feed.

My 2 Year Anniversary

21. January 2009 03:36 by Scott in   //  Tags: , , , , ,   //   Comments (11)

Today is my two year anniversary at my job.  I haven't been congratulated, appreciated or even thanked for the work I have done with my company.  (Was congratulated the day after with cup cakes and a card...) I guess you have to speak up and let people know what is going on before it happens.  I have learned a lot at my job and have taken very little to do so.  These days that go by feel tiring and sad.  I am in a supporting role now after I built an application from the ground up.  The SQL database, the documentation and the code.  I came out of college knowing very little about databases and even less about coding.  I develop in ASP.NET and C# which I had to learn from the start with this job.  I have barely had a lick of C or C++.  I was a computer Engineer, yet this job took me in to build a web app for the customer.  The project was built by me and it is my little baby.  Now I am in a supporting role in a team of 4 which I am the only one working in .NET while my other co-workers work in coldfusion.  My job was interesting when I first started building the application, learning things for the first time.  Now most of my time is spent experimenting with new technologies and research (cough, cough surfing) the internet in search for more.  Trying to learn new things and doing my damnedest to learn more of C#.  I have a firm grasp on the easy parts of C#, I just started using classes about a year ago and have figured out methods and code reuse when I was just starting out.  I remember the day I figured it out.  I must have deleted 1000's of lines of code.  It was nice.  It was a good day. I am just now picking up expressions and actually have my own personaly framework sitting at home.  I have a vast collection of extensions, methods and classes that I have written 90% my self.  I love the term "code reuse".  I used my framework in every application I make and it sure does come in handy when I want to do something really fast without having to re-invent the wheel. Having your own framework makes life a lot easier when you want to shell out code fast for a customer that you have already used before.

I remember my co-worker first pointing me to CodingHorror and I was just flabbergasted.  There were people out there who had way more experience than I.  It was an entire community.  I was so impressed. I wanted to join it, and be apart of it.  I talked to my boss about attending my first conference Dev-Connections where I again was so impressed.  I loved it.  I got to talk with some of the most appealing ASP.NET guru's.  I learned a lot from that conference and now I want to go back as a public speaker.  I went to see how to do it finding that I needed to submit a few ideas about what to present.  I missed the deadline the first time by a few days and the second time by 2 months.  I have signed up to the list to know when they decide to ask for speakers and one day I will be a presenter.  I have been known to be a great speaker in my time and can present upon a subject well.  I just stink sometimes at writing about it.  Thats why I started a blog a bit before DevConnections. I wanted to write better and be able to put my thoughts down on paper.  So now on the spare time I have I write a blog post or two.  I enjoy blogging and hopefully one day I will become a .NET MVP.  That day will be here before I know it hopefully.

I built my own bug tracker for my application and I usually get one or two fixes a day I get to work on.  By 12:00 Noon, I have my work down for the day and need to find another 6 hours to use up.  After I came back to the job from DevConnections, I presented my boss with an ideal for an admin assistant program.  They couldn't give me funding so they told me to work on it on my off time.  I haven't truly touched it in about 6 months.  I find my self getting bored way to fast with nothing to do.  I have told my boss during my meetings with him that I have nothing to do and he told me to present the customer with this and see what he says.  

After two years, I have tried to move up the latter a bit, but since I am located in Melbourne, Fl it is hard to find another programming job around the area.  I am here and can't move because the woman I love is going to school.  I have been called by Microsoft a couple of times to come interview, but sadly and respectfully decline not wanting to waste their time because I wasn't able to move.

After two years, I enjoy my time because I get a lot of free time with little to no dead lines, but it does get boring.  I wish I could find a better job in my area, but don't see that happening any time soon.  I am trying my hardest to build applications during my off time at home and have been decently successful.  As you can see from my Profile, I have done a bit and am still working on DrinkingFor.  I hope to have that finished in the next month and be working on another few ideas I have very soon.  Time will only tell how far I get.

I got this job straight out of college and I feel it is time to move on, hopefully to one of my Startups but I could be happy with another company for now. The future is bright with my startups, hopefully I get to work from home by my third year.

Thanks for Listening.  

Happy two years to me!

If you liked this post, please be sure to subscribe to my RSS Feed.

Create a Demo for Me? Ahh, No Thank You.

19. January 2009 03:57 by Scott in   //  Tags: , , ,   //   Comments (7)

In dealing with customers and potential customers you have to be clear and precise with them.  You have to make clear your requirements from up front.  As a full time employee of a company,  I would suggest you read My Bill of rights as a Programmer, on the other hand if your a freelancer or contractor you must tell your customers up front what you expect.  If you do not, then you will be stuck in an endless grind working for low income while doing mountain loads of work.  A customer once came to me and asked if I can show them a mock up

They said that we have a few potentials and need to choose between them. They asked if they can see a mock up or an example of what I would create for them.  Now in my early days as a contractor/freelancer, I would have given it some thought, but in today's world where everyone and their mother and daughter need a website, well I respectfully decline.  For those new programmers out there reading this, move on to another job.  For those experienced programmers, show them some of your passed work.  If they aren't happy with what they see, then say thank you, but we can't do business together at this moment.  Now, you will get one of these two replies.  Alright, lets talk about what you can do for me OR okay and thank you very much for your time.  You have to be able to walk away as a person in order for them to want you back.  This doesn't happen with big companies very well, because you have to draw up a "free" proposal and be picked among many.  When you have a small business that is in need and talks to you personally, well it works better for everyone when you can walk away. 

Taken by mikebaird

The point is you need to be able to say NO when they ask for a mock up or an example of what you can create for them. Don't do work for free.  Most likely, you will just be wasting your time anyway.



If you liked this post, please be sure to subscribe to my RSS Feed.

To Thread or Not To Thread Comments

15. January 2009 03:24 by Scott in   //  Tags: , ,   //   Comments (6)

With building a Social Site you always have to weigh the needs to have interaction with the site.  The current standard for any interaction is the comments section of the sites. The comment section is the talk back, the conversation to the site.  It is what allows for user participation and what most people would declare what Web 2.0 really is.  It allows the comment section to enable user interaction.  In building a site that would be used as a somewhat social site, you have to ask your self do you want to see a conversation another one sided page that has no interaction.  Would you rather get user feedback or just be one sided in everything you write or have to say.  You can't get feedback to see if they enjoy what your posting. You won't get a conversation going which inevitably makes the user want to come back to the site. The fact is, we need comments in the internet, we need conversation.

So in building a site, you have to worry about if you want it to be web 2.0 or web 1.0.  Comments in general are becoming standard on any site out there.  It is on all major social sites and it allows for more interaction between the users.  I don't see any problems with comments.  But I would like to start calling it something different.  A Conversation.  I call it a conversation today because more and more people are commenting.  More and more people are clicking that button to get a notification on what people say.  When you comment you save a part of your self on that site.

The Point

Comments are good, but threaded comments are better.  We are trying to build an online world.  We are trying to create a conversation that any person of any race of any creed and color can voice their ideas on.  Comments allow for anonymous participation in the world of tomorrow.  Free Speech.  Governments ban it and people are killed over what they say, but on the internet, you have all the free speech you want.  To create a conversation, you have to allow talk backs, you have to allow the user to reply to any other user.  You have to make sure a conversation can be had with any other user on the Web 2.0 site.  So in developing my site, I chose to use threaded comments as the default. Flat Comments can be chosen if they want to see flat comments.  Some people just can't handle threaded comments.  But if you think about it, Flat comments can also be threaded.

Just think of when someone posts:

Your Wrong!

I don't care what you have to say, threaded is better.

A conversation is happening right here if you like it or not. Threaded comments are at least for now the way of the future.  Someone else will invent a better way to have a conversation over a website, but for now threaded is my default and it should be yours too! Help carry on the conversation of the world and thread your comments.

Ask the Readers: What do you think, should threaded comments be a default?

Shameless Plug: DrinkingFor, it is still in Beta.

kick it on

If you liked this post, please be sure to subscribe to my RSS Feed.

The Hackers Manifesto

13. January 2009 04:29 by Scott in   //  Tags: ,   //   Comments (11)

A few days ago, I wound up opening up old memories.  Viewing old things I bookmarked such a long time ago.  I found many things that I meant to come back to and read more thoroughly, but never did.  These days time is of the essence in most peoples mind.  People find it hard to stop and smell the roses as the saying goes.  I find it the same way with me as well.  I have to slow down and smell the roses.  When I looked over my bookmarks from so long ago, I ran into an old article.  A very old article that has graced the pages of thousands of websites and still holds true today.  The culture has changed a bit and the life style of a hacker is a bit different, but why not bring something out of the closet that has created such a huge movement.  Most developers or hackers under the age of 22 have never seen this article and hopefully it is still out in the mainstream.  I sometimes thought it should be required reading in computer classes around the world.

taken by Joi


The Hackers Manifesto.  I want to ask my readers who actually read this way back in the day to throw a comment down or even if your seeing this for the first time if you enjoyed this article and it just excited you.  You see, for Gen X this article has been seen by millions and confirmed by millions.  For Gen Y, this article has been seen so few times that it is sometimes irritating.  The article subscribed to me why I first got into programming, why I first got into jumping on a computer and hacking.  I once considered my self a hacker.  I was expelled from HighSchool for hacking and was restricted to ever touching a computer again in my HighSchool.  I had my hay days and the younger generation will have theirs. 

The manifesto greatly sums up the conscience of a hacker.  They are smarter than most and have an ability to excel in their work.  They don't do manual labor, they do intellectual labor.  They use their mind instead of their body.  They are the ones who are curious.  They are the ones who strive to push forward.  To push above and beyond their current status.  They are the hackers of today and yesterday. The term hacker has literally changed from days of the passed.  Today a hacker means both the hackers of the passed and a new generation of 9-5ers or college kids striving to make their mark on this world.  They want to launch an application in 5 minutes flat and have it go viral in another 5 minutes.  Hackers today are a different culture, but this manifesto still applies.  Maybe making a manifesto #2 is needed to describe the new hacking culture...

I do ask that you contribute in the comments to know if you have ever seen this publication before. 

Here I present to you a publication that has been read by millions.

==Phrack Inc.==

Volume One, Issue 7, Phile 3 of 10

The following was written shortly after my arrest...

\/\The Conscience of a Hacker/\/
by  +++The Mentor+++

Written on January 8, 1986

Another one got caught today, it's all over the papers.  "Teenager Arrested in Computer Crime Scandal", "Hacker Arrested after Bank Tampering"... Damn kids.  They're all alike.

But did you, in your three-piece psychology and 1950's technobrain, ever take a look behind the eyes of the hacker?  Did you ever wonder what made him tick, what forces shaped him, what may have molded him? I am a hacker, enter my world...
Mine is a world that begins with school... I'm smarter than most of the other kids, this crap they teach us bores me... Damn underachiever.  They're all alike.

I'm in junior high or high school.  I've listened to teachers explain for the fifteenth time how to reduce a fraction.  I understand it.  "No, Ms. Smith, I didn't show my work.  I did it in my head..."  Damn kid.  Probably copied it. They're all alike.

I made a discovery today.  I found a computer.  Wait a second, this is cool.  It does what I want it to.  If it makes a mistake, it's because I screwed it up.  Not because it doesn't like me... Or feels threatened by me... Or thinks I'm a smart ass... Or doesn't like teaching and shouldn't be here... Damn kid.  All he does is play games.  They're all alike.

And then it happened... a door opened to a world... rushing through the phone line like heroin through an addict's veins, an electronic pulse is sent out, a refuge from the day-to-day incompetencies is sought... a board is found. "This is it... this is where I belong..." I know everyone here... even if I've never met them, never talked to them, may never hear from them again... I know you all... Damn kid.  Tying up the phone line again.  They're all alike...

You bet your ass we're all alike... we've been spoon-fed baby food at school when we hungered for steak... the bits of meat that you did let slip through were pre-chewed and tasteless.  We've been dominated by sadists, or ignored by the apathetic.  The few that had something to teach found us will-ing pupils, but those few are like drops of water in the desert.

This is our world now... the world of the electron and the switch, the beauty of the baud.  We make use of a service already existing without paying for what could be dirt-cheap if it wasn't run by profiteering gluttons, and you call us criminals.  We explore... and you call us criminals.  We seek after knowledge... and you call us criminals.  We exist without skin color, without nationality, without religious bias... and you call us criminals. You build atomic bombs, you wage wars, you murder, cheat, and lie to us and try to make us believe it's for our own good, yet we're the criminals.

Yes, I am a criminal.  My crime is that of curiosity.  My crime is that of judging people by what they say and think, not what they look like. My crime is that of outsmarting you, something that you will never forgive me for.

I am a hacker, and this is my manifesto.  You may stop this individual, but you can't stop us all... after all, we're all alike.

+++The Mentor+++

taken by BvdL 

kick it on

If you liked this post, please be sure to subscribe to my RSS Feed.

Introducing DotNet Instant Messenger

28. December 2008 19:38 by Scott in   //  Tags: , , , ,   //   Comments (2)

Ladies and Gentlemen, Boys and Girls, Friends of all ages:

I am proud to present to you DotNet Instant Messenger.  I have built for the open source community a new Instant Messaging client that works fully out of the browser.  The client is built with ASP.NET, C#, JavaScript and LINQ.

Why build a new instant messaging client?  Well, I decided that the current instant massangers were all proprietary or built in another language.  I wanted one strictly for ASP.NET.  The project in all took about 2 weeks of good old fashioned programming.  I had to learn a bit of JavaScript and Web services to get this job done, but it was fun.  I took the images from Ajax IM, I am not going to lie about that.  All the code is completely mine and built with my two hands.  I used Ajax IM’s database and enhanced it a little bit.

Instructions for Use:
  1. You must have the default ASP.NET membership schema already set up.
  2. You will need to run IMQuery.sql on the database.
  3. You must allow pop-ups for the Client to work – This is required so when a user starts a chat, the new window will open for the user on the receiving end.
  4. Note: IM’s could take up to one minute.  When the buddy list and the chat box isn’t open, there are minute intervals on the browser which means it only checks for new messages once a minute.  When you have the Buddy List open, the interval is cut down to 5 seconds.

I have made this for the community and expect the community to hopefully give me some feedback.  I am fully into making this thing fully functional client if the community sees it as a good messenger. 

The project is available on Codeplex and at  The Demo is located at Go check it out and please leave me some feedback.

kick it on

If you liked this post, please be sure to subscribe to my RSS Feed.

My Projects

24. December 2008 20:34 by Scott in   //  Tags:   //   Comments (0)

For HIRE,  Reach out and get in touch:

About me

I am a software engineer and entrepreneur living in Fairfax, VA and I currently work on the many apps. I also created and work with others to create their own apps. In my free time, I raise my kids, travel, and work on products. I am a graduate of Florida Tech, where I majored in Computer Engineering. My abilities include C#, .NET, Java, Sharepoint, MSSQL, Javascript, Ruby on Rails, Python, Android, AngularJs, KnockoutJs, ReactJs with Django, HandlebarsJs, Windows Desktop and Web.  I am a full stack developer, so I can work on the database end, hit the middle tier and also work on the front end doing UI work and integrations.

  • Lumber by Lance - 2008 – This site is for a customer that produces logs to lumber and then has a kiln to dry the lumber out.
  • Indialantic Volunteer Fire Department - 2008 – This site is for a volunteer fire department out of Indialantic Beach, Fl.  I was quite happy with this project because all the white space is completely updatable before I found out the concept of what a CMS is.
  • DotNet Instant Messenger - 2008 - This site was designed by a friend without a website.  I designed and created DotNet IM.  Pretty proud of this one actually.  First real engine I have put out on the internet.
  • DrinkingFor -2008 - Been working on this site with my partner in crime.  I knew and he knew only java.  Since C# and Java go hand and hand, he wanted to jump onto a simple project.  This is it.  We are working on it to make sure it up to web 2.0 standards but it has been launched.
  • UtopiaPimp also at UtopiaShrimp - 2009 - I started this site well over a year ago and gave it a break so I could work on DrinkingFor.  I am back at this site and it is working well for me. The site is built for a Online game at  It is a game that requires a bit of intellect and collaboration.  The learning curve has said to be high, but it is still one of the best and if not oldest online games in the world.  UtopiaPimp currently has over 30k users.
  • ItFeelsLike -2010- I built this site to show how it feels for different things in our lives.  Physical or mental Feelings.  Have you ever been shot?  Well I haven't and would love to know what it actually feels like if someone can describe the feeling.
  • DeMotivatedPosters - 2010 -  This site was mainly built for fun and to learn ASP.NET MVC. It is for all those DeMotivational poster lovers out there!  It gives you a chance to create your own DeMotivational Poster!
  • PostSecret Collection - 2010 - I created this site because there was no real archiving place for  I loved the site, so this is somewhat of a tribute to it.  The entire collection has been downloaded using several different sites to hunt down the postcards.  I since implemented Germany's, France's, The UK's, and Spain's into the site.
  • Roller Derby Penalty Timer - 2011 - I created both a paid and free version of a penalty timer application for Roller Derby.  This application is currently only on the Android Phone.
  • Audingo - 2011 - I built this Android application for a Start up out of Texas who is trying to be the next company to sell things at a discount, but instead of reading things, they want to call and text them to you.  Cool idea and could be used elsewhere.  I guess time will only tell if they do well.
  • Dolphin Words - 2011 - I built this simple little website to help others out when trying to solve a Cross word Puzzle.  Its simple and nice looking. Probably the nicest looking Crossword, Words With Friends, Scrabble, and Words by Post Helper out there on the web.
  • Endurance Leaders Android, iOS and Windows Phone - 2015 - A mobile app built in Xamarin targeting the three major mobile platforms.  Android, iOS and Windows Phone.  This app was a product of a contract completed.  It helped target your fitness goals.
  • Roller Derby Nation - 2013/2016 - Roller Derby Nation helps teams and leagues manage their self better.  Its an all in one management solution for sports leagues.
  • Horizon Child Development Center - 2016 - I built a Child Day Care website for my daughters school.  Something I am proud of.  It was created from the ground up by DotNetNuke.
  • We Work Hourly - 2016 - I built a job board for the hourly worker. One that specifically is geared towards the freelance and hourly worker.
  • We Contract Work - 2016 - I built a job board for the contract worker. One that specifically is geared towards the contracting worker.
  • We Work Fulltime - 2016 - I built a job board for the full time worker. One that specifically is geared towards the full time salaried worker.
  • RW3 Culture Wizard - 2016 - Project I worked on building out modules for the culture wizard of RW3.  It was built in ASP.NET and C#.
  • Cortex - 2015/2016 - Project like education software blackboard.  It helps small educational schools manage and prepare their kids for improved educational activities.  Using the EDFI education model.
  • Karder and Quickbase - 2015/2016 - Built many bolt on applications for Karders Quickbase applications.  Camera, video taking and forms for Quickbase and DC management.
  • Nearix - 2014/2016 - Contractor for many small applications for Nearix including Social Integration.  An application that allowed companies to use software to post to 100 different social platforms at one time.
  • Sharepoint Developer - 2015/2016 - Completed sharepoint modules and migrations within the 2 year cycle.

Finish the UnFinished

16. December 2008 16:50 by Scott in   //  Tags: , , ,   //   Comments (47)
Two things rob people of their peace of mind : work unfinished and work not yet begun.” - anonymous

This is not a story of work unfinished, but of work finished.  Life and work throws us into many different projects and work.  We as a society are getting better and faster at finishing tasks we once could not accomplish.  I had a customer come to me and describe to me that they wanted a "chat" application plugged into their current application.  They decided that it was too hard to talk over the phone and would rather type it down and hit enter only to receive a response moments later by the person on the other end.  The chat app had to be web based and had to be produced in the current language of the application in which is was being plugged into.  The language was ASP.NET.  I decided to try the easy route and looked all over the web for some type of chat app.  I found one which was nice, but was purely javascript.  I wanted one built in ASP.NET.  

In the end of this process, I realized there was nothing built in ASP.NET which came as close as to what they wanted me to build.  So, I started from scratch building it up and after about 2 weeks worth of work I got a working demo completed.  I then called up my customer to demo this thing out and they liked it a lot.  But they said there was one small problem.  They only needed to talk to me through it.  They didn't want to talk to anyone, but me.  So here I am with a working buddy list, Icons, Profile content, working group chat and singular chat.  I was frustrated.  It was a demo and not completely done, so I stepped back for a moment and reflected.  I said to my self, "If I don't finish this up now, it will be another thing I just haven't finished".  I was right because it would have turned into that.  It would have just turned into another app that was put out somewhere on some computer. It would have never seen the light of day and I would not have had a peace of mind.  So I decided not to bill the customer for what I had completed.  I built a small little chat "back and forth" messenger for the customer and me.  I then separated the main application and finished the chat application on my own time.  I was extremely happy with this accomplishment and decided that since I was unable to find a chat application built in ASP.NET, I wanted to release it to the world.  So in the coming days I will be posting the chat application on my blog.  Stay tuned.  It is impressive.

Now, as for the moral of the story:  Finish your work.  Bring it to completion.  If you just let it sit there it will collect dust.  It will be time not well spent in which you just lost a small bit of your life to something that you didn't get finished. Go host your project on codeplex and just maybe it would be found by some agile developer a few years from now.  The developer will decide to implement your code and make a much better application built off what you started.  If anything, just finish your work and you will start to have a peace of mind.  I know I do.

If you liked this post, please be sure to subscribe to my RSS Feed.

Life is like Code, you never know what you will create next

10. December 2008 02:21 by Scott in   //  Tags: , ,   //   Comments (62)

Appreciate the Beauty – Code can be amazingly beautiful.  It can be written in five lines to express what could also be written in 20 lines.  When I write beautiful code, I will often take a moment to step back and realize what I have just done.  You need to do this in life as well.  When you complete something that took a long time, step back and appreciate your time spent.

Be In the Now – I have always enjoyed coding. I could "get in a zone" and wouldn’t miss a bracket or a semi-colon.  In software development, you need to be in the now.  You need to hack away at the code until you get it just right. In life, you need to also figure out how to be in the “now”.  You need to live in the present.

Be Honest – Don’t mess around, be truthful to those you work for.  Coding is an art, be honest in how you code and what you code.  Take shortcuts, but don’t infringe on patents.  You will lead a much more satisfying life if you were just an honest person.

Plan ahead – Good programmers don’t just start coding.  Think about what you do before you do it.  Good coders make sure they have a game plan before they start writing.  Even if you’re an extreme programmer, think about what you do, before you do it.  In life, you need to ask, "Are the actions your taking now going to work well in the future?"

Picture taken by Amagill

Narrow Your Focus – Code is completed in functions.  Something goes into the box and something different comes out of the box.  You need to narrow your focus so you write the best functions possible to make you code complete the first time around on that particular function.  You need to apply that same level of attention and narrowness of focus to your everyday activities. You could get a lot more done if you jumped into one task or function a time and got that function done and then moved on.

Keep Your Eye On the Ball – To make great code, you have to know what’s at the end of the code.  You need to make sure it works well with everything.  If you’re an extreme programmer, make sure your correct in all your goals for the next release. It’s the same in life.  If I find that I’m not making the progress I want toward my goals, it is usually because I’ve let myself get "busy".

Mind Your Manners – Coders will tolerate a lot from a newbie.  They will help him along and make sure he doesn’t screw up, but most coders really don’t appreciate poor etiquette.  You should approach everyone in the world that way.  Peace on earth is easy if you just gave a bit more common courtesy.

The More You Do It, The Better You’ll Be- "Practice makes perfect" is the mantra every coder should follow.  Keep working and you will write better code than before.  I look back on old code I wrote and see a vast improvement than what I was doing 2 years ago.  How much richer would you be if you practiced better communication, compassion, and empathy?

Leave the Code Better then You Found It – I learned this in Boy scouts very early on.  It’s the same with code.  If you do a refactor, leave it in better condition than you made it.  Write better code than the lines you wrote before.  Make it do greater things.  You would be a much better friend and person if you made a concentrated effort to leave everything and everyone better than you found them.

kick it on

If you liked this post, please be sure to subscribe to my RSS Feed.

The NEW ASP.NET Chart Controls (with Screen shots!)

5. December 2008 11:53 by Scott in   //  Tags: , , ,   //   Comments (16)

I must say that I was a bit skeptical about what Microsoft could offer compared to Dundes Charts when they brought out their new charting controls at PDC 2008.  I was not able to attend, but I had to just go take a look at the control and I must say after seeing the sample gallery, I was BLOWN away!  I have included all screenshots that came with the sample website so that you can also see what's going on with this control. I was utterly impressed and you will be too.

I would like to ask for two more types of charts to be added.  

The Speedometer - I would like to see a speedometer type chart added.  This chart will have a radial type chart that has measurements set by the user.  Kind of like a Miles Per Hour setting.  The long stick inside of the speedometer will be calibrated by how much data there is.  Also, there should be allowance for an infinite amount of sticks to be added to one speedometer.  The Sticks should be able to change color depending on how high each item is pacing.  So to put it in terms of a car, I have a car which has 1 speedometer and it has 4 sticks inside the speedometer.  It allows me to set the MPH rating inside and each stick is for each tire spinning on the car.  The stick turns red if the stick is over a certain predefined mark. So what about it?  This chart would probably fall under the Circular charts.

The Unknown Chart Name - This chart is a bit harder to explain and can only be expressed visually, but here it goes. First off it would be radial/Circular.  It will have a status for a separate entity of a system.  When the system states all items are clear, it will show bubbles in an all green, formatted in a triangle form.  When very little of the operations are working, it will show a much small triangle formed red blimp.  I made a crude drawing of what I am talking about below.  Each entity is attached to a triangle inside the circle. When all is well, the circle should be completely green.  When the status is below level, they should start to turn red.  This allows you to look over the status of a system very fast and efficiently.  Each bubble and each triangle should allow for a drill down to see what's going on.

The next question is where can I suggest more charts? Anyone got an answer? 

All of these charts are TOO beautiful.  I want to tell Microsoft and Dundes they did a GREAT job!  Each chart allows for ToolTips, DrillDowns, Hover Over Texts and much more.

To Download: Charts are Here

Dundes Charts V.S. Microsoft .NET Charts

  Area Charts
2D100StackedArea  2DArea 2DSplineArea  2DStackedArea  3DArea  3DSplineArea

Bar Column Charts
  2DColumn  3D100StackedBar  3DBar  3DColumn  3DStackedBar

 Circular Charts
2DPolar  2DPolarMarker  2DRadarArea  2DRadarMarker  3DPolar  3DRadarArea

 Combination Charts
ColumnArea  LineArea  Pareto  StockArea

 Financial Charts
Bollinger1  Bollinger2  CandleStick  Forecasting  PriceIndicators  Stock

Line Charts
2DFastLine  2DLine  2DLineMarkers  2DSpline  2DStepLine  3DSpline

Pie Donut Charts
2DBeltPieChart  3DPieLegend  3DStepPie  2DDoughnut2  2DDoughnut  2DPieInsideLabels  2DPieOutsideLabels  2DSupplementalPie  3DDoughnut  3DPie2  3DPie3  3DPie  3DPieInPie

Point Charts
3DBubble  FastPoint  2DBubble  2DPoint  2DPointCustom  2DPointLabels  2DPointShapes

 Price Range Charts
2DKagi  2DPointFigure  2DRenko  2DThreeLine  3DThreeLine

Pyramid Charts
2DPyramid  3DFunnel  3DFunnelGap  3DFunnelWidth  3DPyramid  3DPyramidGap

Range Charts
2DRange  2DRangeBar  2DRangeColumn  2DSplineRange  3DRange  3DSplineRange

kick it on

If you liked this post, please be sure to subscribe to my RSS Feed.