Fremus.co.za

Demistifying Life and Web Development

Archive for the 'Web Development' Category

Musings on ASP.NET and Silverlight

Getting ASP.NET 2.0 to run on IIS 6 is not just a case of installing the .NET redistributable package. You have to add the ASP.NET 2.0 web service extension under IIS 6.0 and then allow it to execute ASP.NET 2.0.

Another thing that some people seem to have confused is that ASP.NET 3.5 is not enabled under IIS. ASP.NET 3.5 is built on top of ASP.NET 2.0 and extends 2.0. There is no ASP.NET 3.5 under IIS. Its also interesting to note that the .NET 3.5 redistributable includes EVERYTHING. The 3.5 redistributable package is a hefty 197MB download and contains everything needed to build ASP.NET applications up to version 3.5.

Silverlight is a mime type that you have to add to IIS 6 for Silverlight websites to work, and configuring IIS 6 for Silverlight is as simple as adding three mime types.

  • Share/Bookmark
posted by fr3dr1k in ASP.NET,Web Development,Web Technologies and have No Comments

Technology Maturity

Silverlight is not a very mature implementation but the technologies it uses for that implementation aren’t new or unknown. Sure, you have to download a plugin to view Silverlight content, but other than that the technologies that are used in Silverlight are not new. Flash uses ActionScript which closely resembles JavaScript and wonder above wonder Silverlight 1.0 and 1.1 uses JavaScript. Silverlight does use a technology set called XAML, but then again XAML looks and feels like XML. XML is not a new technology either. With Silverlight 2.0 you can use .NET Programming Languages such as C#. Again C# is not a new technology, and even though it has been around for less than 10 years its syntax is strikingly similar to Java and C++, which have been around for longer. Where is all of this coming from? Well in the week, Friday, to be exact I tested a Silverlight 1.x application on a local Intranet. I wanted to see what difficulties users might end up with if required to download the plugin. I sent the URL to a few developers and asked them to test it for me and one question that came back was “How long has this Silverlight technology been around?”, which got me thinking. Silverlight as an implementation is new, yes, but its underlying technology is not. There will be issues with the implementation, as with many technology sets, but the key for me as a developer is that I will be able to take my JavaScript, C#, XML and database skills and be able to build on them with this new technology. From a designer’s perspective Silverlight will not introduce any new technology sets either, because all the graphics elements used within WPF and Silverlight are Vector-based. The graphics elements are represented as XAML and interestingly enough you can export Adobe Illustrator files as XAML and import that directly into Expression Blend and Visual Studio 2008. Personally I think that shows great interoperability.

The point though is that in today’s development environment technology maturity may only point to an implementation specific issue, not a technology subset. The technology subsets that an implementation is focussed on will in all likelihood be a mature technology already.

  • Share/Bookmark
posted by fr3dr1k in ASP.NET,Application Development,Silverlight,Web Development,Web Technologies and have No Comments

Analysing Analytics

So how do you interpret analytics? What is the business case for analytics and analytics packages? IT Professionals sometimes neglect to think of the business case when using a technology set. Google Analytics looks pretty and shows you some useful stats, but it doesn’t exactly tell you what the business case is for using it is. If your business strategy is not aligned with the use of web analytics then web analytics cannot be utilised properly. Sure it will give you insight into your visitors, but if your business strategy does not embrace it, it will not have the same impact.

The success of any business is determined solely through its profitability. Web analytics on its own cannot make money, therefore you have to understand how web analytics work and how you have to try and use it within a business context.

The first thing to know is that web analytics come in two basic flavours:

  1. Log File Analysis
  2. Cookie-based / Javascript-based Analysis

Log-file Analysis

HTTP-Servers create log files, and the log files themselves contain lines and lines of data that gets generated by the HTTP-Server each time a new visitor comes to your website. Various HTTP-Servers generate log files in different formats. Internet Information Services 6, for example, uses a W3C-format.

Cookie-based / Javascript-based Analysis

Cookie-based / Javascript-based Analysis require that you add some JavaScript snippet to all the pages you want to generate web analytics for. My basic understanding is that for each visitor that comes to a page with the JavaScript code-snippet in data is sent to the provider of the analytics. Cookie-based / Javascript-based Analysis require a provider such as StatCounter or Google Analytics.

Which method should I be using?
You should use both and then you have to have your own way built into your website that measures the success of a visitor to your website. In other words if the success within your business determines that you sell 100 goods per month then such a measure has to be in place.

  • Share/Bookmark
posted by fr3dr1k in Web Development,Web Technologies and have No Comments

Do business and people still need websites?

So do they? Do businesses in South Africa still need a website? Is there a need for a business to create a new website, or create one from scratch?

  • Share/Bookmark
posted by fr3dr1k in General,Web Development and have No Comments

Using SQL Server Authentication

So during the week I had a situation where I had to take an existing web application, that used SQL Server Express, and had to make it work with SQL Server 2005 Standard Edition. Both versions of SQL Server form part of the SQL Server SKU line of products, but their implementation in certain scenarios differ. The providers that are used to connect through your applications are the same though.

I used Visual Studio 2005 to develop the initial application, and in many ways Visual Studio is awesome but in other ways its not, and specifically with regards to SQL Server databases its not that great. Visual Studio allows you to simply drag and drop databases into your web application project, which is great for productivity, but it may cause you some headaches later on. If you have SQL Server Express running on a local machine you will note that a database created in Visual Studio will not show up in SQL Server Management Studio Express. Visual Studio creates the database for you, but it does not attach it to the SQL Server instance that you are running in SQL Server Management Studio Express. SQL Server Express uses a special mode of operation called user instancing, which means it uses accounts such as NETWORK SERVICE and ASPNET to give it rights to connect to the SQL Server Express Instance. SQL Server Express Instancing also adds a 45-75MB memory overhead.

  • Share/Bookmark
posted by fr3dr1k in ASP.NET,SQL Server 2005,Web Development and have No Comments

ASP.NET Authentication

During the week I have been working with SQL Server 2005 Standard Edition and 2005 Express Edition for a website. I have specifically been looking at using SQL Server 2005 for Authentication as opposed to using the standard authentication that comes with ASP.NET when you configure an ASP.NET application in Visual Studio 2005. When you enable authentication for your website an SQL Server Express database (MDF file) is automatically created and the connection string in your web.config file is also changed to point to that SQL Server Express database.

Why is the standard authentication model not appropriate for all uses?

A couple of reasons I can think of:

  1. If you wanted your development environment and your application environment to work together seamlessly then you might want to consider using SQL Server Authentication, or at least get both environments to use connection strings that are similiar or the same.
  2. If you wanted to change or add to the fields provided by the regular membership model provided in ASP.NET and in particular have those fields stored in a proper database table.
  3. If you wanted to use a Database Management System other than SQL Server. Perhaps you want to use MySQL or MS Access. You can also use Active Directory and XML as an authentication model.
  • Share/Bookmark
posted by fr3dr1k in ASP.NET,SQL Server 2005,Web Development,Web Technologies and have No Comments

Sites that use Silverlight

How many sites actually use Silverlight? Silverlight is a Microsoft technology that allows you to create rich and dynamic content for the web. The same Silverlight applications can also be used as desktop applications with WPF (Windows Presentation Foundation). With that in mind I Googled for sites that actually use Silverlight in a live production environment. I already knew of the Hardrock Memorabilia site that uses the Deep Zoom feature. I showed this to some people at work and they were amazed, as was I. So check it out, but be warned you will be required to install a plugin.

So are there other sites that use Silverlight? And if so, what is the quality thereof. I found a site called Nibbles Tutorials which is done entirely with Silverlight. They also have tutorials and samples that you can look at. I found a few more examples on this blog. This site uses Silverlight in a way that allows you to page through books, which is not that new. This site shows a jeep of some kind that you can rotate. Another site allows you to create a valentine’s day card. A museum also used Silverlight and the Deep Zoom effect. Vertigo are the guys who developed the Hardrock Cafe Memorabilia website. They have some Silverlight content as well including a slideshow presentation. Pyramid fashion also use Silverlight.

  • Share/Bookmark
posted by fr3dr1k in ASP.NET,Web Design,Web Development,Web Technologies and have No Comments

Light up the Web – Mix Essentials 2008 Review

I attended the Mix Essentials 2008 event at Canal Walk (Cape Town, South Africa) today and there were quite a few things that interested me. There were five speakers at the event:

  1. David Ives – Developer and Platform Strategy Group for Microsoft in South Africa – Microsoft
  2. Brad Abrams – Group Program Manager for the UI Framework and Services Team – Microsoft
  3. Michael Koester – Designer Marketing Manager for Middle East and Africa and Central and Eastern Europe – Microsoft
  4. Julian Harris – Conchango
  5. David Pugh-Jones – Microsoft

The event was split into two tracks, a developer track and a designer track, but it generally focussed on Silverlight, and more specifically on two software packages, Visual Studio 2008 and Expression Studio, and even more specifically it introduced XAML as a common way for these packages to share content between them. XAML, Extensible Application Markup Language is an XML-like language that defines graphic elements in a human readable form that can be used in vector-imaging programs as well as Visual Studio 2008. This gives designers the flexibility to design interfaces without having to worry about programmers not being able to replicate their designs in a programming environment. Julian Harris demonstrated that you can export files from Adobe Illustrator into XAML format and import that XAML into Visual Studio 2008. XAML is also used in the Expression Studio range of products which includes amongst other two interesting products:

  • Expression Blend
  • Expression Design

Expression Blend is, almost like Adobe’s Flash Studio, which is an IDE that allows you to create WPF (Windows Presentation Foundation) and Silverlight applications. WPF is a technology that allows developers (and designers) to create applications that give users a better user experience (UX). Contemporary windows applications generally use square (often mundane) windows, whereas WPF applications allow designers to implement creative graphics into the interface. Rounded corners and transparent backgrounds for instance are used, and because Expression Blend can read and understand XAML, none of a designer’s creative flair is lost. The developer no longer has any excuses to develop interfaces that do not exactly meet the designer’s design.

  • Share/Bookmark
posted by fr3dr1k in AJAX,ASP.NET,Web 2.0,Web Design,Web Development,Web Technologies and have No Comments

5 Tips for Developing a new Website

  1. Firstly determine the purpose and aim of the website. What do you want to achieve with the website?
  2. Determine the type of content you want to put on your website.Once you have determined the aim and purpose of your website you need to determine what the nature of the content on your website will be.
  3. Look at design galleries I do spend time looking at other designs, not with the intent to directly copy them, but for inspiration. Sometimes you can’t get your head around a certain look-and-feel and you might get an idea from somewhere. I personally love Smashing Magazine. The designs they showcase are some of the best and most creative around.
  4. Use a CSS-based layout. Avoid the use of tables for layout. Rather focus on a CSS-based layout that looks the most consistent between browsers. I found The Perfect 3 Column Liquid Layout to be useful as well as a Simple 2 column CSS layout
  5. Don’t use pirated software. If you are not willing to pay the price for a piece of software, then you may have to spend time learning how to code web pages.
  • Share/Bookmark
posted by fr3dr1k in Web Design,Web Development and have No Comments

Ora Time and Expense

As a web developer I have not find a way of tracking my work, and creating invoices or time sheets for that work. Its often a tedious and difficult task, and I do believe if it time management is applied wisely it can greatly improve productivity. In comes Ora Time and Expense, a Flash Application that uses the AIR (Adobe Integrated Runtime) to run as an application on your desktop. Running this application requires Flash and you have to install the runtime as well. Once the flash player and runtime is installed the application will be downloaded to your PC from where you can install it. Running the application for the first time you are greeted by the screen below:

The first thing you might want to do is configure the application for your specific use. To do that you simply go to the configure section, a button is located top right, which once clicked will bring up a screen similar to this one:

Ora Time and Expense

The screen contains all your personal details, and you will note that there are 7 tabs at the bottom:

Configuring Ora Time and Expense

Each tab needs to be configured individually for your specific needs. Once you have configured them you can start using Ora Time and Expense to track the amount of time you spend on a project. To do this you simply click on the Start Timer button at the top. Before the timer starts another screen will appear asking you to provide task details. Complete it and click start, and you should notice a timer appearing in the top left corner. You can pause, restart and stop this timer for each task. So if you take a break between working on a project you can pause the timer. Once you have completed a task you click stop and it will record the time spent on that task and project. If the task and project is approved you can tick the approved tick box.

The best feature of this application is the reporting it does on your project work. You can export reports in several formats, xls, csv, xml, etc. You can export reports based on your expenses and time. It can also generate invoices. This is proving to be really useful. It is not suitable for a team environment or a multi-user environment, but is ideal for a developer or designer working by them self.

  • Share/Bookmark
posted by fr3dr1k in Web Development,Web Technologies and have No Comments
Get Adobe Flash playerPlugin by wpburn.com wordpress themes