Spammers learn new tricks…

I’ve recently posted a rant about spam and today, I’m going to add another one. This one about a spammers trick that might fool a lot of people. Especially those people who don’t use a good spam filter. And I’m doing this because it might have fooled me, if there weren’t two flaws with it. First of all, it ended up in my spam folder, which suggests that something is wrong. Second of all, it was sent to the wrong email address.

First, let’s take a look at the spam itself:

What the spam looks like

Well, it looks good enough. LinkedIn does send these kinds of emails on a regular basis. I get plenty of those on my real LinkedIn account. But as I said, I received this one in my spam filter and on the wrong account. So, let’s look at the email a bit more, starting with the headers…

Delivered-To: address@example.com
Received: by 10.14.174.6 with SMTP id w6csp66709eel;
        Wed, 29 Aug 2012 08:00:37 -0700 (PDT)
Received: by 10.60.11.34 with SMTP id n2mr645244oeb.18.1346252436700;
        Wed, 29 Aug 2012 08:00:36 -0700 (PDT)
Return-Path: <heemali@snmz227.leaseweb.com>
Received: from SNMZ227.leaseweb.com ([82.192.78.107])
        by mx.google.com with SMTP id zm6si23150147obb.199.2012.08.29.08.00.35;
        Wed, 29 Aug 2012 08:00:36 -0700 (PDT)
Received-SPF: neutral (google.com: 82.192.78.107 is neither permitted nor denied by best guess record for domain of heemali@snmz227.leaseweb.com) client-ip=82.192.78.107;
Authentication-Results: mx.google.com; spf=neutral (google.com: 82.192.78.107 is neither permitted nor denied by best guess record for domain of heemali@snmz227.leaseweb.com) smtp.mail=heemali@snmz227.leaseweb.com
Date: Wed, 29 Aug 2012 11:00:36 +0000 (UTC)
From: LinkedIn Reminders <reminders-noreply@noreply-linkedin.com>
To: address@example.com
Message-ID: <52203955.7448783.1913884201422.JavaMail.app@ela4-app2581.prod> Subject: There are a total of 1 messages awaiting your response MIME-Version: 1.0 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 7bit

I’ve replaced my address with address@example.com, a dummy address. But if I look at these headers I noticed that it’s sent from a leaseweb.com mail account, and not from LinkedIn itself. Leaseweb is a hosting provider with a bad reputation as being one of the worst hosts since they seem to host a lot of malware on their sites. So was the Bredolab botnet hosted on Leaseweb servers. Leaseweb also hosted part of MegaUpload. But Leaseweb is just one of the biggest hosts in Europe so it’s no surprise that you can find lots of malware there. Such sites are always a small percentage of sites for any host.

But why would LinkedIn use Leaseweb? Well, they would not! This is just another sign that this is a real spammer. But let’s look a bit further, which is the HTML code behind this email:

The source code behind the spam.

This shows the true intentions of this spam. The spammer wants to fool to visit some specific site. The site itself has nothing to do with the spam, except for the site has been hacked without the site owner knowing this. But it’s not a malware URL but a redirection to a Canadian pharmacy website. They want to sell Viagra and Cialis to the unsuspecting visitor. (Oh, dear! Those two words will most likely put this post in each and every spam filter!)

Well, not all spammers will send their victims to malware sites. In this case, they just want to get more visitors to buy little blue pills. They prefer to target American visitors since the sale of these pills are more limited in the USA than in Canada. In Europe, unknown to most, you can just buy similar products at the local pharmacy. That is, if you need them.

Anyways, the URL has the word “stupid” which tells us how the spammer thinks about those who are fooled by this. Well, I wasn’t fooled but instead I investigated it a bit and contacted the site where the redirect was hosted. I’ve warned them about this URL on their domain and I expect it to be gone within a few days. If not, they might be held responsible for this spam, and for the (illegal?) sale of these types of drugs. Since they are a clinic of some sorts, it could cost them their license if they don’t take additional steps against this.

But for now, let’s wait on their response on this post, and on my warning…

Fighting spam

Spam is annoying us all and many people are looking for a solution that will reduce the amount of spam in their mailbox. Plenty of solutions exist, but I myself chose a very simple solution that will allow me to “name & shame” those companies that leak my email address to those spammers. And my solution also comes with a nice spam filter too, although it’s not free. I pay about 60 Euro’s per year for my solution, which is reasonable simple, provides me with web mail and a good spam filter plus nice, additional features that are very practical.

It starts by registering a domain name. In my case, it’s wimtenbrink.nl but for this discussion I will use the name example.com since this is a special domain name reserved for these kinds of examples. Registering a domain name costs between 5 Euro’s and 20 Euro’s, depending on your registrar. Since I live in the Netherlands, I chose VIP Internet to register this domain, since they provide me some easy options to set up my domain, allowing me to adjust several settings and changes I do to my domain name there are handled quite fast. Unfortunately, they’re also a bit expensive (EUR 19,95 per year) but they offer a good quality.

Next, I’ve purchased a Google Apps for Business account for my domain name. This is free for individuals and small teams but I decided to buy the more expensive package which costs US $ 50 per year per user. With just one user, this costs me $ 50 per year. And it removes the advertisements in my mailbox. Plus, my mailbox is 25 GB in size instead of the standard 10 GB for individuals.

Next, the technical part. You’ll need to connect your domain to your Google Apps account. This will require some knowledge and experience with the Domain Name Service of the internet, or short: DNS. Using the tools provided by your registrar you will have to set up Google Apps as your mailbox. This probably means that you will have to remove a few DNS entries and add a few new ones. This isn’t very complex but if you mess it up, your domain cannot be reached anymore. So, be careful, try to get some basic knowledge about DNS first. (Although you can always fix problems later.)

You can also connect more things from Google to your domain name. You could, for example, generate special URLs on your domain name that will point to your Google Calendar or your Google Drive. And Google provides plenty of other practical tools that you can use and connect to your domain, including the hosting of a few simple webpages.

Once you’ve connected both, you will have your own, personal domain name with a single email address. Let’s say you’ve registered example.com and your new address is admin@example.com. Your Google Apps account will provide you with a web mail interface that is very similar to GMail itself. But without the advertisements for me. But Google Apps will allow you do even more, like creating multiple aliases for your email address. In my case, I could create the alias wim@example.com and use that as a mail address that I share with friends and family. For companies, I generally create an alias on the fly starting with the name of the company and ending with my domain name. Thus, if I provide Microsoft with an email address of mine, that would be microsoft@example.com.

And yes, creating email aliases on the fly is simple. Someone asks for an address, I just think of some random code to put in front of the @ sign and then append my domain name. It does require me to do one more thing, though. I need to set Google Apps up to use my admin@example.com address as a catch-all for all incoming email addresses on my domain name. Once I’ve done this, it doesn’t matter what’s in front of the @ because anything will be sent to this single email address.

But how does this stop spammers? Well, it doesn’t stop them but it tells me where the spammer retrieved my email address. For example, my email address for LinkedIn was something like linkedin@example.com. However, earlier this year LinkedIn was the victim of a hacker who managed to collect a whole database from their user database, including a lot of email addresses. One of those addresses was mine. And when I noticed that I started to receive spam at linkedin@example.com I immediately realized that LinkedIn had a huge problem with their security. It gave me a very early warning and told me who was responsible for leaking my email address.

There have been more companies who have leaked my email address to spammers, but because those email addresses tell me which company leaked my email address, I can just change my address for that company to e.g. linkedin-2@example.com and create a filter in my Google Apps account which will just drop anything that is sent to the old email address. Thus, the spam is gone but my contact with the company is still available.

I still receive about 10 spam messages every day but the Google spam filters are excellent in recognizing them, although they do have the occasional “false positive”. Checking my spam filter is therefore still important. But those addresses that are ‘contaminated’ by spammers are just filtered away, thus keeping my mailbox very clean. Only drawback is that some spammers realize that my domain has a catch-all mail account and thus they make up random names to get past the filters that I’ve set up, only to be caught by the Google spam filter.

As I said, Google Apps is also available in a free version and registering domain names can be done a bit less expensive. Finding a good domain name to use for this purpose is a bit more complex though, and I was lucky that my name was still available for me. Other people who happen to share my name will have to look for something different. I’m just paying more because of some additional bonuses provided by my registrar and by Google, which I use a lot.

The OV shitcard – pardon my french…

As everyone in the Netherlands already knows, you need an OV chip-card if you want to use any of the public transit options in the Netherlands. And while you can buy an “anonymous” chip-card in the shop, most people who need to travel daily will just register one in their own name. However, most people don’t realize that by registering the chip-card, they also give up on some of their privacy. Because even though public transit organisations officially tell everyone that they won’t abuse the data collected by these chip-cards, the reality is different as explained by this (dutch) article

The NS (Dutch Railways) has used data collected from these chip-cards to track trips made by their customers to use this for marketing purposes. By doing so, the NS violated the trust of their customers. To make matters worse, even those who used the anonymous cards weren’t completely safe since they often had to provide their email address to activate the chip-card before they could use it.

For me, this is just one more reason to stay away from the public transit in the Netherlands. I value my privacy and my car is often more comfortable than the train. Besides, it’s even faster for me to use the car than to use the train if I want to go to my work, even if there are some severe traffic jams.

Sure, the NS has promised they will destroy the data they’ve collected so far and will stop collecting this information in the future, but do you trust them? They’ve made this promise before, when the chip-card was introduced. And it also makes you wonder what data they will continue to collect and makes you wonder what data other transport organisations are collecting about your travels…

Maybe it’s just time to reorganize public transit in the Netherlands completely. First of all, make it free so everyone can make use of it. The costs could be paid from taxes and sponsors. I bet some companies will be pleased to pay for a bus stop near their front door so employees and customers can easily reach their shops or services. I also think some costs could be earned by having advertisements in the train, bus and subway including spoken advertisements on the build-in intercom. This too would provide more income. And of course, cities who want to support public transit within their boundaries could also pay part of the costs. Quality would improve and there would be no need to keep track of customers.

Besides, free public transit would encourage a lot of people to get out of their cars since it much less expensive. Employers would have no need to compensate their employees for their daily travels since travel would be free. A car would then be more luxury than requirement. Question is, which political party would even dare to make this part of their campaign?

Stupid spammers…

For some time now, I am receiving about 5 spam messages per day for some weird job offerings that could earn me 22 to 65 Euro’s per day. And all I have to do for this “job” is to answer questions from some health clinic and answer some easy questions. They’d like me to do this about 2 to 12 hours per day and all I have to do to join is send them the following information: name, phone number, age and the city where I live.

Of course, this is spam and most people would just ignore such things but I started to investigate a bit. The sender always seem to be a different person but the domain it originates from is careersholland.com. However, the DNS information for this site is gone which means that you cannot reply anymore. The domain is gone, but the spammer just continues to send these messages.

There is another site, however, that happens to be legitimate and whose domain name looks closely to this spammer. They’ve posted this article to their site to warn people about these spammers. That’s because this is a phishing attack, where the spammer is trying to collect as much information about you for their own criminal intentions. These criminals are looking for “Money mules” and for this they need as much personal information as they can collect from you. Be aware that if you respond to such an email then you can become part of some criminal activities and it will be hard to prove your innocence. And yes, these spammers might even actually pay you for your “services” but in the end, it will cost you a lot more than you’ll earn from this. Worse, if it can be proven that you’re willingly participated to this scheme, you could even end up doing time in jail in the Netherlands, although that would still be very unlikely. It’s more likely that you’ll end up with a huge debt which you’ll have to pay for a very long time.

One of the original spam messages looks like this, and I’ve removed my personal information from it. It’s in Dutch, though. It is targetting Dutch people, mostly.

Delivered-To: helpdesk@example.com
Received: by 10.50.42.196 with SMTP id q4csp8656igl;
        Mon, 27 Aug 2012 23:10:28 -0700 (PDT)
Received: by 10.14.223.9 with SMTP id u9mr5532200eep.10.1346134228048;
        Mon, 27 Aug 2012 23:10:28 -0700 (PDT)
Return-Path: <neuralgiag5@realliving.com>
Received: from [190.43.101.99] ([190.43.101.99])
        by mx.google.com with ESMTP id e9si13429791eep.46.2012.08.27.23.10.23;
        Mon, 27 Aug 2012 23:10:27 -0700 (PDT)
Received-SPF: pass (google.com: domain of neuralgiag5@realliving.com designates 190.43.101.99 as permitted sender) client-ip=190.43.101.99;
Authentication-Results: mx.google.com; spf=pass (google.com: domain of neuralgiag5@realliving.com designates 190.43.101.99 as permitted sender) smtp.mail=neuralgiag5@realliving.com
Received: from apache by qbqgghfhehsvvbsvwi.deltamar.net with local (Exim 4.67)
	(envelope-from <<helpdesk@example.com>>)
	id OWG4MX-L13X05-EZ
	for <helpdesk@example.com>; Tue, 28 Aug 2012 01:10:24 -0500
To: <helpdesk@example.com>
Subject: We nodigen u uit in uw vrije tijd te verdienen
X-PHP-Script: qbqgghfhehsvvbsvwi.deltamar.net/sendmail.php for 190.43.101.99
From: <helpdesk@example.com>
X-Sender: <helpdesk@example.com>
X-Mailer: PHP
X-Priority: 1
Content-Type: text/plain; charset="Windows-1252"
Message-Id: <ANP530-V0ONDJ-VW@qbqgghfhehsvvbsvwi.realliving.com>
Date: Tue, 28 Aug 2012 01:10:24 -0500

Beste dames en heren,

We beiden goedbetaalde baan aan: de website LEZER.

Uw functie:
Bezoeken van de website van een Gezondheidskliniek en daarna eenvoudige vragen te beantwoorden.

Bijvoorbeeld: was het gemakkelijk om een aanvraag te doet, is er niet te veel van de rode kleur,
is de tekst duidelijk op de aanvraagpagina.

We vragen dat om te bepalen of de website gemakkelijk is voor onze klanten.
Dit is zeer belangrijk want een eenvoudige website kan wist ervan 3-5 keer vermeerderen.
U kan dit doen in uw vrije tijd, ongeveer  van 2 tot 12 uur per week.

De prijs is van 25 tot 67 euro per uur, de vaste prijs wordt bepaald naar het interview.
De tewerkstellingperiode is van 3 tot 6 maanden, tijdens de Nederlandstalige website portaal ontwikkeling van de kliniek.
Indien u het goed doet zullen we u uitnodigen voor de andere gelijkaardige projecten.

De betaling gebeurt dagelijks of maandelijks per overschrijving op uw bankrekening van onze vennootschapsrekening.
U kan in uw vrije tijd verdien van 1512 tot 3612 euro per maand.
Als u het verschil kan zien tussen eenvoudige en ingewikkelde website, dan gaat u erin slagen.

Voor de aanvraag, stuur de volgende gegevens op:
1. Uw naam
2. Telefoon nummer
3. Leeftijd
4. Verblijfsstad

Aandacht! De gegevens moeten verstuurd worden op de volgende email:  Jaime@careersholland.com.

Aanvragen die op het andere email worden verstuurd kunnen niet behandeld worden
Zodra ik uw gegevens heb ontvangen neem ik contact met u op.

Met vriendelijke groeten,
Afdeling Personeelsaangelegenheden van “Geincorporeerde Gezondheidsinstellingen”

I need to blog more often.

The life of an ICT specialist like me is always busy, busy, busy. Even on my day off, I still have a lot to do. This morning, for example, I went to the dentist to have two fillings replaced. I still had two old amalgam fillings and these have been replaced by two nice, white ones. The rest of the day was reserved to take a long walk with my dogs but they’re not in real shape today. I think it’s too warm for them now so maybe another time. I still have a few other things to do too…

For example, I am working on two personal projects. One is related to me keeping score of my glucose levels. Yeah, I have diabetes but still don’t need insulin injections. I want to keep it that way so I need to keep an eye on my glucose levels. More moving, better eating will improve my health. But the bookkeeping requires a simple project which allows me to enter the results and it should generate reports and charts for informational purposes. And not just for me, but for generic usage. Right now, I’m still thinking about what the project should do exactly. Thinking about the complexity of it all. It should be able to keep track of multiple users and maybe it should also be usable by physicians to add patient accounts so they can keep track of their patients. Maybe it needs a Smartphone module, an Android module or even an iPad module so patients can use simple mobile devices. And perhaps an import/export module so patients can export their data in some format to have it imported in some other application. And of course a reporting module that preferably supports Word and PDF. And I have plenty of other ideas too. As I said, I’m busy.

And then the other project. That’s more a self-education project. I like to generate CGI artwork but after several years of creating art, I ended up with a large collection of homemade images. Combine this with my own photo’s from my digital camera’s and it’s just a lot of images. I need a better way to organize them, adding tags and publish them in some way. I already use Flickr for some of the more interesting images but I want to publish all of them. So I have an idea of a simple system that will store the images with additional tags, keywords, license information, some extracted EXIF information, a rating value, sign if it’s NSFW or not and much, much more. And I want two versions of this tool. One should be a browser app which would show up on any device and the other should be a Silverlight app which would mostly be supported on windows platforms, but which would give a much nicer user interface, thus a better user experience. And yes, this too keeps me very busy…

Of course, don’t forget that I still create CGI artwork. This too eats up a lot of time. But worse of all, it requires my computer to do the most work, churning numbers to render some data into a digital image. It’s a process that might take 5 minutes or 60 hours, depending on the complexity of the image…

Trade advise

When you have multiple cities, you can send resources from one city to another. Unfortunately, this always takes time, and time is also a valuable resource. Not all players can wait two hours for all resources to be moved from one city to another, especially if those cities are far away from each other.

In general, I prefer to have one merchant shop on each island that also has farms. All other cities on the same island will build other buildings instead, most often towers for protection. But I prefer to have one merchant city on any island that’s capable of generating a lot of resources. This city could then send a maximum of 22.500 resources instead of the regular 15.000 resources and is able to get even better exchange rates from the conquered farms, resulting in a bit more profit.

But a city that’s built to its maximum could contain up to 76.500 resources and it could also generate a lot more every hour, so when a city starts to fill up with resources and the city itself can’t exchange it with the farms or other players, or use it to create buildings, units or to discover new things, then those resources would be wasted, unless you sent them to other cities.

Now, let’s look at the following map, where city A is my merchant city and city B is a city that could use a lot of resources. The distance would be about 20 to 30 minutes but since I want to send 75.000 resources, it would take three or more trips to get it there. Thus, I need 90 minutes to move those resources. How to speed it up?

Move resources from A to B?

Fortunately, I have more cities on this island. A has 75.000 resources, B has none. C, D and E each have 15.000 resources but those will be needed for those cities themselves. The distance between A and C or D is about 10 minutes, between A and E 15 minutes and between A and B 30 minutes. C and D take 20 minutes to reach B and E takes 15 minutes to reach B. All cities have their marketplace at the highest level but A is also a merchant town.

I start by sending 11.250 resources from A to C and the same amount from A to D. At the same time, C, D and E will each send 15.000 resources to B.

After 10 minutes, C, D and E will still be waiting for their resources to reach B so I send 15.000 resources from A to E and an extra 3.750 to C and D for another total of 22.500 resources.

And 10 minutes later, the resources from C, D and E will have reached B for a total of 45.000 resources. C and D will each send another 7.500 resources but E is empty at this moment so it can’t send any. A will send 7.500 resources to C at this moment.

Then, 5 minutes later, E will receive 15.000 resources which it will send to B. A will send another 15.000 resources to E.

After another 5 minutes, A will be able to send 7.500 resources to D so it will.

I then have to wait another 10 minutes before the last 30.000 resources sent from C, D and E will reach B, and for D and E to get their resources back from A.

A transaction that would normally take two hours to complete has now been reduced to only 40 minutes. Not a bad improvement, right?

Conclusion

Using cities between your source and target to send resources could speed up trade considerably, especially if the cities in-between already have the resources that you want to send. Many players will send directly from A to B just because it’s simpler. It’s just four trade actions, while it took me 13 trades to move those resources. But what’s more important? Time? Or keeping the amounts of trades low?

It helps a lot if you trade often between cities, trying to send resources over the most optimal path. It takes some calculations but even if you don’t find the best path, using cities in-between will still save a considerable amount of time. And even if C, D and E had no resources to begin with, it would still have saved me a lot of time.

Players tend to forget how important trading can be. But to build armies and strengthen your cities you will need a lot of resources. Getting them in the right place as fast as you can is extremely important since it will speed up your development, especially if your time is limited. Trading can make you very strong, if you want to.

This example also shows how important it is to have multiple cities on a single island. Not only could those cities support each other with units but it also allows you to send a lot of resources from one place to another. And also notice that although A was capable to send more resources to B than the other cities, I’ve never sent resources directly from A to B. It’s not the ideal route. It would have even be more helpful if those cities were very close together so trade would just be a couple of minutes.

With even more cities between A and B I could have decided to use those other cities to speed up trade, sending from A to C, from C to D, from E to B instead. But finding the best path can be a bit of a challenge, requiring even more trade actions while saving a few more minutes.

My artwork

Not only do I like to write code and play some online games, I also like to create CGI images with Poser Pro and Vue. It’s not very difficult but you will need to have some inspiration to create something artistic. Just like you need some artistic skills while writing code.

CGI and software development have much in common. With both, you use special libraries and frameworks to speed things up. And with both, you never know at first what the outcome will finally look like. Fortunately, I can create a CGI image much faster than I can create a new software project.

In general, I start with Poser Pro and pick some models, add clothing, weapons and other props, adjusting the pose to show something I have in mind. Often a scantily-clad lady with a weapon being something other than a damsel in distress. Then again, the weapon and clothing tends to be optional, since images are much faster to create without those additional props. I’m not thinking about the background this early in the project, although I do keep track of items to be included in the Poser model that need to be shown in the background. OFten, these props are things for the model to stand on, so I can easily align them with the ground.

The next step is importing the model within Vue and deciding what a proper background for this model would look like. Water is always nice, since it adds additional reflections. Clouds or stars will add more interest to the sky. Mountains and large buildings can also be include in case I want to hide part of the sky. And of course the proper ground and vegetation is required.

So here is some of my artwork. Some of it is new, some of it is old. None of it is indecent, although your employer, teacher or parent might ask what you’re looking at when they look over your shoulder.

This slideshow requires JavaScript.

Grepolis hints and tips.

I only play in one world of Grepolis, yet I managed to get in the top-50 of this world. This is not a bad result and many people just wonder how I managed to do this. So, here is some information about the strategy I’ve used.

First of all, I have a premium account, which allows me to pay for the five advisors. These advisors are really important when you want to grow fast, since the administrator will allow you to start building more buildings. Time is important and it’s very practical when you can start building 7 buildings before you go to sleep, to notice they’ve all been build the next morning. Without the advisor, you’d only have two new buildings by now. The merchant just increases your resource production, allowing you to build sooner since you get the resources sooner. The high priestess is practical because she grants more favors, allowing you to throw spells more often. And some of those spells are very practical. The commander just makes your armies stronger in battle. And the captain makes your ships faster, allowing faster trade with other cities.

Next, make sure you start increasing your production as soon as possible, up to the maximum levels. If your timber camp, your quarry and your silver mine are at the maximum level of 40 then you will earn the maximum amount of resources, allowing you to build a lot faster. Time is the most important factor in this game. The sooner you can build something, the better. Additionally, bring your marketplace up to level 10 or higher so you can send your resources to your other cities or trade them with other players or local farms. And when your production increases, make sure your warehouse can contain it all.

Next, make sure that you build a new building every day in every city you have. This is a minimum requirement but also makes you grow faster. This building should be something like a city wall, temple or academy. (Or one of the special buildings.) Then, if you still have resources left, apply a method of opportunistic building, where you just build anything that can be afforded by the town. In general, the resource producing buildings tend to be cheapest thus you’d be building those most of the time. Once you cannot afford a new building, send the remaining resources to another city that could make good use of those resources.

Whenever you have one or more towns on an island with farms, make sure one of those gets a merchant shop. This town also needs it’s warehouse and marketplace at the maximum levels and will basically become your “bank” for this specific island. Other cities can send resources to this merchant town, which in turn will be sent to other towns, or traded with other players or the local farms. It also has a trade advantage with the Phoenician trader.

Next, attach and defense. In general, players who attack a lot of other players will make too many enemies, putting their own positions at risk. Attacking other players also costs a lot of resources and often isn’t very profitable. When the world is new and you need the resources then attacking inactive players will provide some additional resources. Sometimes, an inactive player has a nice town to conquer so go ahead and conquer it. But if you try to attack active players to conquer their towns, be aware that they will do everything possible to prevent this. And if they’re part of an alliance, that whole alliance might turn against you. So be careful in picking your fights.

And defense? There are two possible enemies. Those that share the same island as you, and those from other islands. If you have enemies on the same island then make sure your land units are strong enough to protect your cities. (And remember to use the militia when under attack!) A standard defense should have 100 swordsmen, 100 archers and 200 hoplites. Add some additional chariots or mythical units to this just to make them stronger. To protect against enemies overseas, add biremes to your harbor. And you will need a lot of them too. Just 50 biremes is not enough.

A better defense can be achieved by having your towns close together in groups. In this case, when one town is attacked, the other towns can send defensive units to strengthen the defense. Also try to eliminate any enemies on the islands you occupy, either by conquering them or by joining their alliance. Or at least befriend them. If there are no enemies on the same island then the attacker will need to get through your biremes first. They also need to add transport ships to their attack, decreasing the number of land units that can be part of this specific attack. Often, they would need to send two attacks. One to clean your harbor and the next to attack your land units. When this happens, you can let your biremes dodge the first attack, returning just in time to stop the second attack. Thus, these kinds of attacks tend to be very unsuccesful, unless you take the defender by surprise.

Many players will demolish some of the buildings in their towns just to get a few more residents. This will also decrease your point value and I consider this a waste of resources. Yes, maybe this allows you to attack with 60 horsemen instead of 50, but is it worth the waste of resources and points? I don’t think so. It’s more practical to just build a second town and use that one to produce additional units. If you use one town to create defensive units which you use to support a second town, the second town can just focus on building offensive units without the need of defensive units.

But most important: be online every day! Preferably two or three times per day. First of all you will get the daily bonus this way but it also allows you to check all your towns, making sure they’re all safe and all resources are well spent. (Or stored in your bank, without flooding the bank.)

First! A new project.

I have been working on a simple project to maintain a lot of data for the game Grepolis which I happen to like. I am just in one world, on the Dutch version, which is called Nu. And while playing this game is fun, I’ve decided to combine this kind of fun with another kind of fun: software development.

As it turns out, Grepolis provides a web API which allows everyone to collect data from every world within the game. So by using this API to import data to my database, and then use this database to feed it to my websites and other application, I can make some good use of this all. And it became quite practical.

But a fun project can grow to something bigger. So I decided to share my code at Google Code but this needs the code to be cleaned up a lot. This is supposed to show the best of my skills and if it looks bad, my skills are bad. I don’t want my skills to be bad. So by sharing the code I also hope to receive some feedback. Feedback is good. It’s nice to hear it looks nice. It’s even nicer when other people will show me the flaws in my work.

For now, the project has one owner, who will do all the hard work. This might change in the future, when the code has matured a lot and enough volunteers are available to help me with the code and the additional content. It doesn’t do much. The web site won’t even compile at this moment because I’ve changed too much in the database and business layers. I will be working on that, but first I need to get the datamodel just right, then make sure I have a working business layer. The most important part of this project isn’t displaying the data, it’s importing the data. And that’s not as easy as it appears.

UPDATE:

Since I quit Grepolis a while ago, I also stopped maintaining the code. It has been removed from Google Code and my copy of the code is lost in the catacombs of my enormous backup archive. For those who are still interested, I will try to find a copy of the code to put online.