Open Rights Group – Become a founder of ORG Scotland         

Open Rights Group – Become a founder of ORG Scotland         

Starting and Stopping Habits

Habits—both good and bad ones—aren’t the easiest to start and stop. Breaking a bad habit feels impossible, and starting a new one (such as going to the gym…) isn’t an easy task either.

Ben D. Gardner, writing for UCL’s ‘Health Chatter’ blog:

The bottom line is: stay strong. 21 days is a myth; habit formation typically takes longer than that. The best estimate is 66 days, but it’s unwise to attempt to assign a number to this process. The duration of habit formation is likely to differ depending on who you are and what you are trying to do. As long as you continue doing your new healthy behaviour consistently in a given situation, a habit will form. But you will probably have to persevere beyond January 21st.

A simple little tool to help you manage a habit is to use sticky notes. If you’re desk-bound, put 66 small labels along the side of your monitor (each marked 1-66). Simply tear one off each day you managed to get closer to the 66 day mark. Tearing and throwing away the little label helps you get a sense of achievement and hence helps you stick to your goal (whether it’s starting or stopping a habit).

I’ll be working towards stopping a bad habit, so fingers crossed I keep tearing off those labels and managing to stay bad-habit free each of the 66 days! After this, the bad habit should be a thing of the past, or so the theory says…

52 Week Money Challenge

New years resolutions come and go, but I decided that this year I’d actually set a goal and stick to it. Unlike other years, I wanted to set myself a goal that would be relative easy to achieve, and one that would benefit me by year-end. Money saving seemed a great idea, and I found a tip online over at

The idea of the 52 week money challenge is simple: once a week you put a set amount of money aside and by the end of the year you will have saved up £1378. The amount to set aside is the same as the week number, i.e. in week 1, set aside £1, in week 2, it’s £2, etc. 

I’ll be twisting the rules slightly since I find that setting aside £51 and £52 around Christmas time is a bit much. The way I’m approaching this challenge is set aside £52 in week 1, £51 in week 2, etc. – i.e. in reverse order.

Natalie over at posted a great printable here, so hang it somewhere you’re most likely to see it (e.g. your fridge or office desk). I’ve decided to add them as to-dos to my weekly diary.

Get saving!

Security Now 408 – The State Of Surveillance

Security Now 408 – The State Of Surveillance

I’m proud to say that 5 years later, I’ve managed to complete my degree – M.Sci Computing Science with Industrial Placement from University of Aberdeen! I’ll truly miss this place…

Note: In Scotland, any 5 year undergraduate degree is automatically classified as an undergraduate masters degree, in my case M.Sci. This is not to be confused with the post-graduate masters M.Sc! The reason my degree lasted 5 years is that I completed an industrial placement, adding an additional year to the standard 4 year Bachelors degree.

2011: The Intermediate Chapter

Throughout my christmas holidays of 2010 I imagined the possibilities 2011 had to offer. My studies at The University of Aberdeen were coming to an end and a chapter of my life was coming to a close. Or so I thought… As I lazily listened to music one evening (obviously just to distract myself further from the coursework and exam revision that I should really be getting on with), I wrote “2011:  Getting Things Done Edition”  in which I described some of the goals I had set myself for the new year.

“So, nothing huge here. No life changing goals or anything, just a few positive uplifting goals to keep the rest of 2011 interesting.”

I say “a chapter of my life was coming to a close” only because my expectations of finding a student placement program that satisfied the requirements set by The University of Aberdeen were, well, low. I was sure I would be a graduate of 2011. “Or so I though…”? Well, what’s happened? where am I now? I believe the best way to put it is The Intermediate Chapter, an interlude that separates university lifestyle from ownership of a degree. Simply put: I am currently working full-time as placement student. The fact that I got this placement rules out much of the uncertainty I had towards 2011 – I now know where I’ll be spending the rest of 2011, both job wise and location wise. It’s a funny situation to be in, like the interlude at a concert that connects two songs together while certain band members retune their guitars, I feel like I am tuning my life before the next chapter starts. Only once The Computing Science class of 2012 march through Elphinstone Hall will I realise that my time to start a new chapter has come. Until then, regardless of working full-time, I am still a student at heart. 

So now that my uncertainties are cleared up, let’s look at some of goals I had set myself.

  • Learn to Drive. As mentioned previously, I can drive. What has changed since 2010 is that I’ve had a lesson. A single lesson. Yes, just the one. A small, miniature, tiny, microscopic achievement. Or failure? This is definitely something that needs to change within the coming weeks.
  • Healthy Snacking. Although I dropped Graze (only because I realised it’s actually quite easy to go to the shops and buy nuts), I have maintained quite a healthy snacking lifestyle. Gone are the days of Haribos and chocolate – they’ve been replaces by dried and fresh fruit along with an occasional sweet. 
  • Maintain a good fluid intake / Continue Drinking Green Tea. As I write this, I’m enjoying a delicious teapigs green tea! Especially since having started my (office) job, I have been drinking vast amounts of green tea – along with plant of water, it’s basically the only drink I consume throughout the day. My fluid intake has been very high and I definitely feel the health benefits of keeping my body at a good level of hydration.
  • Learn the Basics of Sign Language. I am still very eager to start learning this, but have simply not found the time to do so. Staying on top of my things to do list!
  • Surf / Wind Surf. No / No. Although I won’t be going (wind / ) surfing this summer, I will be going SUPing. When my family told me what they’ve been up to, I too had no idea what they were taking about. SUPing, or Stand Up Paddle Surfing, is apparently a “an emerging global sport with a Hawaiian heritage”. It looks fun and I can’t wait to try it in a couple weeks!

Frankly, I have hardly had the chance to cross out any of my planned out goals. My Getting Things Done approach followed me into 2011 and I have simply been, well, getting things done. My dissertation was finished and achieved a high mark, adventures with friends and family took me to new places and a spontaneous job application veered my life for the better! 2011 has been a fantastic year so far, but there’s no way I am slowing down just yet. Hardware needs to get soldered, core strength should be built up, sign language would still be a nice addition to my knowledge, a drivers license must end up in my wallet and adrenaline should be enjoyed! Hello rest of 2011, I’m looking forward to meeting you 🙂

Revisited 02 // Can an artificially intelligent machine know?

Revisited is a series of blog posts in which I share words I have previously written for university, school or old blogs. View all Revisited posts here. Revisited 02 – written for: Grand Challanges of Artificial Inteligence (University of Aberdeen), December 2007.

In order to answer this question let’s start by formulating definitions of both machine and know. I will start with a simple dictionary definition of a machine:

“any mechanical or electrical device that transmits or modifies energy to perform or aid in the performance of human tasks”[1].

I will further focus my discussion on artificial machines such as computers and robots. I have two reasons for this very specific starting point: firstly, I am aware that defining a machine is arbitrary and there is no one agreed and finite definition. Secondly, we need a starting point since the “know” part of the question and our arguments around this could lead us to change or refine the “machine” definition. Having a starting point allows us a common ground to argue on and also aids progress towards a justified answer.

The word knowing feels intuitively simple to define but, although I believe that I know what knowing is, I realise that I cannot easily define it. Therein lays the problem. How do I know that a machine knows if I can’t define know?  If I say that knowing something means we have knowledge then I have to define knowledge. We can start with the classic definition of knowledge as “justified, true belief”. This definition however will not bring us much closer to determining whether a machine can know. We need to determine if the machine believes since if it doesn’t believe then it can’t have a belief. Let us investigate the ways at arriving at the belief or, in other words, the ways of knowing. By looking from this angle we can try to bridge from the “how to know” to the population of “knower’s” and conclude whether the machine could be in that population. The main ways of knowing are reason, emotion, perception and language. By looking closer at these ways we may have some chance of reaching a conclusion to our question.

When we use reason, we can either inductively or deductively reach a belief. If I say I know that Thomas is a mammal, I should be able to justify my answer. If I were to use deductive logic, I could use two statements, “All humans are mammals” and “Thomas is a human”. Therefore I could say Thomas is a mammal. Using inductive reason and perception, I could say that I’ve always seen what humans and mammals look like, so I would guess Thomas is a mammal. Perception is largely based on our past experiences and information and knowledge that we have gathered previously and believe to be correct. Whether the reasoning leads to a true belief depends on whether the inputs to the reasoning process were indeed true and justified. Reasoning is an ongoing complex process which does not happen in isolation of language, emotions and feelings and these three are highly intertwined. I have feelings but if I express them in a language unfamiliar to the listener then they are meaningless to that person. If I listen to a topic that I feel strongly about I cannot get emotional about the subject if I do not understand the language. Clearly then language is significant in knowing something.

When relating knowledge to a computer based machine, we can certainly say that its ways of arriving at output or generating its knowledge fit most of the above categories and hence it could possibly be in the knower’s population. Take for example robot X, which has been equipped with some sensors (such as light and heat sensors), a complicated mathematical program and a voice recognition program. Give the creator of this robot some time to calibrate the machine and soon there will be a lifelike figure close to the human, who will be able to answer questions, react to changes in the surroundings and do various other tasks. The robot does all this through logic, perception and language. Emotion in this case would be very difficult to implement into the machine since emotion is a feeling of love, hate, disgust, fear, etc. However according to functionalism, mental states are functional states. Computers are themselves simply machines that implement functions. A functionalist would argue that mental states are like the software states of a computer. According to this theory it is possible that a machine running the right kind of computer program could have mental states. It could have beliefs, hopes and pains.  But to what extent will the robot know something? It may be programmed to mimic the reaction to certain feelings, for example a buzzer could sound if it’s too hot, but this doesn’t mean that the machine feels the pain of burning heat. The robot, and many other artificially intelligent machines, are programmed to follow a set of true codes or rules. Following a code is like the human reflex system, it happens nearly instantaneous and automatically. But how many codes can a robot or computer system follow and is it enough to emulate a real human being? Even if you believe the functionalist argument, does it prove that a programmed mental state is equivalent to a brain with feelings? The answer to this is nearly impossible to tell and Alan Turing came up with the Turing test in the 1950s.

The Turing test[2] is an investigation to see how well a computer can achieve life-like conversations. The Turing test involves a computer and a judge (human being). The judge may ask the computer questions or have a normal conversation. The person and the computer are in different rooms so that there is no influence from bodily appearance. The aim is to have a computer trick the judge into thinking it is another human. The reasoning being that if we can’t tell the machine is different from us then we could infer that it has a mind. But will the computer actually know what it is saying or will it just follow the rules it’s been set? We can say that the computer can use deductive logic to assume the right answer and respond to the human by saying what it thinks is correct. The computer can also use inductive logic to build up its database automatically. It can accumulate a linguistic capability but this capacity on its own is no more than the regeneration of symbols. The machine is capable of response but it doesn’t follow necessarily that it has a mind and knows what its responses mean. The Turing test does not give me evidence of the machine’s ability to know something.

Let’s investigate further feelings. The only emotions and feelings you can feel are your own. I know that feelings are being felt by me so I know I have a mind. We can’t touch or see a mind so I know it’s different from a brain. If I dissect a brain (since it’s the part of the body that must hold knowledge) I will never find a physical part that I can touch and say is a feeling. But, if I go back to my earlier statement, I still know I have feelings and I believe this is beyond dispute. This reasoning underlies my belief that there is a separation of mind and body. René Descartes (1596 – 1650)[3] had this idea and believed that mental and physical states are separate from one another. He said that the mind and soul did not follow the laws of physics; however, he still stated that they can affect each other. Taking this a step further I contend that even if an emotion can be described and a physical body such as a machine can be programmed to display the emotion it still doesn’t prove that it feels the emotion. It would have to have a mind to feel and we can’t see the mind. A robot could be programmed to jump for joy if it hears certain words so it can indeed display joy but where is the proof that it feels joy? To be fair we also cannot see the human mind and in reality have no proof that the human feels joy or is just acting. The difference though is that acting out joy in itself requires that we feel the need to pretend to be happy whereas the robot was only reacting to programmed word signals.

To answer the question of whether a machine can know I believe we always come back to the feelings and mind discussion. The human can use all types of the areas of knowing and the ways of knowing.  The main differences are that the machine cannot develop its own feelings and emotions to know something. It can certainly be programmed to mimic and it can use reason and perception but only to a certain extent. If it is not interacting with real objects and new events in the world and making up its own mind then its ability to develop its knowledge base is restricted.

To conclude, I believe that the physical state is separate from the mental state (though closely interlinked). If you acknowledge this then there is no basis for believing that a machine has feelings and a mind and therefore I conclude that a machine cannot know. I realise though that to some extent I am relying on belief that I cannot fully justify.


[2] Alan Turing on Wikipedia (

[3] Lecture 21 Notes by Frank Guerin (

Revisited 01 // Do We Live in Public? An in depth look at modern internet privacy.

Revisited is a series of blog posts in which I share words I have previously written for university, school or old blogs. View all Revisited posts here. Revisited 01 – written for: Professional Topics in Computing (University of Aberdeen), March 2011.

“Privacy is dead – get over it!” Steve Rambam[1]

In recent months, privacy on the Internet has become a huge topic of discussion. Articles, blog posts, discussion groups and newspapers are all conversing the subject with their own viewpoint whilst social networking websites such as Facebook are defending their core values continuously. Some privacy advocates such as Rambam even believe privacy is dead. In order to fully understand the topic of this discussion, lets firstly glance at the definition of privacy.

Privacy – The state or condition of being free from being watched observed or disturbed by other people: she returned to the privacy of her own home. [2]

Privacy is a term that has been used for many centuries and in the modern era of computing it can be used to describe the personal privacy regarding transactions of data via the Internet. At its core however, privacy will always have the same meaning as stated above.

Humans have a tendency to want some privacy whilst at the same time we are very curious beings; we want to know and see things that are unfamiliar to us. Technology has always allowed people to feel more connected to each other and with this, we know more and more information about other people. The newspaper brought global information to people, the telephone allowed for instant information to be passed around and now with the Internet we can find out a huge amount of information about places, news, topics and most importantly: people. All these technologies allow for new ways in which privacy can be breached.

The increased privacy concerns comes because of two main reasons: easier and new abilities to gather information whilst at the same time making it easier to send information. With these two actions becoming less effortful as technology progresses, our personal privacy has sunk to an all time low. This has caused much debate and privacy advocates have quickly gone ballistic. Internet privacy concerns really started to take off to new highs when cloud services started becoming popular. Gmail, a popular e-mail service, opened its doors in 2004[3] and blew everyone away with their free service; a whopping gigabyte of storage at a low price of free. Whilst all things seemed good at first, concerns rose quickly. EPIC (Electronic Privacy Information Center) immediately asked for Google to shut its e-mail service down, stating that it was “an intrusion that must not be permitted to exist”[4]. Many average users may ask why there was a need for concern, thinking a company like Google would surely not read your e-mails! The concern about Google’s e-mail service was brought to attention because of the targeted and automated advertisements that were created alongside e-mails. These advertisements were targeted to the user by scanning the text of an e-mail message and hence creating relevant ads. There is an interesting argument to be made that users will have agreed to the Terms of Service, the Program Policy and the Privacy Policy.  It is often believed that these groups are more like activist groups, trying to ban new technologies and slow down the development of the Internet. Groups such as the EFF (Electronic Frontier Foundation) understood that Google might need to undergo some change, but that a total ban would be ridiculous. Even five whole years later, EPIC was still pursuing their goal but only that time they tried to shut down all Google online tools including Google Docs. Their claim was that the applications were unable to “adequately safeguard the confidential info"[5]. It really does start to look as though EPIC are designing these attacks on Google to get media attention rather than helping consumers.

There comes the debate of trade-off; ones privacy always correlates to many other factors. Having total physical privacy would mean to live far away from everyone else whereas if you would want to live and interact with other people in a city, you would need to trade off some of your privacy. The same applies for the Internet; one could simply not use the Internet and the vast services available on it and live in complete privacy, but that would mean they are missing out on the use of a huge technology. The more someone uses the Internet, the less privacy they have.

In the Google example above, most people feel that the risk is slight and that the trade-off and value from the services that Google provide are worth it. How far are people willing to go for convenience; just how much information will the average person be willing to give up on the internet? It is as though the more time we spend on the Internet, we are quickly exchanging convenience for our privacy.

A service called Futurephone launched in America just a few years after the Gmail hype; the service allowed anyone to make international calls for free. The service gained many great reviews but one key aspect of the business was questionable: how does Futurephone make money? There was no signup required, no name or address was given, no credit card details were asked for. It was as though Futurephone was the perfect telephony service. Only one thing became clear – they must be listening and recording calls[6].

It’s not just on the Internet that our privacy has been sunk to a new low. As banks have become extremely popular over the past century, one might be concerned about the information they have about their customers. Credit cards paint a perfect picture of a person’s lifestyle and a privacy intruder could quickly find out vast amounts of information by looking at these facts. But again, consumers often don’t mind the lack of privacy. Consumers don’t mind Supermarkets knowing their buying habits as long as they get discounts on loyalty cards. They don’t mind being personally welcomed to a website as long as it saves them from logging in again. Add all these pieces of information together and a data miner could build a near perfect user profile of a person. In the end, who really cares if a company knows what food you bought?

Living in public has become easier with the Internet; we can create websites that describe ourselves, have videos and photos of our life but most importantly we can have real time video conversations and streams that allow anyone to watch us live our life.

Dan Brown, a now YouTube partner, started making Internet video logs (or vlogs) from his bedroom when he was still in college[7]. He started making these for fun, simply telling the world how his day was and sometimes having a rant at the camera. He quickly got more views and became “internet famous” and as YouTube expanded they asked him to become a YouTube partner. He started making higher production vlogs and shared more of his life on the Internet than ever before. This progressed for a couple years until he released Dan 3.0, his latest vlog project. The project is an Internet experiment; let the world decide how his life progresses. One could say that his life, through the aid of the Internet, has become completely transparent to the public. The public can see all his actions, decide on what he must do and partake in his everyday life events. The on-going experiment is extremely interesting to watch but as it’s a daily summery being posted, the live aspect is missing.

Reverse back to the early dot-com bubble when the Internet was really starting to take of. An Internet entrepreneur of the name Josh Harris envisioned the future to make full use of the Internet; he claimed that his Internet TV stations would quickly overtake major TV channels such as CBS. Harris decided to try out an experiment called “We Live in Public” in which him and his then girlfriend Tanya Corrin would live under 24 hour surveillance viewable by anyone. The experiment was interesting in many ways; it showed us what the power of the Internet has allowed us to do and how privacy could be stolen away from someone completely but most importantly was the psychological aspect of the experiment. Harris had cancelled “We Live in Public” after he had a mental breakdown and couldn’t cope with things. Is this a sign that humans are programmed not to cope with surveillance? An interesting aspect towards transparency in living is that we may feel more inclined to do certain things when we know we are being watched. We know someone may see a purchase on a credit card, so we may deny ourselves from buying an item. The same applies for the Internet; if the Internet becomes so transparent we may start to psychologically feel as though we are continually being watched and judged on the Internet. This could have serious consequences; we may change our buying habits, our social behaviour, the way we interact with other business, just about every aspect of our life could change if we were under heavy surveillance.

It may not be obvious to many, but there is a good chance that surveillance footage or some sort of information has been put online without your acknowledgement. A big headline in recent months has been Google’s Street View service, a service that allows anyone to virtually roam the streets of our planet. The headlines often included homeowners suing Google claiming that Street View images of their houses violated their property and privacy rights[8]. This sparks an interesting debate and the German court quickly vindicated Google Street View operation in Germany. The court’s reasoning for this was “that it is legal to take photographs from street level” and hence allowed for Street View to be operational in Germany. Many people still are unhappy about this, but the arguments on both sides stand valid; people want their privacy vs. “anyone could just take a picture here”.

So where can someone draw the line? What is acceptable and what should be made illegal? In the end, this comes down to how society; it’s our choice to use a service in the end. Just like anything in society, we build norms and socially acceptable standards and today, most people will be happy about non-personally-identifiable profiling and similar information being gathered as the trade-off for the convenience is only small. Laws have made illegal for companies to share information about customers in many countries, for example in Nevada and Minnesota, the law requires Internet Service Providers to keep information private regarding their customers[9]. To ensure transparency between a business and the user of a website, there are laws such as having a privacy policy written on the website[10].

In the end, this all comes down to the need for a business to make money. For websites to stay online whilst costing nothing to consumers, they need to sell advertising. Advertisements are now highly targeted to users of websites, only displaying highly relevant ads that have a much higher click-through rate than what might be expected from older advertisement on the Internet. There are companies trained to data mine your online behaviour and with this information, they can then go to advertisement companies and aid them in creating these highly specialised ads. All this is made by easy because people simply want convenience; it’s simply much easier to use a free e-mail service provided by Google than setting up your own mail server, configuring ports and account details.

If someone is extremely scared of being public, there are things that can be done to maximise anonymity online. E-mails can be encrypted, allowing only the sender and receiver to understand the message content. Anonymous proxy server networks such as Tor[11] allows users to stay private by tunnelling encrypted traffic through a network of computers and hence their ISP (Internet Service Provider) would not know what website are being visited nor would they know who they are communicating with.

Much has to do with adaptation to change. The world is constantly changing and especially now, with superfast computer chips and silicon technologies moving at a faster pace all the time, change is inevitable. It is only obvious to say that humans are scared of the unknown. We like what we know, and change can scare us quickly. It took the Internet only a few years to reach millions of users; the technology spread faster than the newspaper, radio or television. It has been a huge change to our lifestyle and many people simply do not know what to make of this new era. It is interesting to look at how different generations adapt to the Internet. Many young people do now have a problem with sharing their information on the Internet; sharing videos, photos, their location and contact details are a social standard on networking websites such as Facebook. The older generation are simply not used to this and often find it hard to understand exactly why this shift is happening.

Not everyone is always happy with Facebook however; they are the most criticised website when it comes to privacy concerns. They have often rolled out new features on an “opt-out” scheme; only users who understand the privacy controls good enough will know how to opt out of the new privacy features. In 2007, Facebook launched a new (opt-out) feature for developers of websites called Beacon. This would automatically post news feed updates to ones network on Facebook about activity the user has been undergoing on websites outside of Facebook. The most interesting headline to come out of this privacy debacle is the “Lane v Facebook” case of 2007: a class-action lawsuit in the United States District Court for the Northern District of California[12]. In this court case, Sean Lane bought a diamond ring as a surprise gift on for his wife. The ring was supposed to be a surprise, but without Lane’s knowledge, hundreds of friends on his Facebook account were notified of his purchase. Facebook saw the feature as a “complete new way of advertising online”[13], but what they hadn’t realised is that they were at that point crossing the line of personal Internet privacy. The idea was clever, but simply failed in execution because our social norms simply don’t allow for such in depth, and quite importantly automated, sharing of information. Some of the acts that were allegedly violated included the Electronic Communications Privacy Act, the Video Privacy Protection Act, the California Consumer Legal Remedies Act and also many others such as the California Computer Crime Law and the Computer Fraud and Abuse Act[14]. The Beacon feature was pulled from Facebook when they updated their privacy settings in December 2007 and although no money was handed out to negatively affected Facebook users of the Beacon program, a $9.5 million fund for privacy and security was created. The plaintiffs did also get some money; Lane received $15,000. Sean Martin and Mohammed Sheikha received $7500. The other representative Plaintiffs each received $1,000. All of this money also came out of the Facebook settlement fund[15].

So where will the future take us? Will we live in even less privacy? Will we live in public? Users of the Internet will always do what they want. As seen in the Lane v Facebook case about the Beacon program, if a company goes over the top then they will be punished for it. It will always be a difficult decision to state what over the top means, but it is certain that the people will let their voice be heard. In a sense, we’ve always lived in public. We have always physically been visible to other human beings and it’s only personal information such as income, relationships and thoughts that have stayed private and these will always be private if that’s what someone wants. Technology has always made every day tasks easier for us and the Internet has done so in a massive way. The trade-off of privacy and convenience in the case of the Internet has been worth it, but what’s most important is for companies and their websites to become transparent. Education is always key to understand what’s happening and it is a websites duty to make it clear to the user what information is public to the world, public to a friend network and private to just themselves.

The question “Do We Live in Public?” really comes down to how each individual interprets and uses the Internet. Some may remain classical and ignore social networking websites, search engines, et cetera altogether whilst other people won’t mind the trade-off and will happily use the websites. As long as websites have a good transparency and educate the user on their actions, the future should look good.

[1] “Toor2122 – Steve Rambam – Privacy Is Dead – Get Over It"

[2] New Oxford American Dictionary




[6]Blogger sleuths uncovered its more likely business model: it was exploiting a government subsidy that pays Iowa a few cents per incoming long-distance call. Iowa was sharing the revenue with Futurephone.” –










Ruby Tuesday 01 // Hello World!

Ruby Tuesday is an ongoing series of blog posts in which I share my experiences of learning a completely new and unfamiliar language, Ruby on Rails, for my final University Honours Project. View all Ruby Tuesday posts here.

Jumping into a completely new language can be extremely be daunting; it’s always a frightening feeling to jump into an unknown territory, a place that’s out of someone’s comfort zone. This is exactly what I’m going through and in this series of blog posts (posted either weekly or biweekly on Tuesdays) you can follow my experiences of learning a new language, Ruby, and how I cope with it. 

Every Computing Science Student at the University of Aberdeen goes through the CS4526 course, or more commonly known as the Honours Project*. In this course (one of the final two courses of our degree, the other being Professional Topics in Computing) we undertake a project under the supervision of a teaching staff in the department. In my case: Bruce Scharlau. The Honours Project I’m working on is an Audience Mapping Tool, cloud based of course! Working closely with a client, The Polka Dot Factory based in Edinburgh, the requirements were set and brainstorming began. 

I soon met my first major hurdle; deciding what language I should use. Ruby, Java, Django, PHP? There’s an endless choice of languages and frameworks to build web apps these days, but I decided to narrow my choices down to Java and Ruby for the main Business Logic. Java seemed extremely enticing; 3+ years of learning the language and I feel quite comfortable tackling Java problems. Using Spring Roo and the Spring Framework allows for lightweight development with fast results while being able to use 100% Java knowledge. On the Ruby side we have Ruby on Rails and the hundreds of gems that are available. I spent last weekend playing around with both languages, weighing the pro’s and con’s of each. After todays meeting with Bruce, I’ve decided on my final technologies.

Technology Choices:

  • MySQL
  • SimpleGeo
  • Twitter API
  • Ruby on Rails
  • Google Maps
  • Heroku & Git

After having installed Ruby, a bunch of gems and looked through a lot of documentation, it’s time for my first Ruby app! As per usual, let’s write a Hello World app. I’m currently using Smultron as my editor for Ruby files. 

[Image no longer available]

That’s it! That’s a simple Hello World app written in Ruby. To run it, I’ll need to type the following into Terminal.

[Image no longer available]

That’s my first attempt at coding Ruby, and after having read through many of the tutorials available online I can safely say that I will definitely enjoy learning this new language. My main reason for choosing Ruby over Java was because of the vast array of great tutorials, gems, frameworks, quick deployment and the generally great community on the web. 

Bellow are some links to the tutorials and books I’m currently working through and my aim for next week is to set up the basic components of my application; i.e. understand how I’ll link Twitter data into SimpleGeo and join that together with Google Maps in order to display it in a web app written in Ruby on Rails. Ambitious, but I’m excited – do wish me luck!

Further Links:

*N.B. Some students may take a Joint Honours Computing Project instead, coded CS4525. The main difference being that they are undergoing a Joint Degree Program, or sometimes known as a Double Degree!

2011: Getting Things Done Edition.

I’ve never been a huge fan of new years resolutions; to me, they always seemed so pointless. I’ve always been a person who likes the idea of a ‘getting things done’ lifestyle; no procrastinating, no lazying about. If something needs to get done, do it. Towards the end of 2009 I set myself exactly that goal for 2010; simply get things done. 

Frankly, I failed. There’s no drivers license in my wallet. Learning to surf and wind surf are still dreams to come true. I have zero knowledge about rock climbing. My skateboard and snowboard are still tucked away in my cellar. I can sum up my 2010 achievements on one hand; 2011 needs a change.

Here’s what I know about 2011:

  • I have my Computing Science course at the University of Aberdeen to finish (Honours Project and Professional Topics in Computing).

Here’s what I don’t know about 2011:

  • Whether I’ll graduate or go into a Masters course.
  • Where I will live. If I graduate, will I stay in Aberdeen? Move to Munich? Apply for a green card and try my luck at moving to San Francisco?
  • Who I’ll spend my time with (if I move away, will I know anyone?). 

With that in mind, let’s start a new chapter of my life! There’s a blank canvas eagerly waiting to be drawn on and there’s nothing that can stop me enjoying a beautiful year 🙂

  • Build Core Strength. 2010 was a complete downfall as far as exercise goes. I lost 6 stone throughout the start of my second year of university (2008 – 2009) and once I got to a healthy body weight, I completely stopped exercising. Although I never gained weight in 2010, I have completely lost all the body muscle I previously built up. I hope to build my core strength in two parts: The Hundred Push Ups Training Programand then Rock Climbing
  • Maintain a Healthy Weight. Along with the exercise regime mentioned above, I want to maintain a healthy weight. 
  • Experience Adrenaline. It’s been far too long since I’ve had a good adrenaline rush and it’s about time I experience some again. Bungee jumping or Skydiving are possibilities, but a simple snowboarding holiday could also suffice.
  • Learn to Meditate. Along with wanting to build core strength and general wellbeing I want to understand and control my inner peace. I know meditating, or rather learning and understanding meditation, will take time, but I know in the long it will be extremely beneficial to me.
  • Learn to Drive. Actually, this should read get a drivers license. My dad taught me driving years ago, but having lived in cities I’ve never had the need to have a drivers license. However, I can’t predict where I’ll be towards the second half of 2011 so having a drivers license should open up more possibilities as I’d be able to commute and travel.
  • Maintain a good fluid intake. In previous years I’ve easily let healthy drinking slip my mind and I could often feel the effects of dehydration towards the end of a day: extreme tiredness and dizziness. I don’t want to let that happen as often and simply carrying a water bottle around with me shall solve this. 
  • Continue Drinking Green Tea. I’ve recently switched to green tea and I’ve started to notice the health benefits. Green tea is a great healthy warm drink and replacing constant hot chocolates has really made my body feel better.
  • Healthy Snacking. I do enjoy the occasional treat here and there, who doesn’t?! But snacking on cup cakes, brownies and Haribo needs to stop. I’ve recently signed up for Graze and I plan to cut out all unhealthy snacks completely by replacing them with healthy, natural portions of nibbles I hope to have more consistent body energy. 
  • Solder, Build Things and Hack Away! As a kid, I loved being technical with my hands. I helped out the art studio at my school by putting the finishing touches to people’s pottery and preparing them for the furnace thing. I honestly can’t remember the pottery vocabulary and what I did, but I remember my teacher saying I had very steady hands and I should apply them more. I got into soldering after a physics practical in which we built our own random die generator. I started hacking away on my Xbox soon after that, installing mod chips and custom hardware/software. I really miss those days and I hope to slowly bring back hobbies which include technical know-how and using my hands. Read below about my knitting experience!
  • Learn the Basics of Sign Language. I know I won’t be a professional sign linguist, but I am extremely eager to start exploring the world of sign language. I find it extremely interesting and think it’s one of the most beautiful languages around. 
  • Keep a Journal. In 2010 I tried hard at keeping journals; I had a dream journal, normal journal and a journey journal. All my journals were forgotten about and only ever had few entries in them. My dream journal is probably the one with most pieces in it; I had fun psycho-analysing my dreams and writing them down. It’s a month into 2011 and I’ve started a new journal. It’s a combination of a journal, dream diary, motivational pieces and todo lists and so far I’ve been good at writing in it. It’s not a daily activity I plan to do, but as long as I have an entry a week and my dreams written down, I’m happy. I also have another journal for my university work; it’s got ideas, tasks and notes as I work through my Honours Project and other personal software projects. It too has been used and I hope it will continue to be used throughout the year.
  • Write More Letters. 2010 was the first year I ever wrote someone a post-card, and I absolutely loved it. I hope to send out more mail, letters and post-cards as I experience 2011.
  • Get More Involved. Throughout school I had to be involved; it was part of the Duke of Edinburgh and International Baccalaureate to stack up hours of activities, whether creative ones, sporting ones or service ones. I actually enjoyed it too; I never stopped when I reached the required hours. I’ve let that passion of being involved slip and have hope to bring it back this year. As mentioned below, I’ve joined a knitting group and already learnt a new skill. I want to be more involved with charity, promoting events, helping others and generally ‘being out there’.
  • Surf / Wind Surf. I failed at attempting either in 2010. Let’s change that!

So, nothing huge here. No life changing goals or anything, just a few positive uplifting goals to keep the rest of 2011 interesting.

Already completed at time of writing:

  • Stop Bad Habits. My worst habit is picking skin on my fingers. I woke up on New Years and spontaneously decided to never ever be OCD and simply stop picking on them. It’s a month into 2011 and I’ve completed this goal so far. Most habits/addictions take two weeks to adjust to, to get over that ‘urge’. I’ve been good and can say I have completed this goal. Other habits have also been taken care of and I’m extremely glad to have had such a positive start to the year!
  • Learn to Knit. I’ve always loved technical ‘puzzles’ and as mentioned above, I want to be more technical with my hands. I’ve been to a few knitting group sessions and have really enjoyed it so far and have already completed my first knit! I can definitely say I’ve learnt something new in 2011.