Category archive - Development

Learning Visual C# 2008 How To Program Part 1

Learning Visual C# 2008 How To Program Part 1

Visual C# 2008 How to Program, 3rd Edition

By Paul Deitel Published Sep 18, 2008 by Prentice Hall. Part of the Pearson Custom Computer Science series.
Copyright 2009
Dimensions: 7″ x 9-1/8″
Pages: 1600
Edition: 3rd
Book
ISBN-10: 0-13-605322-X
ISBN-13: 978-0-13-605322-4

In order to learn Visual C# I chose the book recommended in school called Visual C# 2008 How To Program.  I learn through experience and excellent notes!  This will allow me to update this blog and track my growth as I complete the book. If you have an opinion on anything written here, I welcome the discussion and in turn I am sure there’s always something new to learn. This first post will be an overview of the basic terms related to programming in C#.

Read more

How to Build a Website

How to Build a Website

Some would love to have their own website but have no idea on where to start, or feel the information is not detailed enough to allow them to create it independently. I will try to make this post short but sweet enough to help anyone get started with a site in a very short amount of time. If you want definitions and a good understanding of the working parts this will not cut it, however this will get you up and running for now and you can learn more later.

Get Your Site Up and Running!

1. Step one should be to register a Domain Name. (More Details ) Read more

How the Course and the Web Works

How the Course and the Web Works

This was in my drafts from 1/2010. It appears to be from a class that I took in college, but either way it might be helpful. *I am not the original author of the content below.*

World Wide Web

  • System of interlinked, hypertext documents accessed via the InternetNavigate from page to page via hyperlinks.
  • Al Gore really did invent it. Kind of. Al Gore created legislation (Gore Bill) which funded the High-Performance Computing and Communications Initiative and lead to Mosaic, the first graphical web browser.
  • It’s all very hyper.Hyper. HyperCard. HyperText. HyperLink. HyperText Markup Language. HyperText Transfer Protocol. Here, hyper does not refer to the frantic pace of the web. Rather, it simply means “linked”
  • Read more

META Refresh-Quick Tip 4 Convenience

When working on sites I often prefer to view the pages within the browser as I make updates to ensure it renders the same as the preview within the editor. All of the updates are made on my local dev server and only uploaded to the production server once the site is completed. It becomes redundant to hit F5 after every save to refresh the browser so I use the meta tags to refresh the browser every 10 seconds or so. Just remember to remove the tag when you are finish working on the project. It’s also a good time to update all other SEO tags at the same time. Here’s a site that provides a few different options that some may find useful.

http://www.htmlcodetutorial.com/document/index_tagsupp_4.html

META for Automatic Refreshing and Forwarding

You can use <META ...> to tell the web browser to automatically move to another web page, or refresh the current page, after a specified period of time.

To have the page automatically refresh itself every x seconds, use a tag like this:

this code
<META HTTP-EQUIV="REFRESH" CONTENT="5">

This tells the browser to refresh the page (HTTP-EQUIV="REFRESH"), and that it should do so every five seconds (CONTENT="5").

Suppose, however, that you want the page to refresh itself by going automatically to another page. This is common, for example, when someone has moved their home page to a new location, but want someone who goes to the old location to still find a pointer. You could put this <META ...> tag in the page at the old location:

this code produces this
<META
     HTTP-EQUIV="Refresh"
     CONTENT="5; URL=autoforward_target.html">
this page

In this case the <META ...> tag works is like the first refresh example, only with a little added information. The first part is the same: CONTENT="5; URL=autoforward_target.html" tells the browser that the page should be refreshed. CONTENT="5; URL=autoforward_target.html" gives two pieces of information: that the page should refresh after five seconds, and that the new URL should be autoforward_target.html .

In a situation like this, you should also provide a regular link to the new page.

You can also use <META ...> tags to ensure that the browser does not cache the HTML document. Caching is the process of saving the HTML document locally, on the computer’s hard drive, for future use so the browser doesn’t have to download the document again. To ensure that the browser does not cache a particular page use the following code:

this code
<META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">

WHMCS Domain Registrar Error

Problem:

When making an attempt to add a new client to WHMCS and assign a domain name that was registered before with my existing ENOM account I would receive Registar Errors. When the cron job would run to synch up the expiration date it would return the first error below. Here is the steps I took to resolve the issue.

Resolutions:

First Error: Registrar Error Domain name not found
Resolution:
1. WHMCS Admin
2. Servers
3. Updated the IP of WHM to the new IP. (I was assigned a new IP for SSL and did not update WHMCS

Second Error: Registrar Error Invalid client IP: 22.22.222.222
Resolution:
1.Opened a ticket with Enom API Support to update their end with my new IP address.

Steps Taken Once The Above Was Resolved
http://wiki.whmcs.com/Importing_Data#Manual_Domain_Only_Entry

Manual Domain Only Entry

To add a domain on it’s own without a product, follow the steps below:

1. On the client summary page, click the “Add New Order” link in the Actions panel
2. The client will be preselected, so you should fill out the rest of the form – begin by choosing the payment gateway you want the client to pay with
3. Leave the Product/Service dropdown menu set at None
4. Leave the Billing Cycle dropdown menu set at Monthly
5. Enter the domain in the Domain text field and select Register as the Domain Registration Option (even though you aren’t intending to register it today)
6. Choose the number of years you next want the client to be invoiced for at the time of renewal and tick any addons the user has for their domain
7. Ensure both tick boxes for sending an order confirmation and generating an invoice are unchecked so the user is not emailed about the order you are adding
8. Finally, set the Order Status dropdown to Active and then click the submit button to add the order to WHMCS
9. You will now been shown the order screen summarising the details of the order you just added
10. Now as the final step, you must go to the domain’s information page to enter the correct next due and expiry dates aswell as selecting the registrar the domain is registered with if using one of the built in registrars. To do this, from the order screen, click on the link in the Type column of the items ordered – this will take you straight to the details screen.

You have now finished adding your client. By following the steps above, your client will have not been notified that you’ve added them and will now be invoiced by WHMCS prior to the next due date for the items you have added to their account.

A Convenient Way To Manage Multiple Servers mRemote

mRemote is an app to keep handy when managing multiple servers.  You can also export your server configs to share with the team to make updates less painful.

mRemote is a full-featured, multi-tab remote connections manager.

It allows you to store all your remote connections in a simple yet powerful interface.

http://www.mremote.org/wiki/

AGILE Software Development and TFS 2010

While researching ways to use TFS 2010 with the AGILE method of Software Development, I created a quick but efficient outline that is useful when proposing the process for developer and business use. I also added a few links that could assist new users to Team Foundation Server, with details on how to complete certain task within TFS. It would be great to read suggestions from others that may be using TFS in a different manner to broaden my knowledge base.

The Development outline while working with TFS 2010 is as follows.

  1. User Stories are entered in TFS with Estimates.
  2. Tasks are created and linked to the User Stories.
  3. Test Cases are created in TFS and linked to User Stories.
  4. Bugs are filed and linked to the User Story.
  5. Once all Tasks,Test Cases, and Bugs are completed the User Stories are mark as resolved.
  6. Reports are created to ensure all items are resolved and the Project is complete before release.

Work Items and Workflow (Agile)

http://msdn.microsoft.com/en-us/library/dd997897(v=VS.100).aspx#CreatingManyWorkItems

Working with User Stories

http://msdn.microsoft.com/en-us/library/dd380634(VS.100).aspx#LinkBug

Working with Tasks

http://msdn.microsoft.com/en-us/library/dd380700(v=VS.100).aspx

Complete Process with Details on All Reports

http://msdn.microsoft.com/en-us/library/dd997796(v=VS.100).aspx#TrackTheProject

Product Planning Workbook (Reports)

http://msdn.microsoft.com/en-us/library/dd380682(v=VS.100).aspx

MSF for Agile Software Development v5.0

http://msdn.microsoft.com/en-us/library/dd380647(VS.100).aspx

How To Restore Your Recycle Bin on Vista

So I accidentally deleted the Recycle Bin on my Desktop by selecting all items and deleting. Well I thought a simple undo delete would fix the issue but unfortunately it restored everything except for the Recycle Bin. I performed a quick Google Search and found the quickest fix possible. Figured this could be useful to others so here you  go..

By: Ramesh Srinivasan / WinHelpOnline.Com

Restore Recycle Bin icon to the Desktop

  • Click Start, type Control desk.cpl,,@Web and press Enter
  • In the Desktop Icon Settings dialog, enable the Recycle Bin checkbox
  • Click OK

Another way to access the Desktop Icon Settings dialog is to right-click on the Desktop, click Personalize, and in the left pane, click Change desktop icons.

Magento eCommerce Open Source Application Installation

Magento eCommerce Open Source Application Installation

Magento is basically a Business CMS/Shopping cart application designed to take online businesses to the next level. While on Template Monster I browsed for great eCommerce templates and found the Magento templates to have the look and functionality that I expect for a business. They have a free edition which is limited to basic functionality and then there’s the Enterprise edition which is designed for a mature successful company. The project took a total of 30minutes for me to install including the download from the site. The download was slow for some reason but the rest of the setup was a breeze. Here’s the installation instructions from the site, however before you get started with the install make sure you verify the version of MySQL installed by your host is 4.1.20 or newer.   MySQL

Magento Installation Guide

Posted on Thursday, August 30, 2007
Category: Installation & Setup

Installation

  1. Please refer to Magento’s system requirementsto ensure you have the appropriate platform and environment set up. If you attempted to install Magento and the installation wizard suggested to use the PHP-CGI workaround, please click here.
  2. Downloadthe .zip or .tar.gz file from the Magento website and decompress it.
  3. Upload the Magento web files to your web server via FTP (if you have SSH access and are comfortable with the command line, check out this wiki post)
  4. Create a MySQL database and user/password for Magento This step varies by hosting provider and is out of the scope of this document. Consult your provider’s support/documentation for instructions on how to do this.
  5. Ensure that the file magento/var/.htaccess, the directories magento/app/etc, magento/var, and all the directories under magento/media are writable by the web server. To do so, navigate to the directory with your FTP client. Then locate the function “Change Permissions” or “Change Mode” in your FTP client and select it. Once you find the function, you must set the permissions so the web server can write to this file. There are two typical ways of representing file permissions in Linux:
    1. As a number (eg, 755)
    2. As a series of permissions categorized into user, group, and other
  6. If your FTP client uses the first representation, set the permissions on each directory to be 777, or 0777. If your FTP client uses the second representation, set the permissions as shown in the image below. http://www.magentocommerce.com/wiki/magento_filesystem_permissions

    image

  7. Use your web browser to surf to the Magento installation wizard. If you’ve uploaded the Magento files to http://www.example.com/magento/, then the wizard will be located here: http://www.example.com/magento/install/.
  8. Once in the wizard, you can configure various system-level settings that are required for Magento to function. Most options will be intelligently guessed for you, but you’re free to override any settings that don’t look right. At the very least, change the database parameters in the first box “Database connection” to match those of the database you set up in Step 3.
  9. Success! You’ve completed a basic Magento install. You can now visit the administration backend and begin configuring your new online store.

Once I completed the Installation the first thing I wanted to do was load a few images of the test store and see if it worked. Unfortunately you must crawl before you walk. Which means you must go through the Backend options of the site and modify the settings to meet your business.  But for starters it’s best to visit the Knowledge Base page to find answers for most of your questions. If you find the software appealing enough you can pay for the User Guide. It’s inexpensive for a refined application such as Magento. Later I will follow up with my Complete Site Setup but for now here’s a peek at the installation with a sample product.

Sample Product

Magento3

My Developer Toolkit

Here’s a list of tools, tips, and sites that I find very valuable when it comes to developing and learning. A large amount of this list came from my Web Programming  professor Les Lusk. Hopefully this list will become useful to someone other than myself if not it will still serve as a good reference when setting up development images for friends to use. As I continue to grow I am sure this list will do the same.

Browsers

Opera – The forgotten of the top three browsers. Now available for free! This is the number one browser for cell phone users!

Firefox – Firefox is the best all around browser for Web development. It is also the fastest growing and second-most popular.

Safari – You already have this if you are a Mac user, but now Window’s users can also download for free!

FireFox -Add-ons

All of these utilities work from within the FireFox browser:

  • ColorZilla – A collection of tools, including a Color Picker similar to the one found in Photoshop
  • Edit Cookies – add, edit and delete session and saved cookies
  • FireBug – Firebug integrates with Firefox to put a wealth of development tools at your fingertips while you browse. You can edit, debug, and monitor CSS, HTML, and JavaScript live in any Web page – a must have.
  • FireShot – a Firefox extension that creates screenshots of Web pages.
  • HTML Validator – Adds HTML and XHTML validation to your browser
  • IE View – adds “View this page in IE” to your FireFox Menus
  • JS View - allows you to view the source code of external files.(Javascripts/CSS)
  • Opera View – adds “View this page in Opera” to your FireFox Menus
  • Safari View – adds “View this page in Safari” to your FireFox Menus
  • Link Checker – Checks for valid links on any given page
  • MeasureIt – a ruler to measure height/width for any page element
  • Web Developer – assorted Web Developer tools for your browser – a must have.

XHTML authoring

HTML-Kit – Free full functioned editor with XHTML conversion utility/split screen viewing and the ability to load external plug-in utilities.

Jedit – A cross platform programmer’s text editor written in Java that is customizable with plugins (requires Java to be installed on your machine). Make sure to download the “stable version” not the “latest version” for best results.

HTML Validator Lite – The free lightweight version of the HTML Validator software.

TopStyle Lite – Free CSS editor

FTP

FileZilla – FileZilla is a fast and reliable FTP client with a “Windows Explorer” type of interface, lots of useful features, the ability to resume downloads and the SSH/SFTP.

FireFTP – a plug-in for FireFox which gives you instant access to FTP from within your browser.

Online Resources

Net Mechanic – Check HTML coding/load time (up to 20 pages with registration)

Net Tuts+ – Web Developer and Design Tutorials (Great Resource to have)

pForm - Quick and easy form creation. (This will save you a lot of time)

SitePoint - Fresh Thinking for Web Developers and Designers (Books and Useful Articles)

TAW (Web Accessibility Test) – A tool for the analysis of Web sites, based on the W3C – Web Content Accessibility Guidelines 1.0 (WCAG 1.0).

WDVL – The Open Source Reference Library – JavaScript, Perl, HTML, PHP, Perl, Python Ruby, Rails, Soap and more!

Web Pages That Suck – Learn good web design by looking at bad web design

Server-side Downloads

Windows/Mac Users – install MySQL/PHP at once:

  • XAMPP – XAMPP is an easy to install Apache distribution containing MySQL, PHP and Perl. XAMPP is really very easy to install and to use – just download, extract and start.
  • AMPstart – You can use this with XAMPP to allow your environment to run on a USB key!

Windows Users – install the entire package at once:

  • WampServer – WampServer is a Windows Web development environment. It allows you to create Web applications with Apache, PHP and the MySQL database. It also comes with PHPMyAdmin and SQLiteManager to easily manage your databases. WampServer installs automatically (installer), and its usage is very intuitive. You will be able to tune your server without even touching the setting files.

or install all of the services separately:

  • Apache HTTP server – The number one Web server in the world. (open source)
  • MySQL – MySQL database server.
  • PHP – PHP programming language.
  • PHPmyAdmin – Web Interface for MySQL. Eliminates the need to do command line administration.

Utilities

Zone Alarm – Personal firewall software. If you don’t have a firewall on your machine – you should!

Font Lister – Free font viewing and printing utility. You can view the fonts on your machine both installed or in a folder

Cliptrak – Multiple Clipboard Utility

CPUID – Is a freeware  app that gathers information on some of the main devices of your system. (Must Have)

WinDirStat - WinDirStat is a disk usage statistics viewer and cleanup tool for Microsoft Windows (all current variants). “Great Way to identify what’s eating up your disk space.”