A really quick post because it's the end of the evening now.
I've basically been trying to get some book/music links working on the Top Gun Interactive website so that we can have everything link through to Google or Amazon. I really tried for ages to get the google API working but it doesn't seem to like the more niche books (I appreciate that Google are having to deal with rights issues etc). So I looked at Amazon to see what they could provide.
It turns out that Amazon have an entire monetary system in place in terms of linking to their website. Amazon provide customisable widgets which for the moment I've managed to get working for both the "currently reading" and "currently listening" lists. It basically works as a way for Amazon to link back to their products and then you get a cut of the fees if you provided that link. I've signed up because at the moment all I wanted was to see how Amazons web solutions work (below) and then we can begin to build it and style it into the website.
There is still a lot of work to be done to the main website (this is literally down to Alex and I finding the time) but I think that as long as we continue experimenting with different solutions/APIs all over the web then we could actually end up with a really nice webpage.
Thursday, 28 April 2011
Thursday, 21 April 2011
Packet Switched Easter
I'm heading away this weekend to spend some time at the seaside, got to take advantage of this Britishly summer weather before it disappears! However today I spent some time looking into my Telecommunications and Transmissions article that needs doing for next week.
For this unit I have chosen to write on a topic that I would deem to be a relevant topic in todays evolving telecommunications landscape - Traffic Shaping. At the moment my submission breaks down under the following categories.
Topic - ISP Traffic Shaping and Deep Packet Inspection.
What it is
How it affects us
Why it's being done
The benefits and drawbacks
Today I have been mostly focussed on the first point, what traffic shaping is, and as a result I have been looking into what packet switched networks actually are. I haven't got much time before I leave but this link will lead you to an interesting history behind the development of this new type of networking, focussing on the work of Paul Baran (essentially the father of packet switched networks) and his work at RAND during the 1950s.
Enjoy! and have a great Easter.
Tuesday, 19 April 2011
Quicksilver Lives!
I havn't had a chance to get this downloaded yet, but I've just read my daily blog feeds and Lifehacker has informed me that Quicksilver is availible for download again.
Quicksilver is literally a keyboard shortcut lovers dream for OSX, I use it constantly everyday (it's completely replaced the command + spacebar spotlight search) but unforutunately soon after I picked it up it was discontinued. Now it's back! It's apparently got a slew of new features and loads of bug-fixes which I'll check out when I get home.
Monday, 18 April 2011
Javascript (window.onload events)
For my engineering project I've had to use various different languages (C++, HTML, PHP, Javascript to name a few), I thought that if I occasionally blogged about different things that I'm learning, not in any particular order but just interesting points of reference (like my post on HTTPS) then I could assist my learning and hopefully help any others who are browsing the Internet looking for some reference material.
One very common approach to having a script method run when a page loads is to attach a method to the window.onload event. However before I started investigating this, I found it very useful to remind myself what objects and methods actually are in Javascript.
For example.
The property 'minutes' is attached to the object 'watch' using a concatenation, what we then do is increase it's value by 5 each time the object is called.
Now what happens is; IF the watch.minutes property exceeds 59, then we subtract 60 from watch.minutes and increase the watch.hours property by 1.
So now that we've had a brief overview of objects and methods (there are always a few other ways of writing all of these, many can be found online) it's time to move onto the window.onload event.
window.onload
Some scripts require that you run something immediately after the web page finishes loading. The normal way to do this is to add an onload attribute to the body tag. You don't have to do it that way though, you can set up a global event handler to do it instead.
This is done for two reasons, with a global event handler it is easier to add the code to webpages, rather than having to edit the body tag. Secondly if the event handler is added to an external Javascript file attached to the page, then you may not need to edit the page at all.
However, global event handlers do require that you use them to call a function, and not have them execute code directly. This is done because we probably want to refer to the page content itself and we can't do that until that content exists on the client-side to be referenced.
An example of how this event can be triggered is below:
Here the function init() is defined first, then it is called and executed using the window.onload event handler. Instead of assigning a predefined function you can also assign a 'nameless' function to the event handler:
Or use a function() constructor:
Despite it's apparent usefulness there are actually many situations in which using the window.onload event is not the best method, from what I have briefly read Modern Ajax frameworks have now introduced the idea of a 'document ready' event. This is an event that will fire when the document is ready to have DOM (I'll do an article about the DOM at a later date) manipulations performed on it. The "onload" event fires only after EVERYTHING on the page has loaded. The jQuery framework is a good place to start with document.ready functions because it doesn't change any of Javascript's core functionality, and will generally stay out of your way and let you do things as you like when you want to.
I find this little investigation to be really useful in helping me clarify a few things, it's presented me with a load more questions to investigate, but that's the process of learning! More information on Javascript basics and the window.onload event handler can be found across the web.
Window Onload Events In Javascript
Objects and Methods
A method in javascript is a special kind of function that comes with using an object orientated language. They are functions that belong to objects which means that they are sometimes called "member functions" and they are designed to reduce the amount of repeat programming that is required by not applying themselves to a specifically named object (Object1, object2, object3 etc..) but they can operate directly on the properties of the object that they belong to.For example.
watch.minutes
The property 'minutes' is attached to the object 'watch' using a concatenation, what we then do is increase it's value by 5 each time the object is called.
if (watch.minutes > 59)
{
watch.minutes -= 60;
watch.hours += 1;
}
Now what happens is; IF the watch.minutes property exceeds 59, then we subtract 60 from watch.minutes and increase the watch.hours property by 1.
So now that we've had a brief overview of objects and methods (there are always a few other ways of writing all of these, many can be found online) it's time to move onto the window.onload event.
window.onload
Some scripts require that you run something immediately after the web page finishes loading. The normal way to do this is to add an onload attribute to the body tag. You don't have to do it that way though, you can set up a global event handler to do it instead.
This is done for two reasons, with a global event handler it is easier to add the code to webpages, rather than having to edit the body tag. Secondly if the event handler is added to an external Javascript file attached to the page, then you may not need to edit the page at all.
However, global event handlers do require that you use them to call a function, and not have them execute code directly. This is done because we probably want to refer to the page content itself and we can't do that until that content exists on the client-side to be referenced.
An example of how this event can be triggered is below:
function init(){
...code...
}
window.onload=init;
Here the function init() is defined first, then it is called and executed using the window.onload event handler. Instead of assigning a predefined function you can also assign a 'nameless' function to the event handler:
window.onload=function(){
...code...
}
Or use a function() constructor:
window.onload=new Function("...code...");
Despite it's apparent usefulness there are actually many situations in which using the window.onload event is not the best method, from what I have briefly read Modern Ajax frameworks have now introduced the idea of a 'document ready' event. This is an event that will fire when the document is ready to have DOM (I'll do an article about the DOM at a later date) manipulations performed on it. The "onload" event fires only after EVERYTHING on the page has loaded. The jQuery framework is a good place to start with document.ready functions because it doesn't change any of Javascript's core functionality, and will generally stay out of your way and let you do things as you like when you want to.
I find this little investigation to be really useful in helping me clarify a few things, it's presented me with a load more questions to investigate, but that's the process of learning! More information on Javascript basics and the window.onload event handler can be found across the web.
Monday, 11 April 2011
IPP Learning Blog
So it's come to that time, one of the reasons that I started this blog was because our IPP (Industry and Professional Practice) unit at Ravensbourne requires that we write a learning blog.
In terms of actual assessment criteria for the blog there aren't really that many, the ones that are listed on the Project Brief are covered in the accompanying 800 word written summary so there is a little more free reign in the learning blog.
Initially I wasn't enthused about writing a blog, I couldn't see what relevance it would have too me, however I'm really enjoying it now. It allows me to put down my thoughts and gives me a little project to do every week. I'll try and continue with it, documenting my side projects, at the moment I'm playing around with SSH and local web-hosting which is actually teaching me a lot about Linux systems and web coding, I'm also starting a project that is Flash based to help me develop some skills in that area as well.
I hope that it can be seen from the blog that I've actually got quite a lot of things going on around me and in my head! I'm always looking to learn new things and I'm always willing to push myself into different projects and life experiences to broaden my horizons and develop my life skills.
On a final note, I know that I have a term left in Ravensbourne but I've actually really enjoyed my time there, I've learnt a lot and I know that I've developed as a person. I've met some great friends along the way, which does remind me of something that one of the lecturers said in the first term about how you would find you're good friends during your time at University. I'm looking forward to leaving though and heading out into the world and hopefully doing and experiencing some amazing things.
In terms of actual assessment criteria for the blog there aren't really that many, the ones that are listed on the Project Brief are covered in the accompanying 800 word written summary so there is a little more free reign in the learning blog.
Initially I wasn't enthused about writing a blog, I couldn't see what relevance it would have too me, however I'm really enjoying it now. It allows me to put down my thoughts and gives me a little project to do every week. I'll try and continue with it, documenting my side projects, at the moment I'm playing around with SSH and local web-hosting which is actually teaching me a lot about Linux systems and web coding, I'm also starting a project that is Flash based to help me develop some skills in that area as well.
I hope that it can be seen from the blog that I've actually got quite a lot of things going on around me and in my head! I'm always looking to learn new things and I'm always willing to push myself into different projects and life experiences to broaden my horizons and develop my life skills.
On a final note, I know that I have a term left in Ravensbourne but I've actually really enjoyed my time there, I've learnt a lot and I know that I've developed as a person. I've met some great friends along the way, which does remind me of something that one of the lecturers said in the first term about how you would find you're good friends during your time at University. I'm looking forward to leaving though and heading out into the world and hopefully doing and experiencing some amazing things.
TED - Mick Ebeling: The invention that unlocked a locked-in artist
I love TED talks, in-case you are't aware of what it is, TED (Technology, Entertainment, Design)is a U.S private non-profit foundation best known for its conferences held all over the world devoted to what it calls "ideas worth spreading".
I blogged recently how I have BBC news open up every morning through an AppleScript, I've done the same thing with TED podcasts, effectively making them my alarm. I download the latest one a night before and stick it on my "alarmPlaylist" on iTunes. This way it gently wakes me up every morning, giving me something to think about every day.
Last week I woke up to what has to have been one of the most inspirational talks that I have seen in a long time, I had forgotten to delete it off the playlist so it played again this morning and just reminded me how fantastic it was.
It is a talk by Mick Ebeling who founded the Not Impossible Foundation and he tells the story of how he and a team of collaborators built an open source invention that gave the graffiti artist TEMPT (who suffers from the nerve disease ALS, leaving him completely paralysed) the means to make art and communicate again.
More information can be found about TED and here is the full link to the talk.
I blogged recently how I have BBC news open up every morning through an AppleScript, I've done the same thing with TED podcasts, effectively making them my alarm. I download the latest one a night before and stick it on my "alarmPlaylist" on iTunes. This way it gently wakes me up every morning, giving me something to think about every day.
Last week I woke up to what has to have been one of the most inspirational talks that I have seen in a long time, I had forgotten to delete it off the playlist so it played again this morning and just reminded me how fantastic it was.
It is a talk by Mick Ebeling who founded the Not Impossible Foundation and he tells the story of how he and a team of collaborators built an open source invention that gave the graffiti artist TEMPT (who suffers from the nerve disease ALS, leaving him completely paralysed) the means to make art and communicate again.
More information can be found about TED and here is the full link to the talk.
Friday, 8 April 2011
Local Webserver
Again I find myself in the situation of not having blogged at all last week, trying to find the time to do this is proving quite difficult, never-the-less I shall carry on. It's actually becoming quite enjoyable!
I'm midway through the first week of my Easter break and it's actually really nice to take some time out (it's a hard life I know!). What I really wanted to do with this post was briefly talk about a little side project that I've had going on for the past few days
I'm midway through the first week of my Easter break and it's actually really nice to take some time out (it's a hard life I know!). What I really wanted to do with this post was briefly talk about a little side project that I've had going on for the past few days
Since Alex and I have started doing a bit of web development we've been approached by a housing company to create a website for them, they wanted to do it using a Wordpress template but neither of us has really used it before. The initial idea seems simple enough, just a tiny bit of CSS and PHP work with the job becoming more complex later on. Perfect!
However one thing that we are going to need is a way to test out our work, and that will require having a web server with Wordpress installed . . . enter old and unused computer. I'd been mucking around with this old Dell PC ages ago and had wanted a Windows and Linux box to muck around on so that I can become proficient cross-platform, I'd basically just wiped the hard-drives and then completely reinstalled XP and Ubuntu to start with, what I now wanted to do was set this box up permanently and have it a webserver on our local network.
This was actually a really simple task to accomplish, the web resources for installing a web server on Ubuntu are numerous and clear, so it was a case of downloading the LAMP stack as suggested by the Ubuntu help forum and after a bit of PHPMyadmin configuration I was ready to go. I never thought it could be that easy if I'm honest!
Installing Wordpress was then just as easy by following the instructions on the Wordpress help wiki, again some minor PHPMyadmin work and that was it we were up and running! What I've also done is made the www root folder a shared folder on the local network so that it is easy to change around the files from either of our computers which should make things much easier.
I know I haven’t actually written much on the process but I thought it would be best to share a general overview as there's really no point in repeating what is on the help pages because it really is that simple. This is going to be a great help though, both in terms of helping me learn a little bit about server administration and as a real testing ground for any development work that we do. The next step is to investigate accessing the PC via SSH, not because it's essential but because this could prove to be another technology and method that I may need to use in the future, there would be no better place to learn it than in a closed environment where nothing can (hopefully) go wrong!
I know I haven’t actually written much on the process but I thought it would be best to share a general overview as there's really no point in repeating what is on the help pages because it really is that simple. This is going to be a great help though, both in terms of helping me learn a little bit about server administration and as a real testing ground for any development work that we do. The next step is to investigate accessing the PC via SSH, not because it's essential but because this could prove to be another technology and method that I may need to use in the future, there would be no better place to learn it than in a closed environment where nothing can (hopefully) go wrong!
Subscribe to:
Posts (Atom)