Asp.Net and Aweber

June 30th, 2009 by Mark Wiseman

ALFitness recently wanted to change their users email marketing tool and decided to use aweber. This looked like it would be a simple process ended up being a nightmare.

When a user joined ALFitness we would subscribe them to an email list in aweber by sending an email. This was not a problem. The problems started when we wanted to parse information from that email so it could be used in the marketing campaign.

i.e. Saving current exercise frequency and activities they enjoyed.

We would receive an email from MAILER-DAEMON@mail1.aweber.com saying:
Hi. This is the qmail-send program at mail1.aweber.com. I’m afraid I wasn’t able to deliver your message to the following addresses. This is a permanent error; I’ve given up. Sorry it didn’t work out.

It would then attach a copy of our email with the body formatted strangley:
Exercise Regularity: 1-3 times per week=0D=0AActivities Enjoyed: Home gym=0D=0A

The problem is instead of Carriage Return Line Feeds it was recieving =0D=0A. After a lot time on the phone with aweber and a lot of searching i found out that we were sending our emails with: Content-Transfer-Encoding: quoted-printable. Apparantly there are some systems that cannot recognize this and we would need to change this to 7bit. It isn’t obvious how to do this but this is how we achieved it:

Dim message As MailMessage = New MailMessage
message.From = New MailAddress(from)
message.To.Add(pTo)
message.Subject = subject

message.BodyEncoding = Encoding.GetEncoding("iso-8859-1")

Dim plainView As AlternateView = AlternateView.CreateAlternateViewFromString(body, Encoding.GetEncoding("iso-8859-1"), "text/plain")
plainView.TransferEncoding = Net.Mime.TransferEncoding.SevenBit	'VERY IMPORTANT
message.AlternateViews.Add(plainView)

Dim smtpClient As SmtpClient = New SmtpClient
smtpClient.Send(message)

ICSP website re-development

June 2nd, 2009 by Liani Liebenberg

We are on the brink of embarking on an exciting new project: the re-development of the current ICSP website (www.icsp.com.au). International Customer Service Professionals (ICSP) is a professional body promoting Customer Service Excellence with Tricia Olsen leading the team as CEO and Founder. Revium has teamed up with ICSP to promote ICSP as a leader in the industry and showcase the services currently offered by incorporating new functionality into the website which will improve ICSP overall web presence and ultimately encourage more signups to ICSP membership.

The project has been divided into 2 phases and we are still in negotiation to determine exactly which elements fall within the scope of phase 1. Currently Revium has committed to delivering the following core improvements:

  • Re-design of website layout & navigation 
  • Replication of the current ‘Members’ section functionality
  • Incorporation of an new Internal Site search feature
  • Standardisation of existing forms & new and improved sign-up/feedback forms with auto-responders
  • A new ‘Share’ option (e.g. post content to Twitter, FaceBook etc)
  • WordPress Content Management System(CMS) allowing ICSP to move content from the old site to the new site
  • Basic SEO and Google Analytics (Web Stats)
  • Allow “comments” to be left by the general public on certain articles (Moderation would be performed by ICSP)
  • Updating the email marketing system (eBulletins)
  • Our design team has started with the design of the website and we hope to deliver the initial mockups of the site to the client within this week. Timelines have not been set in stone yet but watch this space for go-live details and a new and improved web solution for ICSP…

    Power of the ASP.NET MVC + jquery

    June 1st, 2009 by Evgeny Petrov

    What a hectic a couple of last months have been for the SE New Products project team (Liani has blogged about this project earlier)! Quite a few work weekends and lots of things learned. That was our first serious test of new and becoming famous MS ASP.NET MVC framework and it passed it very well. In conjunction with some very extensive use of jquery and it’s various plug-ins it helped us to deliver a fast, crispy looking web site with some very intense business logic.

    A particularly interesting from technical point of view there were the following findings:

    • ASP.NET MVC + jquery may be considered a significant shift from classic ASP.NET development paradigm. It requires new skill and fresh look at the way we develop .net based web sites.
    • By heavy use of jquery we achieved a substantial shift of business logic from server side to client side, from c# to jscript. It doesn’t look as an achievement at first sight, but in reality it is - client browser became “live” instead of being static as it usually happens and this by our view dramatically improves user experience.
    • we use a special technique to compress and gzip jscript files before delivering to browser. According to our tests it gave size benefits up to 5 times and browser visually loads files faster. We have added a special flavour to this technique by dynamically changing urls to compressed files if there have been code changes made, thus ensuring that the only version of js browser can get is the latest.
    • jquery + ajax + json were used to deliver rich server side form validation rules to the client browser. For user it seamlessly looks as a client validation, but in reality it’s not - the approach works very well in all cases we needed to use it in.
    • A custom RequireSSL action attribute has been developed to enforce SSL for certain pages according to the environment the web site is hosted on.
    • log4net logging framework has been used for logging instead of “MS Enterprise Libraries Logging” and we don’t regret. We’ve had quite a few issues with Enterprise Libraries on previous projects and log4net didn’t let us down.

    Take a look at the showcase web site at Simply Energy. I hope you’ll enjoy it.

    Windows Azure FAQ

    May 29th, 2009 by Khuram Latif

    What is Windows Azure?
    Windows Azure is a cloud services operating system that serves as the development, run-time, and control environment for the Azure Services Platform.

    windowsazure

    What can you do in Windows Azure?
    Windows Azure provides developers with on-demand compute and storage to host, scale, and manage Web applications on the Internet through Microsoft® data centers.

    Is Windows Azure just a hosted service?
    Windows Azure is not grid computing, packaged software, or a standard hosting service. It is an integrated development, service hosting and management environment maintained at Microsoft datacenters. This environment includes a robust and efficient core of compute and simple storage capabilities and support for a rich variety of development tools and protocols.

    How does Windows Azure ensure that the environment and services are always available?
    Windows Azure is designed from the ground up to be a fault-tolerant platform. Innovative technology called the Fabric Controller ensures that service availability is not affected even if individual servers fail. The Fabric Controller technology also makes it possible for developers to upgrade their application without any service interruption.

    How does Windows Azure scale?
    The innovative Fabric Controller technology in Windows Azure enables developers to scale applications seamlessly, as demand rises and falls.

    What is the Windows Azure Fabric Controller?
    The Windows Azure Fabric is a scalable hosting environment built on distributed Microsoft data centers. The Windows Azure Fabric Controller manages resources, load balancing, and the service lifecycle based on requirements established by the developer. The Fabric Controller deploys the service and manages upgrades and failures to maintain availability.

    Is Windows Azure ready now? What is available?
    During the Community Technology Preview (CTP) developers invited to the program, which includes all attendees of the Microsoft Professional Developers Conference 2008 (PDC), receive free trial access to the Azure Services Platform SDK, a rich set of cloud-optimized modular components including Windows Azure, SQL Data Services, Live Services, and .NET Services, as well as the ability to host their finished application or service in Microsoft datacenters.

    Why is Microsoft creating two Windows Server operating systems? Isn’t this confusing for customers?
    No. Each Windows platform is optimized for different customer scenarios and needs. The availability of both Windows Server and Windows Azure provides flexibility and choice for our customers to build applications on the Microsoft platform that best fits their needs.
    microsoft-windows-azure-24
    It is understood that Microsoft is for ‘choice’, but at which point do you recommend Windows Azure vs. Windows Server?
    The recommendation depends on the customer’s needs and the scenarios they are trying to address. If customers are interested in extending their infrastructure without having to invest in additional IT assets, need a platform as a test-bed for next generation applications, or want to extend on-premises applications in the cloud, we recommend utilizing the Azure Services Platform in concert with the existing on-premises technologies.

    How does Microsoft differentiate Windows Azure from Windows Server?
    Windows Azure and Windows Server are separate platforms designed to integrate easily so that customers have a choice about the platform that most directly addresses their business needs. Windows Azure is a cloud services operating system that enables customers to create scalable and available web applications; While Windows Server addresses the on-premises and hosting market. Going forward, Windows Azure and Windows Server will share innovations bilaterally.

    Is Windows Azure actually “Windows Server 8?”
    No. Windows Azure is not the same as Windows Server. They are separate Microsoft platforms. Microsoft will continue to invest heavily, to innovate and to ship new versions of Windows Server. Windows Azure is a cloud services operating system that reduces the barriers to creating scalable and available web applications. The availability of Windows Azure and Windows Server provides flexibility and choice for customers to build on the Microsoft platform for either their on-premise or cloud applications.
    What if a customer wants to use both Windows Server and Azure services for an application? Is that possible?
    Yes. Although separate platforms, we have explicitly designed them to so that customers can choose the platform that most directly addresses their application and business needs.

    Can applications that are certified for Windows Server run on Windows Azure?
    Applications certified for Windows Server will not run on Windows Azure unless the ISV or developer ports the code. We have worked hard to ensure that applications built on .NET and some unmanaged code applications can be ported to Windows Azure. We will continue to evaluate this process based on beta testing feedback.

    What is the difference between Windows Azure Storage Service and SDS?
    Windows Azure Storage Service is designed to be the lowest cost, most efficient solution for large scale data storage and retrieval in the cloud. It can store blobs, queues, and simple tables (non-relational). SQL Services is designed to bring the power of relational databases into the cloud and will provide rich querying over tables.

    Can I use Windows Azure alone, or must I sign for the Azure Services Platform too?
    Developers have the ability to sign-up for the compute, storage, and hosting services provided by Windows Azure without signing up for other Azure Services Platform services.

    Which types of support services will Windows Azure offer?
    Developers have access to a suite of readiness resources including Prescriptive Architecture Guidance, virtual hands-on labs, webcasts, and documentation. And support during the CTP period is provided through developer-to-developer blogs and forums.

    Is Windows Azure cross platform?
    Windows Azure supports popular standards and protocols including SOAP, REST, and XML. Windows Azure is an open platform that will support both Microsoft and non-Microsoft languages and environments. Windows Azure welcomes third party tools and languages such as Eclipse, Ruby, PHP, and Python.
    US-TECHNOLOGY-MICROSOFT PDC 2008
    What makes it easy for developers to write code in Windows Azure if they want to use non-Microsoft technology?
    To build applications and services on Windows Azure, Developers can use their existing Microsoft Visual Studio® 2008 expertise. Windows Azure supports standards and protocols including SOAP, REST, and XML. This enables developers to integrate applications with Windows Azure, whether you use Microsoft or non-Microsoft tools and technologies.

    How developers can retain a sense of control over how their programs are run on Windows Azure?
    The built-in management services in Windows Azure provide developers control and visibility to stay focused on what they do best - create and deliver killer applications online. Developers can specify the performance level and parameters of their applications in Windows Azure.

    How can developers maintain visibility into Windows Azure computer and storage processes? Can this be done remotely?
    Advanced tracing and logging functionality exposed in the Windows Azure portal allows developers to monitor compute, storage, and bandwidth. This enables developers to ensure performance while paying only for resources that their application consumes.

    PDF to Word - Word to PDF

    May 27th, 2009 by Mark Whitehead

    I came across some great online tools for anyone in the IT industry the other day.

    If you need your Word Documents converted quickly into PDF’s or Vice Versa; here’s a great little tool for just that:
    PDFOnline.com - Check it out!

    How much does the media and government effect our business confidence?

    May 27th, 2009 by Andrew Ellett

    Have you noticed the GFC? And I don’t mean the Geelong Football Club (go Hawks!).

    From a business perspective Revium has not been negatively impacted in terms of profitability. However, we have certainly noticed both large and small clients pulling budgets, delaying projects and managing finances a little closer. However, where one client may pull back, another client or opportunity will arise.

    Even our large clients may stop some projects, but start others. So across the board, we are not effected by the Global Financial Crisis here at Revium in terms of our sales figures.

    In fact, if it wasn’t for the media hype, stock market decline and Government rebates, I don’t think I’d even notice the GFC.

    So I was very pleased to read that in a worldwide survey Australia is the best place in the world to weather the financial storm.

    I love this article! It gives us Australian’s hope and optimism. Something every business owner needs to have. By nature I’m an optimist, and the more people who realise that our economy is strong and healthy, the sooner we’ll all be out of this storm. I see the current economic climate as an opportunity. As Warren Buffet says, be fearful when others are greedy and greedy when others are fearful. Now is a time for businesses to attract new clients when companies are shopping around looking for a better price and service.

    I’m quite sure Revium will emerge from the 08-09 GFC stronger than ever! I hope you will too.

    Take care, Andrew Ellett

    Managing Partner

    “Pessimistic media reports were the No. 1 concern of Australian businesses. More than 25 per cent of Australian business people also said they were worried about the way the Government responded to the crisis.” - The Age, May 27, 2009

    New Products Launch and Redesign of Simply Energy website

    May 22nd, 2009 by Liani Liebenberg

    Over the last few weeks the team has been busy with the re-design of the current Simply Energy website to accommodate the launch of a new range of electricity and gas offers to be made available to the public on the 25th of May 2009. The project involved working closely with the Operations, Legal and Marketing teams from Simply Energy as well as a dedicated team from Clemenger who handled most of the design aspects for the website.

    The redesign was initiated by the Simply Energy Marketing team and the campaign is aimed at driving more visitors to the site to ultimately result in more supply contracts for Simply Energy. Various SEO techniques have been deployed to further this cause and the sign-up process has been compressed into a 3 step process to simplify sign-ups for the website visitor.

    Some of the old products have been updated and replaced with what Simply Energy call “Smart Deals”, “Green Deals” and “Very Green Deals”. These products vary slightly across Victoria and South Australia and Revium had to revisit the functionality to accommodate price calculations based on state and other factors. There were considerable pricing table updates and a revamp of welcome letters and online contract confirmations which is sent to customers as pdf’s at the completion of the signup process.

    From a project management point of view it was a considerable effort which needed extensive resources from our team. Post development, thorough testing had to be performed and issues detected had to be monitored, prioritised, resolved and implemented to the staging environment following our release management process. We had to work closely with both Clemenger and Simply Energy to ensure we deliver a project we could be proud of and ultimately satisfied the client needs.

    We are in the process of tying up the last few outstanding issues in preparation for launch on Monday. Like with all projects we did encounter a few problems on the way (incorrect SSL certificate being one!) but we are currently on track to deploy to production within the timeframes requested by Simply Energy.

    www.simplyenergy.com.au

    Web Marketing Presentation at Sothertons Accountants

    May 20th, 2009 by David Mclaughlin

    On Tuesday 19/5, David McLaughlin gave an informative talk at Sothertans Chartered Accountants on the topic of Search Engine Optimisation (SEO), Paid Advertising (SEM), Website Optimisation, Google tools, analytics and more. The talk was well recieved by the attendees and generated some interesting topics of conversation. David posts regular blogs on SEO and other marketing related topic in Revium blog section. If you’re interested in having David or any other Revium staff talk at your next event on anything relating to the web, feel free to give us a call.

    ACS Conference - Greening ICT

    May 18th, 2009 by John McRae

    Greening ICT was the theme of the Australian Computer Society’s annual conference last weekend.  It’s clear the global warming is here to stay and ICT can help.

    Internally ICT contributes about 2% of the green house gases and this can be reduced with better processors, power management, virtualisation and full product lifecycle costing.

    Externally ICT has a role in helping other businesses run “greener” sites and applications (e.g. cloud computing, carbon trading, video conferencing).  It is estimated that ICT will provide over 90% of improvements by helping other businesses.

    SEO: Understanding the basics

    May 17th, 2009 by David Mclaughlin

    Overview

    Traditionally “outbound” marketing techniques have been used to push marketing messages to the consumer (i.e Trade shows, print advertising, radio, TV ads, direct mail). Nowadays these outbound marketing techniques are becoming less attractive because:

    • People are getting better at blocking “interruption based” messages (i.e. caller ID, Spam filters etc)
    • The internet provides a “quick and easy” 
way for consumers to learn and shop

    Businesses need to utilise “inbound” marketing techniques to “get found” by the consumers searching for their products and service
    Inbound marketing includes techniques such as Search Engine Optimisation (SEO), Search Engine Marketing, Blogging etc

    The following entry outlines a high level approach by which businesses can be found in search engines, primarily through Search Engine Optimisation (SEO).

    Question: What is the easiest way to get found online? Answer: Search Engines

    • Search engines comprise of two kinds of search results:
      1. Paid listings - require a fee to display a link alongside the results of a keyword search. Known as Pay per Click Advertising (PPC)
      2. Organic listings - results gathered by a search engines “crawlers” and ranked according to relevance for a key term.
    • Businesses should understand that organic results are clicked 75% of the time.

    SEO - Improving the organic results

    SEO is the process of improving a web sites “natural” ranking in the search engine results page. Rankings are based on relevance to the search terms and the relevance is calculated via complex algorithms defined by major search providers (i.e Google, Yahoo, Windows Live)

    SEO - How’s it work

    • Rankings based on two key components:
      • On page factors (i.e. content on the website)
      • Off page factors (i.e. inbound links)
    • Off‐page factors are the biggest influencers in a website’s ranking in search engine results.
    • Algorithms are constantly changing, so marketers need to continually work to keep their sites ahead of the competition

    “On page” SEO

    • Title Tag optimization
    • Keywords in the content
    • Quality of original content
    • Keywords in hyperlinks
    • Keywords in headings and bold tags
    • Keywords in domain / URL
    • META information
    • Sitemap
    • “Indexability” of the web page

    “Off Page” SEO

    • Amount of incoming links
    • Quality of incoming sites that link to yours
      • Google Page Rank (PR) is important - having links with a high page rank will drastically help.
    • Relevancy of sites that link to yours
    • Keywords in the link anchor text

    Simple ways to increase your site’s search engine rankings

    • Find keywords (Keyword Research)
      • Find keywords / phrases that have a large number of searches
      • Wordtracker.com, keyworddiscovery.com, Google Keyword tool, Overture (Yahoo)
      • Relevance - Choose keywords that your target market are using to describe your products (e.g. cheap hotels, not budget accommodation)
      • Identify the competition and how hard it would be to beat them
    • On page - SEO
      • Add keywords to your page title, URL, headings and page content
      • Place keywords in hidden areas on the website (META information, behind images, footer links etc)
      • Develop website content
      • Add a blog / news section - Google loves sites that are updated regularly
    • Off page SEO
      • Build in-bound link from other sites to yours. Each link proves your site is worth linking to.
      • Build more links within context - Obtain links from other website with keywords in the link text (Anchor Text)
      • Submit your website to directories like like the DMOZ, yahoo! Directory and Business.com
      • Create compelling tools / features on your website that people want to link to.
    • Measure & Analyse (Most important!)
      • Track incoming links over time and keyword rank compared to competition
      • Track real business results: Number of visitors, leads and customers from SEO

    Be wary of…

    • Individuals or firms that promise you a number one listing.  This is almost impossible to guarantee!
    • Those that promise are possibly not telling the truth, or practicing “black-hat” SEO techniques.
    • You risk having your website black listed from search engines!