Problems sending mails to AOL and similar

AOL, the wonderful company that they are, require any mail to be sent to them to be from a server with a valid reverse DNS lookup (ptr) record. If you’re finding emails bouncing back from AOL (and some others) make sure your mail server’s domain name server has an an appropriate ptr record setup.

This is actually a fairly resonable anti-spam measure, however try finding out from AOL that’s the problem isn’t so reasonable. Anyway posting this as we’ve had this issue a couple of times and would make for a good reference.

To check you have an appropriate reverse dns setup, goto www.dnsstuff.com and enter the IP of your mailserver into the 2nd field in the middle. at the bottom if you’re okay it should say:
Answer:

83.98.149.130 PTR record: mail.moov2.com. [TTL 172800s] [A=83.98.149.130]

if not you’ll get some message saying no reverse lookup or similar.

Back to Basics: Object Oriented Programming for Procedural Developers

I have recently had re-emphasised one of my first lessons in learning OOP (Object Orientated Programming). If coming from a procedural background:

“Forget 95% of what you already know”

The majority (if not all) of the developer-geek type people I have met all originally learnt procedural programming. Also the majority, at some point, thought of OOP as “the next step” or an extension of their existing skillset. I am confident that because of this perspective the learning process is shrouded by preconceptions of how things should be and makes for a frustrating and confusing time. Which I would also apportion to the number of people who have attempted and retracted from OOP (myself originally included). Also going from a proficient developer in procedural to newbie can also quickly take its toll on the appeal of OOP.

I have recently been working on an application that was developed in VB.Net but in a procedural style. Whilst this system performs well and is stable, it is a pain in the ass to maintain and extend which are the real benefits of OOP (not so much code re-use as is promoted by many as the main advantage who are perhaps more academically aware than real world experienced). This is what prompted me to write this post for anyone tempted to try learning OOP, leave procedural at the door for now, not that existing knowledge will be redundant but until you get to grips, plead ignorance.

This concept has been suggested by others and more thoroughly investigated, I firmly agree and would enforce that OOP IS NOT Procedural coding, nor an extension of, or a step above.

New Tutorial – Introduction to Flash Remoting with Fluorine

I’ve just written up my first tutorial on using Fluorine, the open source Flash remoting solution for the .net platform. Have a read and leave any feedback in the comments here.

Introduction to Flash Remoting with Fluorine

Introduction to Flash Remoting with Fluorine

Fluorine is an excellent open source project for .net developers as an alternative to Adobe’s commercial remoting tool. I have noticed there isn’t too much documentation out there for .net users wishing to get into remoting as opposed to the php offering amfphp so thought i’d contribute.

What is Fluorine?
Fluorine is an open source solution for achieving remoting on the .net platform created by Zoltan Csibi. More info at http://fluorine.thesilentgroup.com. There is the download, a mailing list and some useful documentation. Another resource that I hope to be adding to over the coming weeks is at osflash

Installing the remoting components
If you’ve never developed for flash remoting in the past you’ll need to install the Flash Remoting components, these don’t come installed as standard in either the standard or pro versions of Flash mx2004 or Flash8. you can download the components here: http://www.adobe.com/products/flashremoting/downloads/components/ which should be a simple case of double click installation. Included in these components are the following:
NetConnection Debugger – very useful swf that displays requests between application and server
Service Browser – another swf used for browsing available remoting services and methods that are available
Remoting help files – F1 to view
Remoting libraries – within the flash IDE click Window, Other Panels, Common Libraries, Remoting. Within this library are two compiled clips that need to be in the library of any remoting movie.

Installing Fluorine
Installing Fluorine is very easy. Simply download the latest version from fluorine.thesilentgroup.com and extract it to your usual visual studio projects folder. That’s it!

Hello World
Now an introduction tutorial wouldn’t be an introduction tutorial without a hello world example would it? Within Visual Studio create new c# web application and call it “FluorineTest”
Right click the project in the solution explorer and select “add reference”
in the .net tab click browse and navigate to [downloadedFluorineFolder]\com.TheSilentGroup.Fluorine\bin\Debug\com.TheSilentGroup.Fluorine.dll and OK back.
Next add the following lines to web.config within the <system.web> tags:

[html]


[/html]
Add a new class to the project and call it “HelloWorld”, copy and paste the following code:

[csharp]using System;

namespace FluorineTest
{
///


/// Summary description for HelloWorld.
///

public class HelloWorld
{
public HelloWorld()
{
//Constructor – does nothing
}

public string serverFunction(string sMessage)
{
return “our server received and returned: ” + sMessage;
}
}
}[/csharp]

Add new blank webform to project and call it “Gateway.aspx”
Thats our service created, we can now build the project!

Now for our flash application create a new flash document
Go into Window, Other Panels, Common Libraries, Remoting and drag RemotingClasses and RemotingDebugClasses onto the stage.
Next copy and paste the following code on the first frame of the movie:

[as]import mx.remoting.*;
import mx.rpc.*;
import mx.remoting.debug.NetDebug;

NetDebug.initialize();
var _service:Service = new Service(“http://localhost/FluorineTest/Gateway.aspx”, null, ‘FluorineTest.HelloWorld’, null , null);
var pc:PendingCall = _service.serverFunction(“Hello World!”);
pc.responder = new RelayResponder(this, “handleResult”, “handleError”);

function handleResult(re:ResultEvent)
{
trace(‘The result is: ‘ + re.result);
}

function handleError(fe:FaultEvent)
{
trace(‘There has been an error’);
}[/as]

Now run the movie and that should be it! Post any problems to the comments on the Fluorine tutorial blog entry and i’ll try help as best I can. Alternatively sign up the the mailing list.

Tutorials

Here I intend to build a collection of useful tutorials across a range of technologies

1 – Introduction to Flash Remoting with Fluorine
2 – Free Flex 2 Development Environment

InstallAnywhere “please select another location to extract the installer to”

Adobe’s preferred windows installer seems to be InstallAnywhere, I was just trying to install the remoting components and got the error:
“Please select another location to extract the installer to”
There was plenty of disk space and I had full admin privileges, turned out to be CA etrust antivirus i was running, disabled that and it installed fine.

Didn’t find much on Google so thought i’d post it here.

Flex 2 AND Flash Professional 9 Actionscript 3.0 preview available

Adobe have recently announced the official launch of Flex 2 which has had alot of press since launching pre-release versions on labs over the past few months.

Also a preview version of Flash Professional 9 Actionscript 3.0 is avialable for download on labs.

Both of these tools will run on the newly released Flash Player 9.

Contracts by Email

I’m pretty sure that almost any business or freelancer/contractor has wondered about the validity of Email contracts and personal guarentees. This article on the IoD site summarises a recent case.

In this case, an email containing the offer of a personal guarantee of £25,000 was sent by the director of one company to another company that was seeking to wind it up over unpaid debts; when the other company tried to enforce the personal guarantee, the High Court judge ruled that there was no ’signature’, as required by the legislation relating to personal guarantees, despite the presence of the sender’s email address in the header of the email. However, the judge confirmed that, if someone with the requisite authority had typed his name or initials in the body of the email, that would have been sufficient to make the offer enforceable.

Worth bearing in mind as reliance on Email is so prevalent in today’s business dealings.

NOTE: this is related to UK law.

Hello world! pt2

I originally set up this site on my laptop whilst I was setting up a server to host it on. As a result of which all of the previous posts were all viewable to the massive audience of me, myself and I.

However I have now got everything setup and hosted as desired and am now posting out to the world wide web. I will be mainly posting my thoughts and findings from my business, the world of web development, specifically the Flash Platform and Open Source Flash along with general ramblings on any other technology I’m getting my teeth into.

Enjoy :D

Xgl – Linux just got beautiful!

I happened across a technology known as Xgl in my new exploration of the world of Linux. First thoughts were along the lines of “sounds nice, but whats the use?” when reading about 3D desktops and transparent windows.

However, I then watched a video by Novell and thought “Looks REALLY cool, i’ll have a play and figure the point out later”.image 3D desktop with Xgl

Installed xgl and compiz (a window manager for xgl) with ease (go Yast2!) and am a big fan of the results. Basically I get some snazzy windows effects (jelly-like, edge-snapping, transparency etc) which are nice to look at but arguably not any real use, maybe transparency but thats about it. I get real time screen switching (think alt+tab in windows but instead of icons real time thumbs of each app). But the 3D desktop is really cool.

A 3D desktop is just that a desktop in 3D, you can set how many faces it has, default is four which i have found to be plenty. Basically just use it as normal but acres more desktop space. I first expected it to be difficult to navigate and manage where each window is but this isn’t the case. The taskbar offers quick access to any window, you can zoom out to see all desktops stretched across one screen, theres even a shortcut to display all windows in one view for you to select the required one.

My only issue so far with this has been there is a setting to have random water drops which ripple across the screen, having played about with this I found it takes a fair amount of work for my old desktop to run so tried disabling it. No go! I’ve tried the shortcut (Shift F9), the window properties dialogue but it refuses to stop. I’ve resorted to setting the frequency to very low but I still get a drop every 10 minutes which is annoying. I’ve been referred to the config files which I will give a try next.

Overall though I’m a big fan of Xgl and hope it brings some more end-user attention to the Linux desktop.

Copyright © 2010 Danny-T.co.uk

CSS Template By RamblingSoul | WordPress Theme by Theme Lab and Best Hosting.