Social Saga
Social Games and other information

Arnold’s game hit the market – Mobile Strike November 27, 2015

The shops are hit by Arnold Schwarzenegger in a brand new job as military general. Mobile Strike is an action packed strategy game as well as the following large MMO that is cellular. You might be constructing bases, commanding the actions of your military and examine your skill as commander on the display and together with your team. With high and strategies – technology assault vehicles is this global MMO game perfect conquer your enemies and to command a virtual battleground.

The new game Mobile Strike of machine Zone is highly expected, but can the game defeat on Game of War: Fire Age? The epic strategy game Game of War: Fire Age can be acquired for devices that are cellular and has become the world’s top -grossing mobile game in 2015.


The battle is fueled with greed for resources and demand for brand spanking new lands. In Mobile Strike you’re head of virtual militia of raw materials and your country traveling to boost your territorial possession. It’s possible for you to construct an army and selected from up to 16 distinct units with strength and distinct characteristics. However, before you run about your enemies you’re making your base into an impregnable fort from an modest military barracks. As in real life “Prevention is preferable to cure” and after all, the enemy can be more rapidly go towards your headquarters as you’ll be able to command your personal strategy. For those who have backed up your militia enough, it is possible to cope with preparation approaches that are better and more attacking measures. The broad variety of components permit various strategies being tried out by the gamers on the battle field. You might be able enough to get your scores in your search for new records and brand new high scores for additional upgrades and better aspects of your components

-play with countless players world-wide online
-construct coalitions that are powerful ands impregnable citadel against enemies that are striking
-strenghtening your components and upgrade your base
-get advice and items to assemble
-train your commanders
-use modern combat vehicles, tactical and artillery units against your enemies

On the display, Arnold Schwarzenegger isn’t seen in the sport. He could be seen to Mobile Strike hack cheats as a useful body in the promotion image and is amusing lovers because of this Mobile Game of his action movies. That Schwarzenegger will be playable in Mobile Strike is not likely given the character of the sport. This is a mobile strategy game in which troops are commanded by the player and is planning bases and defense strategies. The resources required for constructing new items may be bought for actual cash or are scored. Mobile Strike isn’t the primary game in which Arnold Schwarzenegger is playing with a marketing character. Just lately Arnie had an appearance as a playable “Terminator”in the wrestling simulation “WWE 2K16”.

Reinforce your defence, protect your arsenal and reinforcing your foundation is needed to win this match. Like every MMO that is great, you might be in a position to join coalitions and carry various fights out develop new lands for the assignments and to weaken your enemy. The game objectives towards the commander that is top rather than towards the maximum military. Mobile Strike hack is a totally new action game ready that you input the high scoring list.

No Comments on Arnold’s game hit the market – Mobile Strike
Categories: Reviews

AppEngine ups and downs November 2, 2015

So i recently started using appengine, it should be noted i’m VERY new to it. I come from django background so this is mostly the comparison between the two.

Let’s start with the classic argument, price! A lot of people compare EC2 and GAE (Google AppEngine) prices, they are not really comparable. EC2 provides you easily spawnable machines, as many as you need, leaving the scalability to you. It means your programmers have to worry about shredding the database, your sys admins about adding more web nodes… On the GAE side you just write code, effectively outsourcing both the hardware and sys admin to Google. The advantage EC2 has is that you can use any technology under the sun, with GAE you are forced to use their platform. Does it in pure money pay off to use GAE? No idea :) , but if you get big you can iterate faster becouse you don’t have to worry about scaling (which can be a major competitive advantage). To be honest most of the sites out there don’t need anything more than what can be easily scaled.

The schema-less development is definitely one of technical things i like about GAE. South is cool, but not having to care at all about the schema is just a major pain relief.

$ -e update .
Scanning files on local disk.
Scanned 500 files.
Scanned 1000 files.
Initiating update.
Password for 
Cloning 154 static files.
Cloned 100 files.
Cloning 224 application files.
Cloned 100 files.
Cloned 200 files.
Uploading 2 files.
Deploying new version.
Checking if new version is ready to serve.
Will check again in 1 seconds.
Checking if new version is ready to serve.
Will check again in 2 seconds.
Checking if new version is ready to serve.
Closing update: new version is ready to start serving.
Uploading index definitions.
Uploading cron entries.

Next thing i like very much is the deployment, you type a command poof it works. It has its downsides as well tho, unlike say svn, it is not capable of remembering the credentials. Next problem is that it deploys only as the app specified in config file, making it more difficult to do a test deploy first (this is just a minor annoyance).

Like you can see above, if it’s good, it’s really really good, likewise when it is bad, it is really really bad.

In [1]: from myapp.models import User
In [2]: User.all().count()
BadArgumentError: _app must not be empty.

Hello? I just want to do a simple ORM query? As it turns out i’m not the only one to have this problem, i copy/pasted stuff i found on the internets and execute it at the shell startup (’redduck666′ is the name of my app):

from google.appengine.api import apiproxy_stub_map, urlfetch_stub
from google.appengine.api import datastore_file_stub, mail_stub, user_service_stub
import os
os.environ['APPLICATION_ID'] = 'redduck666'
apiproxy_stub_map.apiproxy = apiproxy_stub_map.APIProxyStubMap()
    datastore_file_stub.DatastoreFileStub('redduck666', '/dev/null', '/dev/null'))
apiproxy_stub_map.apiproxy.RegisterStub('mail', mail_stub.MailServiceStub())

As far as users go, as long as your idea of “user” == “user with google account” you are gonna be happiest person around. GAE handles for you the authentication against google account and makes sure the site is usable even in development environment. What happens if you want to add twitter connect or facebook connect? Well, SOL (Shit Outta Luck), they haven’t bothered to abstract the User model so you are left with dealing with low level stuff (like cookies). Compare that to django, where you have to authorize the user once and it does everything else for you (albeit keeping a user in SQL table).

Another reason against GAE is lack of reusable stuff out there, django has much more vibrant community creating all kinds of reusable stuff. As a matter of fact i had to port django facebook connect stuff to work under GAE.

No Comments on AppEngine ups and downs
Categories: Coding

Automated scalability

My daemon takes the desired response time in milliseconds as input and scales the infrastructure accordingly. When it sees increased traffic it adds more nodes which are then shut off when they are no longer necessary. The infrastructure is based on Rackcloud, Cassandra, uwsgi and nginx.

Does it work? The end result was:

Requests per second:    823.20 [#/sec] (mean)

  50%    186
  66%    471
  75%    516
  80%    525
  90%    976
  95%   1108
  98%   1394
  99%   1767
 100%   1767 (longest request)

SHAMELESS PLUG: I’m a freelance developer & sys admin, drop me a line if interested in my services.

For benchmarking i’ve used my blog. It had 10000 blog posts in it, the biggest part of which was 1500 bytes of lorem ipsum text. The benchmark was performed on from within Rackcloud and consisted of displaying the index page of the blog, so last 10 blog posts. The blog engine runs on pylons web framework and uses Tragedy data mapper.

In front of entire setup there is nginx, it is load balancing the requests to uwsgi nodes. A useful feature here is that it will re-proxy the request in case one node goes down.

At its very core this setup is (automatic scalability daemon) which is scaling the infrastructure based on current needs, code here. The current needs are defined as average responsiveness of your site. It works on top of nginx, it dynamically modifies the “upstream” in nginx when it takes the node up or down. My choice was to deploy with uwsgi, i could easily replace that with FCGI or even reverse proxy to some other web server

The individual spawned nodes have uwsgi and Cassnadra on them, uwsgi at this point just serves the requests handed to it by nginx. The heavy lifting is done by Cassandra, which has to make sure your data is (eventually) consistent. Setting up the cluster was a breeze, my favorite feature is some kind of query caching. If it has to go to network to get the result to network it may write it locally as well. This is most obvious when performing a first benchmark against freshly spawned cluster, the results will be much worse than in the second one.

A problem that i had is that Cassandra cluster to function requires an ip in the config file. Since i’m spawning the instances on the fly i don’t know their ip in advance, so i made an ugly hack to fix the matter. The /etc/rc.local now has:

ip=`ifconfig | sed -n '/eth1/ { N; /dr:/{;s/.*dr://;s/ .*//;p;} }'`
sed -i "s@<listenaddress.*@><listenaddress>$ip</listenaddress>@" /etc/cassandra/storage-conf.xml

Thing worth noting is responsiveness to changes, it spawns new nodes in cloud, process that takes minutes. Given how fast one gains web traffic this shouldn’t be a problem in real world.

Cloud APIs give anyone the power of hardware control to our fingertips. The images are both powerful and nice to work with, opening whole new world of possibilities. For example release could change from “deploy new code to node” to “deploy new node with new code” while guaranteeing language independent full reversibility.

No Comments on Automated scalability
Categories: Coding

Android VS iPhone

Some weeks ago after my iPhone grew couple of more dead pixels an offer for a fancy new EVO 4G has landed in my inbox. So my journey in the Android world began.

First let’s have a look at the sizes of various hardware features. EVO 4G has bigger screen, louder speakers, more pixels in the camera & an extra camera as a cherry on top. Bigger is better. Period.

A huge advantage for me was multi tasking, no more choosing between listening to pandora and twittering! But for months now it is known that iPhone is also getting this, so no heavy points here. Heavy points go for customization tho, on the first page of my phone i have full controls for Pandora, google search (searches phone for apps as well) and a handful of apps. In other words thanks to mainly widgets, android can have “workspaces” on your phone, rather than “app launcher containers” of iPhone.

On the dark side i had a lot more WTF moments, first time i lunched “Spark” app my phone wouldn’t stop vibrating, not even after exiting the app. I ended up restarting the phone. Pandora & Flash have the tendency to crash every couple of days. The apps seem to lag behind considerably as well, the games that i tried out engaged me less than iPhone ones. One app had on the splash screen written something about using the buttons, i couldn’t figure out how to use it, another one told me it is not supported on my handset.

So overall, which one is better? It all depends on your needs bla bla bla bla… Let me ask you this question, which one allows you to turn the bellow picture in your temp office (HotSpot app!)?

No Comments on Android VS iPhone
Categories: Reviews