How To Take A Screenshot On Mac OS X

mainOne of the many good things about Mac OS X is the built in support for taking screenshots. But then again, in this day and age, what operating system doesn’t? Well, this is where it differs a little. I am sure most of you know how to capture a screenshot on OS X, but there might be situations where your requirements change a bit. There are many different ways to capture the content being displayed on your screen. Each one of those methods has something different and unique to offer. These methods are very handy at times! I have described a few different methods here. Let’s see what they are.   Continue reading

Why Do We Need CocoaPods?

mainLinker errors are painful to deal with. When we are working on our Xcode projects and when we almost done with everything, these linker errors pop up to make their point! Even if we can see the libraries right there in the GUI, it still can’t find that library. Sounds familiar? Why do we have to set linker flags in more places? Wouldn’t it be easier if you could just start developing your project without having to worry about these things? Say hello to CocoaPods! CocoaPods is a library dependency manager for Objective-C projects that solves all these issues. CocoaPods is a ruby gem that downloads all the third party libraries you want for your project, and links everything so that you don’t have to.   Continue reading

NTFS Write Support On OS X Mountain Lion

If you have noticed, Mac OS X doesn’t support writing onto NTFS disks. But not to worry, you don’t have to install any third party drivers to enable this. Mountain Lion 10.8.3 already has native write support for the NTFS. OSX Mountain Lion does have built-in support for NTFS, and it can read and write. However, Apple does not enable it by default.   Continue reading

How To Install Valgrind On Mac OS X

mainAs your code gets bigger, keeping track of memory becomes critical. These things often become the source of huge crashes and annoying bugs. Detecting them manually is a very tedious process. So we need a tool to manage all this for us. This is where Valgrind comes into picture. Valgrind is a programming tool for memory debugging, memory leak detection, and profiling. It can be used to keep track of all the memory allocated at all stages in your program. Although it was initially meant to be a memory debugger, it has grown to become a generic framework for building dynamic analysis tools. You can use Valgrind to build new tools as well. There are Valgrind tools like Memcheck that can automatically detect many memory management and threading bugs, and profile your programs in detail. Valgrind is widely used in the industry and it’s well respected within the coding community. Let’s see how we can get it up and running on Mac OS X.   Continue reading

Git Is Gone In OS X Mountain Lion

gitThis blog post is for a very specific group of people who cared enough to notice that git command line tool is not working on their brand new MacBooks with Mountain Lion! If that sentence didn’t make sense to you, then you are probably at the wrong place. I got my new Mac last week and I wanted to clone some code from Github. So I opened the terminal to clone it and behold, “git” is apparently not a recognized command! I have already installed the latest developer preview of Xcode (version 4.6 DP3), so what went wrong here? It turns out that we need to manually install the git command line tools. We still live in a world where git is not an integral part of all the systems! Xcode 4.6 doesn’t install the command line tools by default, and Git is one of the tools included in these command line tools. Anyway, there’s a simple fix for it.   Continue reading

What Is SSH?

Consider the following situation. You are at your friend’s place with your laptop and you want to access your home computer to do something. May be you want to start a download or you want to run a program right away. What would you do in this situation? Will you go all the way to your house just to start a download? You already have a laptop at your disposal, so you should be able to use it somehow. You can just connect to your home computer through internet. But what if someone else hacks you while you do that? This is where SSH comes in.   Continue reading

Rooting Your Phone

A lot of Android devices are being activated everyday. We hear the term ‘rooting’ floating around all the time. Most of the people don’t bother to tinker with their phones. They just want to enjoy their device as it is. Some people think that rooting their phone will break the software or damage their phone in some way, and so they don’t want to mess around. What exactly is rooting? Do we even need to root our phones? If so, why exactly do we need to root our phones?   Continue reading

The Art Of Password Cracking

The elusive art of password-cracking has enticed many a mortal! Everyone has, at one point or the other, contemplated cracking someone’s password to get access to their private information. Whenever people hear the term ‘hacking’, the first thing that comes to their mind is ‘cracking passwords’. A lot of people think that password-cracking is the very definition of hacking. Some people think that password-cracking is the same as stealthily looking at someone type their password. I hate to burst your bubble, but that’s not password-cracking. What exactly is it then? How do we do it?   Continue reading

Hack Me Once, Shame On You. Hack Me Twice, Shame On Me.

We hear the word ‘hacking’ all the time. Most people think that hacking is something smart, cool and wrong. But what exactly is hacking? Is it just smart coders breaking into websites? The hacking culture is great and it inspires creativity, but why limit it to just a few people? People actually do it everyday in different ways and different capacities. It is in our inherent nature to get around the rules if we don’t get something we want. There’s a hacker in every one of us, we just don’t know it yet.   Continue reading

Inside The Shell of Shell Scripting

I’m pretty sure people working in the tech domain are aware of something called Shell Scripting. Were you ever working on a project and felt that some tasks were repeating over and over again? Did you feel that there should be an easy way to automate these things and you don’t have to worry about it every single time you want to run your project? People who have heard about shell scripting and don’t know what it is, you are missing out on a cool weapon in your arsenal. People who haven’t heard about shell scripting, well it’s time to move you into the other category. So what exactly is shell scripting?   Continue reading