Mirroring states over internet?

Hi there, I'm new to this forum. I have some experience in programming and even microcontrollers (stamps) but Arduinos are new territory for me and I'm trying to figure out how this project might work.

The project in a nutshell is two arduinos that each control the on/off states of identical arrays of loads- mostly little lights. They each go to different homes that have wifi. They would need to jump on the network and establish communication with one another. Then, users in either home should be able to, for instance, turn a light on or off- and the corresponding light in the other home would switch to the same state. Either user can turn anything on or off and the goal is to have these arrays of light mirror one another. Does that make sense? Are the challenges here reasonable?
Thanks in advance for any replies.

Rapsberry Pi.

Learn how to make it a VPN server.
Learn how to "secure" it a little...

Learn some python and get python talking to a mySQL database.

Learn some python and get python talking to a mySQL database.

What in the hell do you think you need a SQL database for?

OP: What you need is for each Arduino to be both a client and a server. In the client role, the Arduino tells the (other) server what changes it has made, so that server can make the same changes. In the server role, the Arduino responds to changes that the (other) client has made.

Thanks for the responses. I'll give it a shot, then.

They would need to jump on the network and establish communication with one another.

Many wireless routers may have security issues with a device trying "to jump on the network" unless the router accepts anonymous connections.

I rather like @Johhny010's Reply #1.

This is certainly a project that I would first simulate on a PC at each end simply because web programming is so much easier on a PC. If you know how to get that bi-directional functionality working on a pair of PCs you would then be able to consider how to transfer the concept to an Arduino.

If I was doing it on a PC I would be inclined to run a small server on one of the PCs and then run a client on each PC that communicates with the server. That would seem to get around any problems of "jumping on the network".

It should be possible to develop a Python program on a PC and then transfer it unchanged to a Yun.

...R

Well, I guess I was being glib when I said "jumping on a network". In cases where authentication is required, is it possible to configure an arduino without being connected to a PC?

Queequeg:
is it possible to configure an arduino without being connected to a PC?

You need to explain that in a lot more detail if you want a useful answer. It has to be connected to something? Why not a PC? Or are you thinking of toggle switches?

Because your Reply #6 was so brief it is impossible to know whether you read all the advice so far or what you thought of any of it. A more comprehensive reply will help people to help you.

...R

Sorry I wasn't clear. I meant network configuration. I'm trying to figure out what authenticating the arduino on a network would require. I'm leaning toward a Rasp Pi approach just because that is more familiar territory form me, But the arduino would be cheaper. I'm sure someone could make it work.

Queequeg:
I'm sure someone could make it work.

What did you think of the suggestions I have already made?

I am not going to make more suggestions if they are not wanted.

...R

Queequeg:
Sorry I wasn't clear. I meant network configuration. I'm trying to figure out what authenticating the arduino on a network would require. I'm leaning toward a Rasp Pi approach just because that is more familiar territory form me, But the arduino would be cheaper. I'm sure someone could make it work.

An RPi is like £20 here in the UK:

Rpi on Amazon

An Uno + Ethernet Shield = about £5 less...

For the £5, having the RPi (which uses about 700mA...which is not a huge amount more than the Arduino Uno + shield) with python, VNC servers, VPN server, mySQL server, FTP Servers and Webcams blah blah blah...much more user friendly imho for internet work.