• GAWDS
  • Nik Makris is a Learning Tree .NET Enterprise Application Development Certified Professional
    .NET Enterprise Application Development
    Certified Professional
    Learning Tree International
  • Nik Makris is certified under the CCNA® program
    Nik Makris is certified under the CCNA® program
  • Nik Makris is Google Analytics Qualified
    Nik Makris has obtained the Google Analytics Individual Qualification
Blog

Where’s the POP3 Service in Windows Server 2008?

24. December 2009 16:27

I’ve recently upgraded my virtual server to a Windows Server 2008 box and to my annoyance noticed that Microsoft have removed the POP3 Service that shipped with Windows Server 2003.

I know that POP3 is old and a bit rubbish, but it was perfect for my purposes.

Rather than shell out for a commercial mail server I suggest you try the free hMailServer which is a doddle to install and configure and in my opinion far better than Microsoft’s POP3 Service.

hMailServer

I’m using it for my POP3 and SMTP server.

Read more about hMailServer’s features which include SPAM filter and virus scanner integration and pre-configured authentication and relaying security.

Tags:

Filed under:

HomePlug Networking Incompatibilities

11. November 2009 14:56

It seems HomePlug certified powerline networking components aren't as interoperable as it would first appear.  I've been using Devolo Homeplug dLAN 200 desk units for a number of years now and they have been trouble free and constantly out perform wireless networking in terms of speed.  I recently bought another Devolo dLAN 200 unit to expand my network to enable streaming video to a Windows Media Extender.

I assumed it would be a case of just connecting it to the mains and using the Devolo dLAN configuration wizard to set all the units up with a new encryped password.  I soon realised that this wasn't the case.
The dLAN configuration wizard didn't even detect the new unit on the mains network.  After looking through the manual for a while scatching my head searching for a non-existant troubleshooting guide, I spotted a paragraph that mentioned that older Devolo products using firmware 1.x need their firmware upgraded in order to work with newer models.

Upgrading the firmware has now made all my dLAN 200 HomePlug certified devices compatible!  Thank God for standards Smile

Tags: , , ,

Filed under: Networking

Installing Hardware RAID on Windows 7

24. October 2009 20:43

Like a lot of Windows fans I pre-ordered Windows 7 and built a new PC ready to install it on; I chose a motherboard (MSI DKA790GX) that, like many on the market, has a hardware RAID controller on-board allowing you to take advantage of redundancy with RAID 1 and/or benefit from faster disk access with RAID 0.  Read more about RAID.

I had already installed Windows 7 before I remembered I wanted to set-up a RAID 1 array.  I tried to get the RAID array working with Windows already installed but soon realised I would have to set it up prior to installing Windows 7 because Windows kept hanging on boot-up because it was lacking the RAID controller drivers.

The supplied manual doesn’t explain how to get RAID up and running unfortunately.

RAID Controller Set-up

So here’s a quick guide to installing hardware RAID on a motherboard that features a RAID controller.  These steps assume you are performing a clean Windows 7 install rather than an upgrade, and they might differ depending on your system set-up, but the general principles should be the same.

  1. Download the RAID drivers for your motherboard from the manufacturer’s website and save them to a memory stick.
  2. Back up all your important data!
  3. Turn your PC off and unplug it.
  4. Install 2 hard disks preferably with identically capacity into your PC.
  5. Turn on your PC, press the delete key or F2 key when prompted to get to the BIOS menu.
  6. Find the option to select the RAID mode, save your settings and exit BIOS.BIOS RAID options
  7. On reboot you should see a new menu option to enter the RAID controller settings.  Enter the key combination when prompted to get to the RAID controller menu. AMD RAID controller menu
  8. Create a new RAID array selecting either RAID 0, or RAID 1.
  9. Select the disks that will form the array, save the settings and exit.
  10. On reboot press the delete key or F2 key when prompted to get to the BIOS menu.
  11. Check the boot sequence of your PC and ensure your optical drive is top of the list.BIOS boot sequence options
  12. Insert your Windows 7 disk into the optical drive and exit the BIOS.
  13. On reboot press any key when prompted to boot from the optical drive.
  14. Windows 7 should start installing.
  15. Select your localisation settings and click next.Windows 7 localization menu
  16. Click “repair your computer” and click the ”load drivers” button.Windows 7 install menu Windows 7 load drivers menu
  17. Insert your memory stick and browse to the correct driver and install.
  18. Exit back to the Windows 7 install menu click “Install now” and on the next screen click “Custom (advanced)” to perform a clean install.install-windows-custom
  19. When you are asked where you want to install Windows 7 you should see that the 2 RAID hard disks are now visible as just 1 drive.
  20. Add a partition to the new drive so Windows with be able to recognise it.
  21. Continue installing Windows as normal.

Tags: , ,

Filed under: Windows | Hardware | Storage

IE6 – Why Web Developers Should Support the Browser

3. October 2009 17:52

There seems to be so much fuss surrounding support for aging Microsoft browser Internet Explorer 6 lately, both from the web developer community and big corporations such as Google and Facebook. There are many websites dedicated to eradicating the browser, a Twitter petition, a joke campaign to save IE6 and a whole lot more…

While I don’t particularly enjoy spending a considerable amount of time per project making sure websites I build are IE6 compatible, I do see the benefit of supporting the browser.

I was in Google Analytics recently and looked at my browser statistics for this site.  Visitors to my site are fairly IT literate but Internet Explorer 6 still has a larger user base than Safari, Chrome and Opera with almost 9% share. Looking on the W3C Schools browser statistics, 12.1% of their users browsed the web with IE6 in September 2009.

NikMakris.com Web browser market share Sept 2009

Web browser market share

NikMakris.com Internet Explorer browser share Sept 2009

Internet Explorer browser versions

I could make the decision not to support IE6 for my personal site and about 9% of my visitors would be affected, but if I made that decision on a commercial website, I could end up losing out on business, especially since many of the people still actively using IE6 are businesses or public sector organisations who can’t easily upgrade or install an alternative web browser.
Many organisations also have legacy applications that do not work with new versions of Internet Explorer and during a recession many organisations will avoid spending money on upgrades and new software if they can afford not to.

Whilst it might be okay for Google and Facebook to block support for the browser when you visit their own web properties, would a client of yours be happy if you did the same with a website you built, potentially losing them business?

Internet Explorer 6 may be a dog of a browser in 2009, if you’re a web developer it probably causes you hours of pain creating dedicated style sheets and conditional statements.  You may even have had to make major template changes to deal with the many quirks of the browser rendering engine, but hopefully in the not too distant future it will become such a small percentage of the web browser market that we can all forget about it and start concentrating on new technologies such as HTML 5!

Tags: , , , , ,

Filed under: Web Browsers

Learning jQuery 1.3 - Book Review

20. June 2009 19:05

My first exposure to jQuery was using other developer's plugins to create animation effects such as sliders, and accordion menus.
The highly refactored and compressed production code isn't the easiest to read and understand, especially if you want to alter the code to any great extent.
After reading a few tutorials, I thought I'd buy a book and get more involved with the jQuery library.

As an ASP.NET developer used to coding with intellisense, I was pleased that jQuery has been incorporated into Visual Studio to allow ease of developing.
I browsed through the jQuery books on Amazon and opted to buy "Learning JQuery 1.3" by Jonathon Chaffer and Karl Swedberg after reading the user reviews.

I've now read most of the book and can highly recommend it.  The book assumes the reader has good HTML, CSS knowledge as well as a familiarity with JavaScript and the DOM, but this enables the book to quickly move onto doing useful, everyday tasks with jQuery.

The first six chapters of the book explore the jQuery library in a series of tutorials and examples focusing on core jQuery components.  Chapters 7 to 9 look at real-world problems and show how jQuery can provide solutions to them, and the final two chapters cover using and developing jQuery plugins.

Web developers should be aware of web accessibility and SEO issues with using client-side scripting and it is good to see the book highlighting the concepts of progressive enhancement and graceful degradation where appropriate.

"the inherent danger in making certain functionality, visual appeal, or textual information available only to those with web browsers capable of (and enabled for) using JavaScript.  Important information should be accessible to all, not just people who happen to be using the right software." - Learning jQuery 1.3,  page 94

After a brief introduction into the world of jQuery, what it does and how it came about the book moves quickly on to selectors, which are a fundamental part of how jQuery selects element(s) from the DOM.  It also covers jQuery's chaining capability, which coming from other programming languages looks odd at the outset, but quickly proves to be a very powerful technique.

The authors then move on to talk about events.  What I particularly like about the way jQuery handles events is that the behavioural code can be cleanly separated away from the HTML mark-up without having to litter tags with onclick and onload attributes.

The examples show how to add functionality on top of your HTML by binding events to elements on the page, which when triggered cause jQuery to modify the HTML to bring the page to life.  Techniques are introduced by example, then slowly refactored and improved while introducing new jQuery methods along the way, which is a breeze to follow and learn.

The fourth chapter covers effects such as fading in and out and custom animations, and jumps straight in to cover a useful example of how text size can be increased on-the-fly for ease of reading.  The intro also mentions an important usability example of effects.

jQuery effects "can also provide important usability enhancements that help orient the user when there is some change on a page (especially common in AJAX applications)."- Learning jQuery 1.3,  page 67

Chapter 5 is all about DOM manipulation and covers jQuery's many insertion methods such as copying and cloning parts of the page, which it demonstrates with another useful example in the form of dynamically creating CSS styled pull quotes from a page of text used to attract a readers attention.

AJAX is the next topic, which interested me enough to create a little tool to load in an XML RSS feed and create a blog category list from the data.
The chapter covers the various options of loading partial data from the server including appending a snippet of HTML into the page, JSON, XML and how to choose which method is the most appropriate.

Table manipulation is next on the agenda and the book discusses how to sort table data preventing page refreshing using AJAX as well as client-side sorting, filtering and pagination.

Chapter 8 delves into forms, using progressive enhancement to improve their appearance and behaviour.  It also covers AJAX auto-completion as well as an in-depth look at shopping carts.

Shufflers and Rotators are next and the book starts out by building a headline news feed rotator which gets it's headlines from an RSS feed, typically used by blogs.  It also covers carousels, image shufflers and image enlargement.

Chapter 10 and 11 examine the plugin architecture of jQuery and demonstrate how to use plugins and build your own.  I successfully produced my first jQuery plugin from reading this book.  You can check out my tag cloud plugin and read about how I originally built it before turning it into a plugin that other developers can use.

Tags: , , , , , , , ,

Filed under: Web Development | Reviews