What is Sikuli? Is a test automation tool which uses image recognition algorithms to identify GUI elements. It provides it's own IDE as well as libraries to be used e.g. in any Java project.
Today I’d like You to try Python for Your functional Web tests. Why Python? Because I believe it’s much easier to start with if we’ll compare with Java or .Net and also in several cases Python (because it’s scripting language) can do much more things than even Java (with all cross platform functionality itself).
Actually today in internet we can find hundreds sources about setting up project in Eclipse vs Java vs WebDriver vs TestNG and I bet this one won’t be pretty original but I’ll try to place it all together one more time.