Category Archives: Computer

Why Coders are Compared to Wizards

“I need you to create an app like Uber for $20”.
“Please make a dating app like Tinder for a budget price”

Yes people, these requests are very real. People often think programmers have an innate ability to cast a spell, mutter a few incantations like a wizard and behold – insta-app!

Ok, so the requests I have received may not have been worded quite like that… but it may as well have been. “I would like an app that the user can book taxis with, and rate the taxis, and taxi drivers can sign up to and… etc”

You see where that’s going. They are describing an Uber app… which they want at a budget price! People like to be cheap with developers. If a developer is going to spend the time and effort to do that, may as well develop it for themselves, am I right?

(Anyone out there seen The Social Network…?)


“People like to be cheap with developers”

I’m sure other software developers, programmers, coders, engineers, and (insert alternate job title here) share this frustration.

One might think it is flattering to have your skills thought of as like magic. In some ways, it is. But it means that there are unrealistic expectations of what a programmer like myself can do. And with great expectation, comes great inevitable disappointment. Or… something along those lines.

At some point, I had a long hard think about where the assumption that programmers can “magically” create something in no time like magicians actually came from. There are actually a number of parallels that can be drawn.

Unfortunately.

Note that I’m not referring to the magicians who perform tricks with slight of hand or other methods to deceive like the characters from “Now You See Me”, or Christian Bale’s character in The Prestige.

Particular talents
A common trait amongst magicians in most fictional literature is that they have a distinct talent for it. From there, there is a lot of study and practice that needs to be done to actually be a magician.

Well, I guess the same is said of programmers. Anyone can pick up a programming book and learn to do it, but not everyone has the natural talent of thinking algorithmically and logically – necessary to thinking about how to instruct a computer to perform certain tasks, or troubleshooting when something goes wrong.

Incantation in another language
Even if we don’t discuss the fact that there are numerous computer programming languages, computer jargon alone often sounds to people like another language. Though the same can be said of other disciplines like medicine and law.

But when it comes to programming a computer, we study one or more programming languages – memorising most syntax and semantics. For the things we don’t commit to memory, we have to refer to a programming reference or software documentation.

Sound familiar? Think of Harry Potter, or even the magicians from the Dragonlance Chronicles. The incantations to perform the spell are usually incomprehensible, simple spells are memorised, and others are referred to in a spell book.

Hunger for knowledge
As programmers, we have an innate drive to learn more ways we can tell the computer to do things for us – create apps, control hardware, assist us in our jobs. We actually love learning more programming techniques and even attend meet ups to network with others like ourselves to get more information from others.

Harry Potter became obsessed with several textbooks over the course of his schooling. It is a common trait of fictional magicians and wizards in literature.

Use of magic/coding skills
Google have a slogan: “Don’t be evil”. Following Google’s restructuring under the new company Alphabet Inc… (no matter how many times I say or write that company name, it always sounds odd to me. Is it just me? Yes? Moving on…)

Following Google’s restructuring under the new company Alphabet Inc, the code of conduct was changed to “Do the right thing” (which conjures images of comedian Russell Peters).

The reason for this is that this world is so reliant on software and technology in general, it can easily be used to exploit users (and this happens all the time). Magicians that do the equivalent are commonly referred to as sorcerers. And just like the technological counterparts, it takes a skilful magician to stop an equally skilful sorcerer.

In fact, did you know that Google have offered bounties to programmers, challenging them to hack Google Chrome, expose the vulnerability to them so that Google can continually improve the security of Chrome?

In summary, I guess I can understand why coders are viewed like fictional wizards and magicians. As a result, there are unreasonable expectations of our abilities most times.

But where magicians only need a few moments of concentration to abracadabra your desires into being, for programmers there are many many hours of concentration required to plan, develop and release software.


“… for programmers there are many hours of concentration required…”

A quote comes to mind (which is from Arthur C. Clarke, but to my shame I recalled the quote from the Thor movie):
“Magic is just science we don’t understand yet”

Perhaps the link is more apparent than I care to give it credit.

Now, I must disappear!

</post>

Top 9 “Carry On” Coding Terms

When a non-programmer looks over at my computer screen whilst I’m coding, I’m met with varying reactions. The usual reaction is one of confusion, amazement, sometimes admiration but every now and then… bewilderment at seemingly filthy language.

The bewilderment often comes after a closer look at what I’m typing. Take for example:

> git pull

> make clean | head

Out of context, one could get the wrong idea. A lot of our commands sound like something out of a Carry On movie. Strangely enough this doesn’t usually occur to the everyday friendly neighbourhood programmer like myself. Not because our minds aren’t as filthy as the rest of the world, but just because we’re used to the technical usage of these terms.


“A lot of our commands sound like something out of a Carry On movie”

Often friends have called me out on these. “Git?”, they’d say between chuckles, “Why are you typing git?”. In my head, I’m thinking “how can you not know what ‘git’ is!?” which of course is a nonsensical question. Why should they know?

Well, here is a short blog to give you what I consider to be the top 9 misunderstood “Carry On Coding” computer commands, in no particular order. (For the technical beings amongst you, I am taking my cue from Linux BaSH scripting commands).

  1. head: You see anyone typing this, don’t be alarmed. The command simply retrieves the first few lines of a file (or stream of text).
  2. touch: If you see a programmer type touch me, they are simply creating a blank file called “me” if it doesn’t exist. If it does, it changes the modified date of the file as if the file has been updated.
  3. git: One of the more frequent commands you may find a programmer using, it is not an insult to anyone. It is simply a tool to manage a repository of files. Ok, let me try that again – imagine a remote filing system (like Dropbox or Google Drive) which also stores every version of every file and directory. It’s something close to that. Why this tool was called “git” in the first place? Google it.

    That’s right, I have no idea.

  4. tail: This is similar to head except it retrieves the last few lines of a file. That is the only rear end it is referring to.
  5. kill: The only thing getting murdered with this command is a process on your computer. Think of this as a program killer. If you use Windows, think of when (not if) you have had to type Ctrl-Alt-Del to see everything that is running, and stopping (or killing) processes or applications that aren’t responding, for example.
  6. killall: See kill… but referring to the app you want to kill by name.
  7. wc: This is a command to count the number of words in a file. It is not a request for a public lavatory. Next.
  8. df: If you’re curious about the confusion here with this term, Urban Dictionary will tell you it’s another way of saying “wtf”. Rest assured, when we type df we’re not expressing such frustration at the computer (much as we’d like to). It simply checks how much space is free on your machine. (df = disk free).
  9. bash: Why am I clarifying this one? Look up Urban Dictionary. Bash is the name of a Linux command environment… erm… translates garbage coders type into things a computer can understand. That’s as far as I’ll go into that, apologies to the coders out there.

Honourable mentions: finger, unzip, fork and mount. If you’re burning with curiosity regarding the technical meaning of these, go ask a programmer. But most likely, you’re giggling like a school child and couldn’t care less about the technical meaning…

So there you have it. Hopefully that clears a few things up. If you look at a coder’s screen and think you saw something dirty, you can no longer claim ignorance!

Carry On Coding!
</post>

Why Hacking is NOT Illegal

I love hacking.
That statement has consistently rung alarm bells amongst my non-techy pals whenever I make that statement. Typical responses include:

“You’re a hacker??”
“Don’t say that too loud.”
“I’ll visit you in prison.”




Instagram @futuristmindset

Imagine, the reactions when I go further to mention that I’ve been to some Hackathons in my time!?

tldr; There are two definitions given in Dictionary.com for the word “hack”:

Computers.

  1. to modify (a computer program or electronic device) or write (a program) in a skilful or clever way: Developers have hacked the app.
    I hacked my tablet to do some very cool things.
  2. to circumvent security and break into (a network, computer, file, etc.), usually with malicious intent: Criminals hacked the bank’s servers yesterday.
    Our team systematically hacks our network to find vulnerabilities.

Now, I do understand the confusion. I get why everyone always jumps to the negative connotation first. The answer is simple. Media.

Hacking is simply creatively and relentlessly solving a technical problem.


Instagram @futuristmindset

Unfortunately, the only time you hear the term “hacking” in the media is when some media company like Sony or a bank has been broken into. Or organised groups ¬†attempting to derail a website. Not the more positive connotation like hacking to build new wearable technology, or even charitable hacking. Because… news.

Social media has spread this misunderstanding. When someone posts a silly status on someone else’s account, somehow “hacking” is a word that gets bandied about.

It’s a bit like the term downloading. You only hear the word when associated with illegally downloading movies or music. But it’s simply the act of retrieving files from a remote location – online or on another device – and saving it onto another.

Now I’m no conspiracy theorist, but the media does tend to warp meanings and opinions effortlessly.

I realise of course that I have inadvertently included myself in that last statement, and I am ok with that. And I’m not ok with that.

Hackathons themselves are amazing. There are so many challenges organised within and between different companies, where individuals or groups are challenged to create something innovative within 24 hours, 72 hours, or any other time period. It’s a great excuse to consume pizza and block out life for a small period of time, but the results are astounding, and the competition is healthy.


AT&T Mobile App Hackathon

Imagine if something like that existed for your chosen profession or hobby?

So you can sleep soundly knowing that there are literally millions of us hacking each and every day. Comforting right…?

</post>

Why you need a Chromebook | Intro

In 2007, I became a Mac convert. Two MacBook’s and a Mac Mini later, I received my first Chromebook in 2012. A year later, I sold my MacBook Pro on eBay after blowing the dust off the keyboard and screen after a year of not being used.

If you have a problem, if no other device can help, and if you can buy them, maybe you can own… a Chromebook.

A-Team references aside, this is actually a true story. A Chromebook is a light-weight laptop with Google’s Chrome operating system (Chrome OS) running it. What is Chrome? Simply an internet browser like what you may be using to read this (if you’re smart…). Other examples of popular browsers in the market are Firefox, Safari and Internet Explorer.

So the question I had a few years ago is – how is one supposed to do all one normally does on a Mac or Windows operating system only on a web browser?

Given my interest in web technology, I wanted to give it a chance, so I embarked on what I called the Chromebook Challenge. A week of using nothing but my Chrome browser on my MacBook Pro at the time, and blogging my results.

More and more of us now own smart phones and tablets. What do we do offline? Perhaps playing games, reading, note-taking, and checking calendar? Although games are increasingly social, books are downloaded from the internet, calendars and notes are synchronised on the cloud. These all need internet connections. When you don’t have an internet connection. You know about it. You complain about it. Then you complain that you can’t post or blog about the complaint.

On our PCs or Macs there are offline applications (apps we use without the internet) we might use frequently. For example writing documents, spreadsheets, editing photos, editing videos, email and much more.

But, now just bear with me here, if we really look at how much time we spend offline vs online, some of us might realise the shift to online activities for virtually everything we do. Socialising, shopping, banking, movie watching… my goodness. We’re all doomed in 20 years to being couch potatoes!

Chrome OS and indeed the Chrome browser have apps and an app store too. These apps are essentially well designed websites which look and feel like apps you might download on your phone or tablet. They utilise key HTML technologies to allow a lot of offline activities.

Sigh, I’ll just get this shameless plug outta the way, shall I? There is a Chrome app for my Cyman Digital Butler app. You can have conversations with your computer and get it to open certain pages or remind you about certain things. Cyman Mark 3 is in the Chrome store rated at 4.5.

That’s right folks, believe it or not, you can edit word documents and spreadsheets and save on Google Drive without being online. Once online, it will synchronise it in the cloud for you. This goes for other key web applications. You can view your mail offline with GMail, and you can even view your Google Calendar offline.

Sounds very much like how our mobile devices work now, am I right?

The Chromebook is a lightweight laptop computer which barely needs the kind of resources that your standard Mac or PC running windows needs to completely drain. Therefore the Chromebook is much faster, safer and crashes a lot less.

I’m going to be showing the results of my experiment on here in 6 or 7 parts. I tried to cover as many areas as possible – from the point of view of an office worker who needs Word and Excel, a musician who needs to write or create music, a programmer like myself, and someone creative who needs something on PhotoShop levels.

What did I get out of writing this? A free Chromebook from Google.

Yeah, I’m feeling pretty smug right about now.

So if you’re thinking about getting a Chromebook, follow on and look out for the “Why you need a Chromebook” series.

</post>

iPhones suck. (Take the bait. Click Me…)

Before half the internet reacts in outrage and much troll-age, I have come to make technical peace between Google and Apple – not war. This blog title is called click-bait. Designed to communicate with the inner troll in you, or the inner fanboy. It all depends on your point of view.

What I am actually going to address are a couple of common misconceptions
– that I hate Apple.
– that only iPhones play best with other Apple products.

To start with, I’d like to think I’m fairly tech-agnostic. I like using tech that plays well with other tech. Yes, I am a Google fan. But I judge by product, not by company. I mean, my first smartwatch was the Martian Smartwatch. One of the reasons I chose it because it simply works using Bluetooth – connecting with Android, iOS and BlackBerry phones.

Now I’m going to address the first misconception easily.

I own a Mac Mini. I love it.

Now that’s out of the way. You see, Apple make great products. I owned my first MacBook back in 2007 after using Windows/Ubuntu for years, and I never looked back. (Although I did replace my MacBook Pro a couple of years ago with my Chromebook, but that’s one for another blog post…)

Point is, I’ve had a Mac in one form or another for 8 years now. You can run open source (free) software on it, I can use it for programming, and for more creative exploits – music, art, movie-making. Usually, people think that if you have a Mac, you ought to have an iPhone. That is simply not the case.

I don’t know about you, but I don’t want to have to connect to a music player to synchronise my phone with my computer. Yes, I am talking about the beast that is iTunes – feature creep incarnate.

I own a Nexus 6 currently, which is a pure Android phone. Recently, I’ve stuck with the Nexus over the past few years due to its reliability. I plug my Android using a standard micro USB cable into my Mac and can simply access my files on my phone as if it my phone was a USB memory stick. All my contacts, photos et al are all available on the cloud anyway. I can access everything through my browser.

It’s gets better though. There is a great app called AirDroid, which allows you to access your phone wirelessly. It essentially gives you a web portal into your phone. You can download and upload files into your phone.

It’s very simple. Google and Apple products can work just fine together. Android plays nice with multiple operating systems – Windows, Mac, Linux. Whichever floats your boat. iPhone doesn’t have the same kind of interoperability, it’s more of a (deliberate) closed cage. That is not the case with a Mac however. Which is why I own a Mac, but do not own an iPhone.

If you were expecting an all out Android vs iPhone war, please by my guest and comment. Help yourselves to the ammunition available and begin the flame war.

</post>