Computer Science wiki for Revision now up!

| | Comments (0)
Yes revision has begun, and I had a novel and possibly unique idea in regards to a wiki - I could use it to formalise my revision work, by slowly adding my work up as a wiki.


Okay. Maybe it's not too unique then, but it sure as hell is helping me revise.

Anyway, the link is here and at the top left of the layout on this page.


A while has passed

| | Comments (0)
Here's the thing... I've been busy of late, very busy. 

Unfortunately, this blog has suffered because of it! Anyway, rant over!

Another thing... I didn't get past the second interview with Google (yeah, I may as well use names now!). They didn't attribute this decision to my phone interviews - I had performed well at this stage I was told, but instead it was my work experience that brought me down. 

The second phone interview was much harder than the first. The first was really just to make sure that I was breathing and not a complete idiot. However the second interviewer asked a question every minute, and were all like as such:

 - Why did Google buy Google Earth?
 - What would you do with 5,000 computers and 5 paid engineers?

Personally, I'm not that this is the actual reason. I have plenty of experience in the IT workplace, and definitely more than than most of the peers on my course. SO! I think it was more down to my lack of age, rather than experience.

Despite all of this, Eli Lilly have very nicely kept my pending job for my as a Technical Analyst at Erl Wood. Today I had a familiarisation day which went well, and have given me a lot more confidence in what I'll actually be doing there!

My exams start next week, but I will hopefully post a bit more frequently that once every two months!

In the matter of only 2 hours...

| | Comments (0)
I have been looking frantically for 'internships' for my next University year. I spend a year in the computing industry working for a real company on a real project, earning real money and hopefully setting me up for my career after I leave Uni.

I originally applied to (a very large non-Microsoft company) - as you do. Being my super-duper numero-uno choice for a placement, I applied for their Software Engineer intern in London on their first day that they started accepting applications - 1st November '07. Look at me trying to be organised! 

After a good month of no response from them, I was forced to begin looking elsewhere for placements.

I picked a local company to Reading that specialise in financial institution web design (banks basically) which I'd prefer not to name in case i get sued for libel or something. When they gave a set of guest lectures, they appeared to be a young but relatively experienced web company which was uber-local to the University - perfect!

After applying to their intern scheme, and a few emails between me and a big cog in the company, I'd secured an initial interview. After this first interview I believed I performed reasonably, and when they offered a second 'more formal' interview, I thought it could only mean good things.

The second interview then passed, and they told me that they would get back to me with a decision by the end of the month (January). 

29... 30... and the 31st of Jan passed and no response - I feared the worst. 

These fears were confirmed in the worst possible way by me discovering that one of my course
acquaintances showed me his acceptance email from them. Not the best way to find out you don't have a job...

Shortly after I got feedback from the internship officer at Reading. She said that the company could not fault my interview, but only said I 'had asked for too much money during the interview'. Bullplop! They asked me what the average internship wage was, in which I responded with £14k minimum (which is coincidentally what the Big M offer...), and the offer that came through as acceptance was for £13k. Rudeness!

Anyway, I digress... After this setback, I was forced yet again to rethink my options, and after a meeting with my internship officer, she secured me an interview with a large pharmaceutical company based in the States, but with offices near Reading.

After the painless interview, I believed that I had performed well (but I thought the same before). My placement officer told me that the decision would be relayed to me later in the evening of the interview (last Wed).

At 9pm I checked my inbox, and not only found a 'Congrats' email about the previous pharmaceutical company, but also a response from (a very large non-Microsoft company) !! WOOP WOOP! I saw it and literally leapt into the air in celebration.

The email explained that I wasn't suitable for the Software Engineer internship, but the Associate Product Manager job was! This intense job allows an intern to direct the shape a handful of their products: released, unreleased, free, or multi-billion dollar a year - It's all the same!

I am understandably ecstatic at the prospect of this, and I can't wait until I have a chance to show off what I can achieve for the company.

Updates will follow, I guarantee.

Microsoft and Yahoo? 2 + 2 ≠ 4!

| | Comments (0)
All this Microsoft and Yahoo stuff has got me thinking -- how desperate are the CEOs of Microsoft to narrow the gap between them and Google?

At the current time Google have a 55% market share, up 20% in 2 years. Pretty good growth for any business. Microsoft and Yahoo (including all their subsidiary companies) only make up 45% and their market share is slipping year on year because of Google. Microsoft and Yahoo are desperate for more share in the market, and I can't blame them.

But hang on. Even if the $44.6 billion Microhoo! deal does happen, do they really expect their market share to improve, profits to increase and Google to die as quickly as it rose in the sidelines?

The most likely thing that will happen is that competition will increase against Google, which will all but fuel Google to further improve their already superior search. Come on! If you're two biggest competitors have to merge just catch up with you, you have to be doing something right!

For me, and other internet developers, the merger would be good news however you look at it. Better tools and APIs from Google, a comparable alternative to Google and maybe a Yahoo page written in ASP! 

Steve Ballmer said:
“We have great respect for Yahoo!, and together we can offer an increasingly exciting set of solutions for consumers, publishers and advertisers while becoming better positioned to compete in the online services market,”

What he meant to say was:
“We are so desperate to kill Google that we're willing to acquire Yahoo, once the only company to compete with us. To make sure they can't say no we're going to be throwing an inordinate amount of money at it, and hope that this whole Google business can just go away! *throws chair at reporter* ”

I believe that Microsoft were better than to think that "2 + 2 = 4" on the web, and that just bolting different companies together will solve all their problems. It's like shoving two cars together, and thinking it'll go quicker, or putting two stupid people together and making a genius. It just doesn't work!



Andy Callaghan: Pythonian

| | Comments (0)
I have recently found myself deviating away from C and C++ towards a newer, cleaner, smarter and much less annoying programming language - Python.

I was knocked back from it's sheer simplicity in code and the vast selection of built-in libraries for easy programming. For example this one line of python code broadcasts a web-server on port 8000:
python -c "import SimpleHTTPServer;SimpleHTTPServer.test()"

Ridiculous! And how about this... completely tokenise a string, one line:
"Hello my name is Andy".split(' ')
This one may not seem too amazing; php has the explode() function which basically does the same, but this very piece of code took me well over 50 lines of C code to do exactly the same thing. 

Also Python natively supports Regular Expressions, whereas it would have to be a dodgy undocumented class add-on for C++.

This is exactly why I have chosen to do my next piece of Compilers coursework in Python. We are to construct a compiler that has an input of a self-defined language, use Lex (or equivalent) to produce perform lexicographical analysis and tokenization, Yacc (or equivalent) to produce the parser for the language, and my brain (or equivalent, i.e. Google, Wikipedia et al.) to produce efficient assembly language for the input source.

Just starting this coursework in C++, would involve extensive research to discover how one would accomplish the first two stages, let alone the last - and evidently most important one.

However in Python, I have imported the built-in Lex and Yacc tools, written 62 lines of code and the code already tokenizes and parses my custom language. All that's left is the funny error messages (see below) and assembly code production.

Funny compiler error messages in Python
I'm never turning back. 

There go my printer credits...

| | Comments (0)
My XML coursework is finally done. As I couldn't get any work done at home, I went into Uni from 5 on Saturday...

... at 2am, I finally left with the coursework done. I walked back home feeling zombified with companion from exceedingly drunk Union-ites. This is a screeny of my report properties:
Document properties of XML report
Yes... that's 6 hours 2 minutes and 58 seconds of editing! Ouch.

During printing the 23 full colour pages of the report, my printer credits plummeted...

The fall of computer credits...

Ballsy move Apple...

| | Comments (0)

Just saw this on YouTube...

This all out war from Apple against Vista is an unsurprising but still ballsy move by the fruity computer company

Still, probably one of the best ads I've ever seen on the web...

Coursework Hell, Convex Hull.

| | Comments (0)
I feel overwhelmed that my Convex Hull algorithm coursework is complete.

We got just over 4 weeks to complete this work, but along with another 4 pieces of coursework that were due in before this one -- most people didn't start until the last week, and are therefore unable to get anything complete in time. Luckily, I started this work a week before we were to hand it in, and handing it in 5 days late... oops.

Due to no one handing the work in on time, a lot of jiggery pokery has been happening behind the scenes to make sure that we don't get marked down for the late hand-in.

I implemented the entire program in C++ using classes, but not to the best effect I could have done. I also had to use Divide and Conquer methods to optimise the algorithm execution and show of that I can code it...

It was also the first project that I've ever implemented in Xcode - Mac OS X's development program. I was quit surprised at the relatively shallow learning curve of using the IDE, but the compiler errors from gcc which I've used before in KDevelop, were not as useful as they could have been. It didn't help that I upgraded to Leopard half way through development -- I got a lot of linking errors when I did...

Well, if you're just reading this to get the code, here it is:

Report:

Code:

Reading University's secret shame...

| | Comments (0)

Take a look at this picture:

Reading University - Black Hore House
This picture was taken swiftly by me on an open day

Could prospective undergraduates and parents then have a completely different view on the University's on-campus hotel, 'Black Horse House' 'doubling up as a brothel?

Only time will tell...

Buried in coursework

| | Comments (0)
I probably shouldn't be writing this, but never mind!

I'm currently up to my neck in computer science coursework, a total of nine pieces in all.

1st: Essay on trends of computer architecture development (done, tomorrow)

2nd: 'Disscussion' to contrast fixed, variable and hybrid length instruction encoding sets. (not started, tomorrow [oops])

3rd: In groups, draw up 4 types of UML diagrams for a made up pesticides company (half done, friday)

4th: Develop and document a graphical implementation of 2D Convex Hull in a language of your choice. (algorithm kinda working, next friday)

5th: Create XML, XSLT and XSD documents for the C++ implementation of MPI + fat report. Goto xml.microplop.com to see it!!! (half done, three weeks left)

6th: Read, discuss and critique a Divide and Conquer algorithm based technical paper. (DONE!)

7th and 8th: Two Career Management Skills coursework peices, about something... I haven't read it yet.... (two weeks)

9th: Design, develop and document a UK charity website in a team for a real client, using best design principles possible. (Febuary final deadline, but prototype site in 2 weeks)

I think that's it! Glad to get that off my chest!

Expect to see a fat article on here soon about computer architecture, and the lively and sexy delights of varying instruction set encoding systems!

Advertisements

Photos

  • Making a Python based compiler
  • printer-credits.PNG
  • sri-lanka-phishing.PNG
  • macbook-open-white.jpg
Powered by Movable Type 4.0