With setting up Reliant Code, I wanted to set myself a new task. After taking some time off, I got down to developing this site. I didn't want to create static pages, so I had to make the site ultra dynamic so it would be easy for me to create new articles and segments on the site on the fly. So the first task was to develop my own bespoke CMS(Contents Management System). I have written a few CMS systems from scratch using PHP and MySQL, which are excellent programming languages and tools to use, but I thought I should create a new site with another language I had barely used, so I used ASP.net with SQL Server 2008. I had used classic ASP before in the dark ages, but not much experience with Microsoft's modern and related, yet different language. So it was a challenge I have taken up myself, and I was relishing it. So I had to re-familiarise myself with C#, which because of my intensive C++ experience in the past, I felt was the ideal language.
Now with the release of this article, announcing the creation of this new site (Yippee!). The thing I have to admit was that I didn't have much time in finishing things off in the desired time I would of liked, due to being busy with other projects. But now I'm here and pleased to now finally have it deployed. The one technical regret I have in developing this site from a technical standpoint was including the irritating Visual Web Developer's own AJAX Toolkit, which was an headache to use and more importantly unnessesarily bloats the HTML code (Even in the age of Braodband, you want to keep the pages small!). Even top ASP.net developers now recommend JQuery, which to me was too little too late as I had gone too long down the road to revamp the core of site. When I find time, I will phase it out and remake many features to comply with JQuery. Incremental steps to optimise things are the order of one day in the future.
The most important part was the CMS system, which I have to admit I enjoyed developing. Making sure data was managed properly was a good challenge and straight forward. Using SQL Server Management Studio to create SQL procedures made it the easiest part to develop, as the tools were kind to me in creating critical procedures and indexes easily; there are plenty of SQL procedure scripts on my database, so that helped overall. Linking it to the Admin site was straightforward using many C# features with ASP.net which allowed easy integration of the data objects from the server database to the site in general. This allows a dynamic site, where the homepage, slides, items, category and here on the news section are loaded from the database. Now with that in place, no more coding of either the core of the contents pages on the main site, or the Admin. Small incremental enhancements and new features will be added easily without touching any base code.
There are some brilliant tools and controls, I have found and added to the site for interaction and dynamism. JiffyCMS, WebControlCaptcha, and ITextSharp. There are many more, but these were the main ones I depended on. Firstly JiffyCMS allowed me to edit any items as if i am using a Word Processing program, edit it like a normal Document file, and generates the HTML to allow it to render properly on my site, WebControlCaptcha is an old component, but it is so efficient and ITextSharp. ITextSharp on various sites has been criticised by many developers, I feel it is a brilliant library for rendering the articles in PDF files. Loads of tweaks to allow it to render differently to how it would look on a normal web page, as it was important to have the layout right for print.
As I am an advocate of using the newest cutting edge technology, I have developed some HTML features, which helps the dynamic feel of the site, such as Canvas, which uses pure HTML and Javascript to create really cool dynamic animations, both bitmap and vector images without any plug-ins (Plug-In would be required for Internet Explorer). In many ways can be used the same way as Flash; unfortunately it has to be purely programmed. Hopefully, in time, I should release a brief tutorial on how I have done a mini game in HTML Canvas and Javascript, just to show the versatility of this exciting new technology.
Because of budget constraints (in other words being cheap!), buying expensive software was not a solution. So I had to develop the site in Visual Web Developer, which is a part of the free Visual Studio Express 2010 suite. As this site is an hobby, it was a good start. Graphic design was done by the best free open source programs in this field which were GIMP (Bitmap Images), Inkscape (Vector and Icon Images) and the great FREE 3D modeller Blender 2.5x(3D). I am not an good modeller, but for simple models I will be using for later tutorials, it does all I need and loads more I can't ;D.
The main aim of these tutorials are basically make it easy and fun for new developers who want to learn how to program. The beauty of the web is that there are so many great learning resources in great depth, so you have to look at it in a way that I want to teach some of the thing I know. I should stress a major point that this site is at best supplimentary to any learning, as there are thousands of great books available on this subject, which not only teaches you to code, but also the algorithms and coding practices which will do well in developing your skillset. There are a few tutorials, which are rare to find online; I will hopefully soon have them up on this site soon. I went through many loops to learn different aspects over the years, in time will be covered.
So there you have it, hope you enjoy this site, and learn along with it. Now the real hard work will begin, as so many articles and coding are now needed to be done; let the challenge start now :)