united-coders

TwitterFacebookGoogleRSS
  • Home
  • Authors
    • Christian Harms
    • Nico Heid
  • Newsletter

A highly scalable cheap WordPress hosting, lessons learned

Posted on May 19, 2013 by Nico Heid Posted in Uncategorized Leave a comment

serverAfter my previous post “A highly scalable WordPress self-hosting that is not a burden on your wallet”, I had a few month to tweak the system and experiment. Additionally, we shifted the technologies around a little bit.

hardware changes

We switched to a kvm machine with 256MB RAM, which is only 1/4 of what we had before. This was primarily cost related, as our plan price would have doubled in the coming year.

The phoronix test suite was released onto the server to see how the performance changed. The cpu power we get is a little less, the disk speed less than half, but it’s more than sufficent with a transfer rate above 100MB/s. Continue reading→

hosting server

google code jam 2013 – tic-tac-toe-Tomek solution

Posted on April 16, 2013 by Christian Harms Posted in Uncategorized Leave a comment

The first task of this year qualification round of google code jam was only the problem: “check if a given tic-tac-toe game field has won by player “X” or “O” or it is a draw or “is not finished”. Read the complete description on the google code jam dashboard.

One change: There is a field “T” used as joker (for both player).

+----+
|XOOX| # The "\"-line with XXTX won!
|OXXO|
|OOTX|
|OOOX|
+----+

Continue reading→

Google code jam 2013 – the lawnmower

Posted on April 14, 2013 by Christian Harms Posted in Uncategorized Leave a comment

This year qualification round of google code jam has easy-to-understand problems. I will offer my solution for the second problem with a short solution (20 lines, no 1-liner) in python.

Continue reading→

code jam code puzzle python

code puzzles and permutations

Posted on April 11, 2013 by Christian Harms Posted in Uncategorized Leave a comment

This is a small post to prepare for the google code jam and the small data set. Some coding questions can be solved (in short time) by iterating over all variants. I solved some problems of project euler with the python itertools.

Coding fast and solve it with the brute force variant.

Continue reading→

code jam permutations python

Code Jam – Candy Splitting

Posted on March 30, 2013 by Nico Heid Posted in Uncategorized Leave a comment

With the Code Jam 2013 qualification starting soon, I decided to look at one of the past rounds. With 2011 I found one, in which I did not put too much time and effort in.

Candy Splitting. If you’re unfamiliar with the puzzle, read the problem first.

I managed to solve the the small input set, but couldn’t compute the large one in time. This usually indicates an issues with the chosen complexity to solve the puzzle, so let’s start evaluation where it went wrong.

Continue reading→

code jam code puzzle java

Manually concatenating two wave files

Posted on March 16, 2013 by Nico Heid Posted in Uncategorized Leave a comment

Even though there are libraries and tools to concatenate two canonical wave files, here is how you can do it manually, just in case you need to or are interested.

Take one of the files and add the second files minus the header. Then modify sizes of the file and the actual data part.

You might want to look at the definition of a wave file first.

Continue reading→

A highly scalable WordPress self-hosting that is not a burden on your wallet

Posted on October 8, 2012 by Nico Heid Posted in Uncategorized 3 Comments

How to host a scalable WordPress setup yourself with W3 Total Cache, Varnish and Amazon Cloudfront.

united-coders.com is not that big. We’re currently getting in between 500 and 1000 unique visits a day. As we’re coders we like to host ourselves. We’ve previously been on a real root server, which was a bit overkill. So we decided try something smaller and cheaper and we’re currently hosting this site for around $7 per month with enough headroom for more traffic. We do  have the occasional spike in the 5000 range when we publish something that catches on. So this needs to be covered.

If you’re interested in the setup and a detailed description, you can find it on RichWP.

The Components

The virtual Server (vServer)

A virtual server is a slice of a real server with a certain amount of resources dedicated to you. For us (speaking united-coders.com), the smallest version is sufficient. We got one cpu share (hard to measure, yeah) and a guaranteed 1GB of RAM (up to 2GB dynamically, but we only work with what we will constantly have).

Continue reading→

hosting server

Blog migration from serendipity to wordpress

Posted on September 11, 2012 by Christian Harms Posted in Uncategorized 1 Comment

The united-coders.com blog migration was my motivation to update a non-technical, german blog from a serendipity blog (short s9y) base to wordpress. The reason of switching to wordpress are different and will be reported here only from the technical view: Regularly updates, many themes and an active development community – but php.

First step for a blog migration (content and hosting) is a clean new installation on the target host. Use a dummy domain (and not a sub-folder) and configure a theme and some necessary plugins.

Continue reading→

server

email client settings, small changes, big effects.

Posted on August 27, 2012 by Nico Heid Posted in Uncategorized Leave a comment

the story

This is a small “disaster” summary on how one small mistake in an email setup lead to a company wide email outage and several entries on spam lists.

Consider the following scenario: small company, few imap accounts, one domain (we call worksfine.com) and one catchall/forward domain (we call fluky.com).

Some day, fluky.com is down again, so the forwards are temporarily not working. Terrified by that, the company calls another “admin”, as the usual guy is on vacation or otherwise unavailable.

The admin sees the problem in the imap accounts, which are tied to worksfine.com, not the real reason that fluky.com forwards are currently simply not forwarding. So he switches the accounts on a few computers from imap to pop3 (fetch and delete from server). Of course the problem persists, but magically vanishes after a while. Yeah, you guessed it, fluky.com is up again and delivering the mails which accumulated during the downtime.

Now comes the interesting part. On of the workers on a changed workstation sends an email, with a 10mb attachement. The workstation is using a nice MS product, sends the mail fine but fails to move it to the sent folder and puts it back into the send queue for a retry. I cannot exactly explain why this has happened, as I did not yet have time to inspect the machine. From what I know I guess, that the sent folder was still the imap account, but the mail server addresses for pop are different so the ssl certificates did not match and the move failed. Or some even simpler reason. ( insert Murphy’s Law here)

Luckily, that email was addressed to the whole company and a handful of customers. So after a few minutes the DOS “attack” on the own company was successful. Also a few customers were slightly upset and the address did end up on the blacklist filters on mail appliances and mail providers used by the customers.

lessons learned

  • murphy’s law, hanlon’s razor, etc
  • use remote access software and set it up in advance. (the initial analysis was via phone, to a non native speaker in a different country, using a different language version of the OS and was not technically skilled)
  • deny any unwanted access or usage if somehow possible
  • provide a summary of the systems and how they interoperate in case extra personal is brought into the company without prior notice. And put a big DO NOT list on it
  • don’t panic ;)

 

Migrating united-coders.com from Drupal 6 to {Blogger, VosaoCMS, Drupal7}

Posted on July 30, 2012 by Nico Heid Posted in Uncategorized 2 Comments

This is the first part of a story on how we tried to migrate from Drupal 6.

There’s nothing inherently wrong with drupal, but our version 6 installation was getting a bit dusty and had way more features that we needed. We wanted to move to something simpler, cheaper, faster, more scalable, newer, easier ….

The goal was to live without a server, in the cloud and getting free scalability promised. We’re not, and still are not,  getting hit very hard and the ocasional spike was no real issue on our Drupal setup or our server. But it was time for some change.
Continue reading→

server

Tags

android code jam code puzzle hackercup hosting java javascript permutations project euler python server

Recent Comments

  • Nico Heid on The art of escaping
  • hardik on Use Android ActivityGroup within TabHost to show different Activity
  • james on Use Android ActivityGroup within TabHost to show different Activity
  • Matthias Reuter on The art of escaping
  • Nico Heid on Show ProgressBar in Notification Area like Google does when downloading from Android market

Recent Posts

  • A highly scalable cheap WordPress hosting, lessons learned
  • google code jam 2013 – tic-tac-toe-Tomek solution
  • Google code jam 2013 – the lawnmower
  • code puzzles and permutations
  • Code Jam – Candy Splitting

Meta

  • Log in
  • Entries RSS
  • Comments RSS
  • WordPress.org
  • 1
  • 2
  • 3
  • …
  • 10
  • Next

Copyright

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License.
© united-coders