Sponsored
Techradar |
- In Depth: 10 top Pages tips and tricks
- In Depth: How JavaScript helped transform the web
- Review: Panda Internet Security 2012
- Review: Kaspersky Internet Security 2012
- Buying Guide: 5 best Bluetooth keyboards for iPad
- Review: G Data Internet Security 2012
In Depth: 10 top Pages tips and tricks Posted: 24 Jul 2011 01:00 AM PDT Pages is Apple's word processing and page layout app, part of the iWork productivity suite for the Mac. It's extremely easy to use but is also very powerful - here's our list of useful tips and tricks to help you get more from Pages. 1. Tables of Contents (TOCs) Tables of Contents are useful for longer documents, and so easy to do. First, make sure you use defined paragraph styles for your headings. Now place the insertion point where you want it to be added, then use the Insert > Table of Contents command. This displays the TOC tab in the Document Inspector, and you check the box next to each heading style you want the TOC to include. If you check the 'Make page numbers links' box below, you can click on a page number in the TOC to go straight to that heading. This works both in Page and exported PDF version files. 2. Alignment guides and preferences The automatic Alignment Guides are really useful for lining up any objects you add to your documents and 'snapping' them into position. However, they can sometimes be distracting and get in the way, especially when you're trying to position an object very precisely. But they are easy to get rid of, all you have to do is hold down Command as you drag them and this will temporarily disable them, leaving you to get on with your work. 3. Paste while preserving formatting Sometimes you'll want to paste in text or numbers from a web page, an email or another document, but the original text formatting (font, size, colour and so on) will be used, which means you may then have to re-style the text. The solution is not to use the usual Command+V 'Paste' shortcut, but use Shift+Option+Command+V instead. This matches the new text to the existing style at the insertion point. 4. Option-click tab to bring up multiple inspectors While the Pages Inspector doesn't actually take up that much space on your screen, it does a huge amount of work, and so it can get really tiresome having to continually swap from one tab to another. But if you Option-click on a tab icon instead, you'll see that it opens up a brand new Inspector window. You'll soon find that having a couple of your most-used Inspectors open at the same time will save a lot of clicking. 5. Outline mode Outlines are really useful for planning and organising documents, and here's not one but three outlining mini-tips. First, you can save a lot of manual formatting by choosing a suitable Outline Template. Second, there's a button on the toolbar for reducing images to unobtrusive thumbnails. Third, there's another button that curtails long paragraphs into a single line. 6. Password protection There are lots of reasons why you might want to password-protect your documents, such as you are using a shared computer or you are working with sensitive information. If you take a look at the bottom of the Document Inspector you'll see a 'Require password to open' checkbox. You can choose your own password, or let Pages suggest one for you – and you can type in a hint in case you forget your own password. Duh! 7. Word counts If you're asked to write an essay, a report or a magazine article, you're probably going to be given a word count. So how do you know how many you've written? Take a look at the bottom of the window – the status bar shows you how many words there are in the document and, if you select some text, how many there are in the selection too. 8. Sections and Word Processing Sections are a great way to split up and logically organise long Word Processing documents and make them manageable. Each section can be moved around in the document by dragging its page thumbnail (outlined in yellow in the page thumbnail panel here). You can use different page numbering, headers and footers and column layouts for each section. 9. Tables can be spreadsheets The tables you add needn't just be boxes with words in. They can be used as mini-spreadsheets too, thanks to the functions in the Table Inspector. Format cells to contain dates or currency values, for example, and add a footer row to total up a column of figures. 10. Two Up page display When you're working on Page Layout documents, it can be useful to view facing pages side by side. But don't use the Two Up option on the pop-up page view menu at the bottom left of the screen. This is the wrong way to go about it because it will put the first (front) page of the document on the left and the first inside page on the right, and all the pages will be out of sync. Instead, click the 'Facing Pages' box in the Document Inspector. This will put the first page on the right and will display page thumbnails as 'spreads'. |
In Depth: How JavaScript helped transform the web Posted: 23 Jul 2011 05:00 AM PDT Pretty much wherever you go online these days, you'll be using a web page with some level of intelligence behind it. It may be something as simple as registering the fact that you're viewing the page, it may be tracking your likes and dislikes, or it may be providing an animation to make the experience of viewing the page better and more interactive. No matter what's happening under the hood, it's most likely JavaScript code that's doing the work. Project Mocha Back in 1995, Netscape hired Brendan Eich, then at MicroUnity Systems Engineering, to help out with a new project called Mocha for the next version of the Netscape Navigator browser. Sun Microsystems had only recently launched Java applets – little programs that could run in a browser – but it needed some kind of 'glue code' for the browser to allow them to run. Eich decided that a simple script language would be the answer. He opted for simplicity, because he realised that in all probability it wasn't going to be programmers creating a web page with Java applets, but web designers. Those designers would be using Java applets as black boxes that they would need to easily tie into the page. He started work on a loosely typed interpreted language that he eventually called LiveScript. Since his intended users weren't programmers, he avoided standard development niceties like compilers and a formal object-oriented system, and made the language forgiving of minor mistakes that a more formal language would signal as errors and refuse to run. He also added hooks for code written in the language to interact with the page's HTML markup so that designers could manipulate forms, images and the like. Just before Sun Microsystems and Netscape announced the new language in December 1995, it was renamed 'JavaScript' in a marketing attempt to more strongly emphasise that its purpose was to host Java applets. This was, to put it mildly, disastrous: JavaScript is not Java and, apart from some superficial syntactical resemblances, doesn't work like Java. This naming decision has led to more problems for programmers than any other, because they have the expectation that the 'Java' in JavaScript means the Java they're used to using on the server side. The decision was also a disaster because web designers and programmers pretty much ignored Java applets, and instead used JavaScript to manipulate elements on the page (and it must be said, in the early days it was mostly image swapping: the rendering engine in the older browsers wasn't up to the task of rendering dynamic elements quickly). Since there was no need for a compiler, coupled with the fact that you could copy and paste scripts from other sites into your own with pretty much no changes, and that testing a script was so easy (just load the page, essentially) meant that JavaScript took off to an astonishing degree. 'Real' programmers dismissed it as a toy at first – the ZX81 of the web – but it soon became ubiquitous, especially once Microsoft got in on the game. Microsoft wades in Microsoft's response was typical of the time: it released a scripting language based on Visual Basic called VBScript. It was strongly tied to Internet Explorer, and to Windows. Since that wasn't to everyone's taste (Netscape Navigator was winning the browser wars at the time), Microsoft introduced its own version of JavaScript, called, for trademark reasons, JScript. JavaScript was a trademark of Sun Microsystems at the time, and is now owned by Oracle Corporation. The problem was that Netscape ruled the browser space, and was notorious for introducing new features and options quickly and assertively. From that era we have JavaScript itself, as well as cookies, frames and poorly thoughtout HTML markup (who could forget the 'blink' attribute?). Until IE3, Microsoft was playing catch-up in the JavaScript space. Eventually, with the push from IE3 users, Netscape and Sun were forced to seek the help of the European Computer Manufacturers Association (ECMA) to standardise the language, so web developers and designers would have some hope of writing code and running it without changes in the big two browsers. That led to the ECMAScript standard in 1997 (the third version of which, published in 1999, lasted for some 10 years). Yes, JavaScript is also known as ECMAScript. Dynamic HTML The next problem to afflict JavaScript and the browser space was Dynamic HTML (DHTML) and the Document Object Model, or DOM. When Netscape and Microsoft released version 4.0 of their respective browsers, they added better access to the attributes and elements of a web page. This access was made through a library known as the DOM, a hierarchical tree data structure that represented the web page as a set of objects, where some are siblings to others and yet others are children (or alternately, parents) to other elements. The figure above shows a simple HTML document represented as a DOM tree. In this, you can see that the 'head' and 'body' elements are siblings, whereas the 'h1' element is a child of 'body' (and therefore 'body' is the parent of 'h1'). The text nodes at the bottom are also part of the DOM, albeit not exactly as HTML elements. Unfortunately, although the general ideas about hierarchy and the DOM element names were common across IE and Navigator, Microsoft and Netscape differed on how attributes of elements were to be accessed. Although everyone was now pretty much in agreement about how the scripting language worked, using it with DHTML proved to be a nightmare – one that's still with us today. Anyone who has ever written cross-browser JavaScript code knows the weird byroads of incompatibility between the browsers' DOM. When Internet Explorer and Netscape 4.0 came out, you could soon get libraries that tried to make Netscape act like IE, and vice versa. Other developers released libraries that encapsulated the commonality between the DOMs, though that generally meant forsaking some of the better parts of each DOM. This split between the DOMs led to sites that worked well in one browser and less so in the other. The browser wars intensified as Microsoft, Netscape and others, together with the web standards body, the W3C, tried to standardise the DOMs. The process was lengthy, and, slowly but surely, Microsoft's Internet Explorer became the pre-eminent browser. Since IE was delivered as part of Windows, it also led to the monopoly trials against Microsoft, and the rise of the Mozilla and other browsers like Firefox and Opera. JavaScript itself stayed pretty constant throughout this period of entrenchment and consolidation since the third edition of ECMAScript (which everyone was using) proved very stable. There were high hopes for the fourth version of JavaScript, including a 'proper' object-oriented class model, but in the end the plans proved too ambitious and they were dropped for a simpler fifth edition – ECMAScript 5 – which is being integrated into the browsers' interpreters (Firefox 4 and IE9 both support ECMAScript 5). What's special JavaScript derives its syntax from the C family of languages. For example, it has the structured C-style 'if', 'while' and 'for' statements. This also means that JavaScript is an imperative language (the programmer has to explicitly state how the work is to be done, compared with a declarative language where the programmer states what the outcome is to be). As with C, statements are terminated by semicolons – although, unlike C, you can leave them off (JavaScript has a feature called automatic semicolon insertion that will attempt to place semicolons where they're needed, although it's not foolproof). The first thing that strikes most people about JavaScript is that it's dynamically typed. This means that variables don't have any intrinsic type attached (like 'int' or 'string'). Instead it's the value that variables hold that holds the type. For example, I could define a variable x to have the value '0' (a number) and then in the next statement set it to '0' (a string). Dynamic typing leads to a great way to use objects: duck typing. This is exemplified by the statement: 'If it quacks like a duck, walks like a duck and swims like a duck, then it can be assumed to be a duck.' So if I present to you an object that has methods called 'quack', 'walk' and 'swim', and that's all you care about, then for all intents and purposes the object is a duck, even if it looks completely different if you consider additional attributes. An example of this with JavaScript involves arrays. Arrays have some standard methods like 'shift', 'slice', 'join' and so on, which also work very well with 'array-like' objects like the arguments object. Duck typing is also an important part of using the DOM in JavaScript: if all you know about a DOM element is that it has addEventListener (and removeEventListener) then I can pass to you any object with those methods and get the observer pattern for free. Objects are paramount in JavaScript. Apart from some primitive types like null, undefined, boolean, number and string, everything else is an object. An object in JavaScript is essentially a hash table or an associative array, that is, all properties and methods of the object are held as a table of key/value pairs. This is completely different from strongly-typed languages where an object is cast from a class template and so all such objects are pre-defined and exactly the same. In JavaScript you can add new members to an object, modify them, or even delete them. Objects have a different inheritance model than the class model we're used to with strong OOP languages: JavaScript uses prototypal inheritance where the inherited behaviour comes from a prototype object. In essence, you create an object with some desired behaviour (the prototype object) and then associate that object with a constructor function. You can then create new objects using the new keyword with the constructor, and they will all inherit their default behaviour from the prototype. The figure above shows a schematic of prototypal inheritance between three objects. When you call the 'toString' method of the top 'julian' object (julian.toString()), JavaScript will first look in the 'julian' object for the method. Since it's not there, it goes to the prototype object, which is a link to the 'person' object; 'toString' isn't there either, so JavaScript follows the next prototype link to the 'ancestor' object. There it finds 'toString' and can call it. Notice that overriding a method in this scenario is accomplished by merely adding the method at a higher level – the interpreter will halt following the prototype chain earlier on. JavaScript functions Then we come to functions in JavaScript, which are where much of the language's brilliance shines through. The first and most important feature of JavaScript functions is that they are first-class objects. You can assign them to variables. They can be passed as parameters to other functions (usually known as callbacks in this case). They can be returned from functions, so you can implement the functional programming construct known as currying. Functions that take or return other functions are known as higher-order functions. Functions are objects, so they support their own properties and methods, and members can be inherited through the prototypal chain. So, for example, all functions have a length property (the number of parameters expected by the function) and a call method that allows you to execute the function bound to any object you like. Although a function may be defined as a method on some object, you can execute it as if it were defined on some other object. Functions can also be nested inside other functions. When you do this, scope resolution in JavaScript happens on a function level, not at the level of blocks (like every other C-style language). That means a nested function has full access to all of the local variables defined at the outer function (and if that function is also nested, to the local variables defined in that outer function, and so on). The next impressive thing is that the outer function can form a closure around its nested functions. In other words, a nested function can live on beyond the execution of its outer function and yet still have access to the outer function's local variables. Here's an example: imagine a function that returns another function. That returned function is a nested function. The outer function will terminate once it has returned its nested function, but its local variables live on as part of a closure so that the nested function can still refer to them when it is eventually executed. JavaScript's ability to form closures gives it much of its power, but also causes some of the difficulties involved in working with it. This feature, together with the use of higher-order functions, essentially enables JavaScript to become a functional programming language. People use JavaScript every day, whether they know it or not when they surf the internet. Google's search auto-completion on its home page? JavaScript. Pages that reveal more information when you click an icon, like Facebook? JavaScript. Pages that refresh in real time, like Twitter? JavaScript. |
Review: Panda Internet Security 2012 Posted: 23 Jul 2011 03:30 AM PDT While the current trend in internet security suites is to sit quietly in the background and protect the user's PC with the minimum of fuss and nuisance, we found that Panda Internet Security would occasionally display a popup from the taskbar. These messages, known as 'Panda Bulletins', can be turned off, but they are distracting. The interface is straightforward and clear, with an emphasis on delivering essential information rather than eye-pleasing graphics. This is one reason why Panda Internet Security 2012 feels less system resource hungry than some of its flashier competitors. While we ran the initial scan, we found our test PC was much more responsive than when Kaspersky Internet Security 2012 was running, with CPU usage hovering around 28 to 30 per cent and peaking at 70 per cent. The scan took one hour 52 minutes, and highlighted a number of tracking cookies that Kaspersky and G Data ignored. This is as much a case of over-zealousness on Panda's part as it is carelessness on the others'. The files identified were annoyances a best, yet Panda identified them as 'Spyware programs'. The Panda SafeBrowser is sandboxed browser that runs in VirtualBox and can be used to access potentially dangerous websites. A virtual keyboard is also included to help thwart keylogging software when you're typing in passwords. We can't help but feel that this addition is a bit redundant – if the antivirus scan, download scan and included firewall are doing their jobs then there should be no keylogging software installed on your PC in the first place. An over-cautious internet security package is better than one that takes securing your PC for granted, and Panda Internet Security 2012 works hard to offer a feature-packed security suite. |
Review: Kaspersky Internet Security 2012 Posted: 23 Jul 2011 03:00 AM PDT Performance should always come before a fancy graphical interface. No one wants ugly, unintuitive menus, but neither do we want our computers to slow down when there's a fancy animated window popping up. Kaspersky Internet Security 2012 is a good looking program that's easy to navigate, but it comes at an unnecessary performance price. It's a shame, because on the whole this is a very solid security package. The parental control tools offer decent control over what content children can see and who they can talk to online. We found the website filtering effective and easy to use, with sensible categories. Our instant messaging chats were logged, and conversations were easy to follow if there's a certain contact you're unsure about. You can also track word usage, entering words you want to be alerted to when they're typed into a website, search engine or message. We chose the relatively innocuous 'beans' as our keyword and sure enough, each time we typed it, it was logged by the software. We could see where the word was typed, but not the context in which it was used, so its usefulness was limited. Social network monitoring was hit and miss, taking a while to display messages sent via Facebook, and ignoring Twitter altogether. During a scan, Kaspersky Internet Security 2012 maxed out our test PC's CPU, and even lightweight programs became unresponsive on occasion. Our initial scan of the test PC (with 435,379 files spread over two hard drives) took one hour 19 minutes to complete. This was noticeably faster than G Data Internet Security 2012, though most of the time difference is down to G Data's DoubleScan technology. This version benefits from better cloud protection, with on-demand whitelists and sandboxing of unknown threats. We found this to be a very good security package, but with a bit too much bloat. |
Buying Guide: 5 best Bluetooth keyboards for iPad Posted: 23 Jul 2011 03:00 AM PDT The on-screen keyboard in iOS does the job for short bursts of text, but if you want to use your iPhone, iPad or iPod touch for long-form writing, you're better off using a discrete keyboard. Even for shorter things, such as text messages, instant message chats or brief emails, a separate keyboard speeds you up no end. As well as actually typing, you can manipulate your text more quickly because iOS lets you use shortcuts for commands such as copying and pasting, and Shift+arrow keys to select text. You can also use the arrow keys on their own to move the cursor around, so no more dragging your finger and squinting at the on-screen magnifier to position it. Apple sells a dock for the original iPad with a keyboard attached to it, but a Bluetooth model gives you more freedom, both in terms of the devices you can use it with (these keyboards should work with Macs and PCs, too) and when it comes to your setup. So you could pop your iPhone in a dock on a shelf at eye-height and the keyboard on your desk. Or, when you're on the train with your iPad, stand it on the table and pop the keyboard just in front. The possibilities are endless, and you'll be able to type away for hours, provided you pick the right keyboard for your needs. Do you need something that's small and easy to slip into a bag, or does size not matter, so long as you can type on it for long periods? Four of these run on batteries, so make sure you carry spares with you. The only exception is the iGo, which has built-in batteries that charge using a micro-USB connection. Lastly, the iGo Bluetooth Keyboard was also formerly known as the Adapt ADK-200; some sites still sell it as this. What we tested... Apple Wireless Keyboard - £57 Freedom i-Connex - £60 iGo Bluetooth Keyboard - £62 KeySonic KSK-3201MacBT - £38 Macally BTKeyMini - £70 We spent long periods typing on each of these keyboards to find out just how usable they are for extended reams of prose. How comfortable are they on the fingers? How fast can you type and how many mistakes do you make? To be able to type quickly and without errors, you need the keys to be where you'd expect them to be, especially things like the punctuation and numbers. And in trying to squash so many keys into a small and folding unit, the i-Connex becomes tricky to use. We found ourselves making a lot of mistakes, and to compound matters, then missed the very small backspace key. The number keys along the top aren't exactly where you expect them to be in relation to the rest of the keys, either. The KeySonic model, on the other hand, despite the key area being the same size as the i-Connex, is simply a slightly shrunk version of a full computer keyboard, and is far easier to use. We quickly found ourselves typing away at speed, with few mistakes. The action of the keys is wonderfully light and they're all where you'd expect them to be. The same is true for the Apple model, although the keys are in fact the same size as a regular computer keyboard, so you won't need to get used to a smaller size – simply set it up and start typing. Again, the key action is perfect – just enough resistance to let you know you've pressed the keys, but light enough not to place too much strain on your fingers. The Macally keyboard, despite being very light and compact, doesn't lend itself to fast or error-free typing (you'd be amazed at the number of errors we made typing this sentence alone on it). Like the i-Connex, in squashing all the keys into a small space, Macally has taken liberties with key placement, most irritating of which is the apostrophe. While it's not far from where you'd expect it, we kept hitting Enter instead – intensely annoying. Lastly, the iGo has also shifted a couple of keys around, and indeed done away with the right Shift key altogether, causing much angst for your Mario Teaches Typing-trained reviewer. But since the majority of keys are where you'd expect them to be, and because the key action is just so pleasant, we actually found ourselves rather liking the keyboard. The slightly rubberised keytops feel great to type on and the action is the lightest of all those on test here – something for which our RSI-prone fingers were thankful. Test results When it came to portability, we looked at the size of the keyboard, of course, but also at how rugged they felt and how comfortable we were shoving them into a rucksack. Keyboards are notoriously susceptible to crumbs and other junk getting stuck under the keys, so it's important you shield them in your bag. In this respect, the KeySonic and Apple will need some form of protection – such as a sleeve – to ensure that dust doesn't get anywhere it shouldn't. It's also worth noting that these two are both (largely) white, so the dirt that they'll inevitably come into contact with is more likely to show up on them. The Macally, iGo and i-Connex keyboards are all black and generally better designed for flinging quickly into bags without too much care. The first comes with a protective case that doubles as a stand for your device – a really good idea for when you're on the road and need to prop up your iPad, iPhone or iPod touch but don't want to lug around even more kit. Whichever device we plonked into the stand stayed upright firmly (which is more than could be said for some other, achem, stand-alone stands we've tried). And the i-Connex protects itself from dust in your bag by folding in half, though there is still a gap between the two segments where stuff can get in. The iGo is probably the best when it comes to portability, though, because its keys are sealed around the edges, so no dust can make its way where it's not wanted. Add to this that it's the thinnest and lightest package on test here and you've got pretty much the ultimate portable travel companion. The only small issue we found was that the rubberised surface on the front and back did attract dust and other unwanted junk, which, while not affecting performance, doesn't do much for the aesthetics. Test results KeySonic KSK-3201MacBT - £38 Whether it's a text, email or thesis you want to type, this little keyboard will be your best friend The fact that you're considering getting an external keyboard for your iPhone, iPad or iPod touch suggests you're having to do a fair bit of typing on it. With that in mind, let's get one thing clear: go for the very best there is for long-form typing. Your fingers (and stress levels) will thank you. Because of this, we can't recommend the Macally, even though we like the stand it comes with. As a keyboard, it's simply too small and typing on it produces too many errors. Similarly, while we like the full-size main keys on the Freedom i-Connex and its folding design, its unintuitively positioned keys – notably backspace – caused our stress levels to rise considerably while we were using it. Not what you need when you're trying to hammer out that essay or meeting plan with only a few minutes spare. Indeed, it's this irritating moving around of keys that does for the iGo as well – not to mention its omission of the right Shift key – because it's otherwise really nice to type on and almost flawless when it comes to portability. So with the choice between one keyboard with full-size keys (Apple) and another with smaller ones (KeySonic), you might think that we'd go for the former, based on how easy it would be to type on. But in practice, we didn't find that the smaller keys on the KeySonic hampered us at all. In fact, when it comes to portability, its smaller size and slightly lighter weight are virtues. Even if you do plan to use it mainly just sitting at your desk, the smaller footprint leaves you more space for your papers, stationary holders and photos of your nearest and dearest. The other big thing the KeySonic's got going for it is its price. It's £20 cheaper than the Apple model, but you don't feel that you're compromising on style or quality. Even though it's plastic, it still looks the part alongside your iOS device and feels robust and durable. Sure the little trackball and mouse buttons are (currently?) useless with iOS, but you could also pair this keyboard with a media centre PC or Mac to let you control it from your sofa. |
Review: G Data Internet Security 2012 Posted: 23 Jul 2011 02:30 AM PDT Sometimes it feels like G Data is trailing behind its competitors, introducing 'new' features that have been present in other internet security suites for a while. For example, Internet Security 2012 includes a low-profile idle scan that kicks in when your PC is inactive. Highlighted as 'New!' on the box, this is a feature that most antivirus software has had for some time. The suite's various tools are brought together in a new interface called G Data SecurityCenter. We found this to be an improvement on previous versions, with information about our test computer's security status clearly displayed. Although G Data boasts that Internet Security 2012 is light on computer resources, there's a noticeable slowdown after installing it, and Norton AntiVirus still beats it in terms of minimal performance impact –a testament to Symantec's progress with cutting the bloat from its product. Our initial scan of the test system, took one hour 44 minutes – a lot longer than Kaspersky Internet Security 2012. Speed isn't everything though, and in some ways a longer scan time can be quite reassuring, as the antivirus software leaves no stone unturned. G Data is certainly thorough, with two virus-scanning engines checking each file. It adds an extra level of protection, though it does impact on performance, with the G Data CPU usage peaking at around 92 per cent on our test PC. The spam protection and plugin for Outlook add a few seconds onto the usual email send and receive times, but it's a minor inconvenience for the added protection. Virus definitions are updated hourly, and with a combination of behavioural analysis, heuristics and cloud-based collaboration, G Data Internet Security 2012 offers a solid, though sometimes cumbersome security package. |
You are subscribed to email updates from techradar To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google Inc., 20 West Kinzie, Chicago IL USA 60610 |
No comments:
Post a Comment