18/06/2018 5:18pm
RT @ChanelleLLee: Our paper ‘Negative Updating Combined with Opinion Pooling in the Best-of-n Problem in Swarm Robotics’ has been accepted…
18/06/2018 10:56am
RT @ilpincy: Our manuscript "Simulating Kilobots within ARGoS: Models and Experimental Validation" has been accepted as full paper at @ants
11/06/2018 5:20pm
RT @AndyRidgway1: They've been a fair few months in the making but we - that's @SciCommsUWE - have just launched a new range of #scicomm tr…
08/06/2018 11:19am
MIT scientists created a “psychopath” AI by feeding it violent content from Reddit. A very interesting experiment.… [LINK]

[How I Added My Twitter Feed]

Web applications Added on 18/08/2012

Following my decision to leave Facebook, I have decided to start using Twitter more as a means of exchanging information with my friends. Adding a Twitter feed is pretty easy as Twitter does not require you to authenticate so you can just ask for N latest tweets using an ordinary GET request.

I modified original PHP code posted on Stack Overflow to create a single function that gets the feed and converts it to tweet objects containing createdDate and message fields. Also, I added my own algorithm that automatically creates html links when it finds phrases starting with http:// . Finally, I used a method by kn00tcn to convert Twitter date to PHP date object and back to a string with my own formatting.

The PHP function is as follows:

* Get tweets

protected function getTweets() {
   //-- curl request    
   $url = "https://api.twitter.com/1/statuses/user_timeline.json?include_entities=true&include_rts=true&screen_name=elendurwen&count=5&trim_user=true";
   $ch = curl_init();    $timeout = 5;
   curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
   $json = curl_exec($ch);

   //-- parse data:
   $tweets = array();
   if ($json != false) {
      $obj = json_decode($json);

      foreach($obj as $var => $value) {
         //-- convert the date and add 4 hours to it. For some reason the conversion makes the date 4 hours less than it should be.

         $tweet['createdDate'] = date("d/m/Y g:ia",strtotime($obj[$var]->created_at) + 4*60*60);
         //-- get the message text
         $tweet['message'] = $obj[$var]->text;
         //-- add links automatically
         $tweet['message'] = preg_replace('/(?<!a href=\")(?<!src=\")((http|ftp)+(s)?:\/\/[^<>\s]+)/i', '\\0', $tweet['message']);
         //-- replace twitter name tags with links
         $tweet['message'] = preg_replace('/(?<=^|\s)@([a-z0-9_]+)/i','@$1', $tweet['message']);
         //-- replace twitter hash tags with links
         $tweet['message'] = preg_replace('/(?<=^|\s)#([a-z0-9_]+)/i','#$1', $tweet['message']);
         $tweets[] = $tweet;
   return $tweets;

{Please enable JavaScript in order to post comments}

Why I Left Facebook

I decided to delete almost all my activity and all my photos from Facebook when they announced that Timeline would become compulsory. While I really think that Timeline is a bad idea as it lets your history be browsed in a very easy manner, this was not the only reason I left...

Kinect-Controlled News Feed

During my work for Edelman Digital in 2011, I took part on a C++ project to create a program that could display user’s Facebook and Twitter feeds and was controlled by hand gestures captured by a Kinect device connected to a PC.


The main purpose of pyCreeper is to wrap tens of lines of python code, required to produce graphs that look good for a publication, into functions. It takes away your need to understand various quirks of matplotlib and gives you back ready-to-use and well-documented code.

Citations count fails to measure the impact of research

Academic career progress is often judged by so-called "h-index", that measures how much your research is being cited. I recently had a detailed look at what exactly the citations, specifically those reported by Google Scholar, amount to. Only a relatively small fraction of the reported citations corresponded to research being applied or reproduced in a meaningful way.

V-REP, Gazebo or ARGoS? A robot simulators comparison

Let’s have a look at three commonly used open-source simulators for robotics: V-REP, Gazebo and ARGoS, to find out which one suits your project the best.

Designing Effective Roadmaps for Robotics Innovation

Automated factories, autonomous delivery drones, self-driving cars: these and similar technologies will soon touch every aspect of our lives. An engaging discussion about how these technologies are regulated and innovated took place at the IROS 2017 conference.