hacking, hardware, Life, programming

Simple power hack

Everyone has experienced this, that heart stopping moment when your computer froze and stoped responding to anything. You then reached for that quick solution to the perceived problem i.e. pressing the power button. I did exactly that and my laptop went nuts, it would blink for like 2 seconds, die and keep repeating the process.
I did a harried quick read online and online gurus said I had to press down my power button 10 times and then hold down for more than 30 seconds on the 11th press to reset the power cycle. Well I did that and…. surprise, it did not work. Well I had to put an object on the power button to hold it down for more than 2 hours and glory be to God, it started working again. Now my blood pressure can return to normal.

Standard
hacking, Internet, programming, Technology & Startups

#2,000 and 10 minutes later

I had a domain name I wanted to hock so I decided to host a static site with purchase instructions for would be buyers and point the domain name to it. It made no sense paying for hosting so I decided to use github pages.

Github pages is a way of hosting static HTML pages on github and there are two types:

(1) User pages
(2) Project pages

Steps to hosting User pages on github.
1. Go to github.com/new and create a new repository i.e. assuming you are already a github user.
2. For the repository name enter “[githubusername].github.io”
3. Make the repository pulic
4. Check “Initialize this repository with a README”
5. Click Create Repository
Now it gets technical. Please note that the following instructions are for UNIX based OSes not Windows.
Open your Terminal and enter the following commands:
$ mkdir /path/to/source-code
$ cd /path/to/source-code
Download your newly created GitHub repository and go inside it.
$ git clone https://github.com/username/username.github.io.git
$ cd username.github.io
6. Now create your static website in html inside the git directory that you are in.
$ git add . (This command would add all the tracked files in your working directory into the staging area awaiting commit)
$ git commit -m “1st static website commit” (All your files are now committed to the HEAD of your git directory)
$ git push origin master (This command pushes your local repository containing your local website to the remote repository on github)
After 10 minutes your should be able to view your static website at http://username.github.io/

P.S: if you want to host your static website with a custom domain, “CD” into your directory and run:
$ touch CNAME
Edit the CNAME file with any text editor of your choice and enter the domain name you might have already registered [1] and save it. Re-run the above commands and if successful, you would be able to also view your static website at http://yourcustomdomain.com. [2]

Notes:
1. Registering a dot com should not cost more than #2,000/year.
2. My static website hosted on github pages can be found at http://hacki.ng. Offers are welcome.

Standard
critic, hacking, programming, Technology & Startups

You dont know anything

buffer

https://mobile.twitter.com/pystar/statuses/6391239737868289

Look at the timestamp of the image above. I tweeted it in 2010 after reading glowing reviews of the bufferapp on Hackernews, I just couldn’t get why someone would pay just to schedule posts on twitter (they only supported twitter back then). Joel responded to my tweet with optimism about the app. 3 years on, look at the tweet below:

buffer2

This goes to show that we don’t really know sh*t about anything. If you have an idea you think would work, run with it first. Let your target audience accept or reject it and don’t place the power of life and death in the crucible of some so-called expert who probably doesn’t know sh*t about anything,

Standard
funding, hacking, programming, Technology & Startups

Building your startup on the side is freaking hard.

My typical day: I wake up by 5am every weekday, go through my daily ritual and leave my house by 6am to begin my 10 km commute to work (I am a “factory worker”) to get to work almost an hour later [1]. My factory shift resumes by 8am and ends by 6pm officially although this might extend into late hours of the night on some occasions. I do not work on anything IT related (which factory worker does?) so none of the hours I spend at work contributes in any way to gaining startup experience. After work I start another 10 km commute back home which can extend for almost 3 hours most times no thanks to the crazy traffic on Lagos roads, so I get home earliest by 8pm on a very good day. Most days I am so tired I hardly can code or do anything substantial before crashing on my bed. Most times the stuff I can do are only on weekends when I have some few hours to concentrate.

Building a startup on the side is freaking hard, scratch that, extremely hard. Some people do it but it’s no easy feat.

Pros of building your startup on the side.

1. Focus: when you have so few hours to work on your startup per day you tend to focus and prioritize on what is really important and what isn’t. I work an average of 50 hours at my day job and the few hours left have to be spent with laser focus or I might just wake up and discover that 6 months have passed by. [2]

2. Funding: Most Nigerian founders complain about not having funding for their startup ideas so having a day job will actually allow you to funnel part of your salary into your startup till it starts generating income of its own. I have a relatively well paid factory job so I can bootstrap for now until I start generating real income.

3. Work experience: If you are lucky enough to have a day job where you are gaining skills and experiences that are directly transferable into you startup, all well and good but if you are not like I am, you can learn people management or if your day job is so bad, you would learn how not to run a business.

Cons of building your startup on the side.

1. Burnout: Working nothing less than 50 hours per week on a day job for some years can have a terrible toll on you, your health and motivation to work on your startup. Most times I am so tired I can’t do anything reasonable during the week. This directly leads to my second point.

2. Speed: Most times I imagine and wish that the hours I spend on my day job could be funneled into my side project. I imagine where it would be by now. My startup might look slow and lethargic due to the fact that I barely even have time to work on it.

3. Burning hunger: Having a well paid job can actually make you lazy and take away the hunger to having a successful startup. If on the 24th of every month a substantial amount falls into your bank account with a loud bang, putting your all into a startup might not be topmost on your list of priorities. You might wake up after some years to discover that you have become a boring old fart with a receding hairline and your startup, still a pipe dream.

P.S: Thanks to this article on joel.is for inspiring this post.

Notes:

1. I get most idea’s for these blog posts and write them in my head while driving on my long commute to work. It’s a wonder I haven’t hit anyone yet.

2. Talking about focus: I developed my infamous unofficial nairaland API in less than 20 minutes in a frenzied coding spree.

Standard
hacking, programming

How I “hacked” up a Nairaland API and got banned

 

Disclaimer: I was bored, alone at home and this nairaland.com post inspired the hack.

After reading the nairaland post, I actually started thinking if it was possible to actually design an API that programmers could use to extend the capabilities of nairaland.com like logging in, creating new topics, consuming nairaland data and other common functions programmatically. I fired up my text editor and started trying to reverse engineer the basic nairaland functions I wanted.  The awesome PYTHON Requests library came in very useful and after some few minutes my API could login, logout, create a new topic on any board, edit user profile (i.e. change email and password).

I guess my posts to nairaland during my build process of the API was suspicious due to the fast rate it was coming in and the random boards I was posting to as I was promptly banned from the site.

REASONS WHY NAIRALAND IS ANTI-API

1. PAGEVIEWS, PAGEVIEWS and PAGEVIEWS: Since nairaland started selling self serve adverts, one of the selling points it uses to woo advertisers is the number of pageviews/visitors or eyeballs it has. I think the reason why the nairaland overlords are anti-API is because they feel once users start consuming nairaland without actually visiting the site, pageviews would drop and also advertising revenue (Which is a rather myopic view).

2. SPAM: Nairaland.com currently has 1,005,971 users. Although this is a debatable figure as it is known that most users have more than 1 user account on the site. Most do it to advertise goods and services, create topics etc. Some people with ulterior motives once they get a live working API might start to automate posting, trolling and most likely drown the site in spammy topics etc.

3. Nairaland is resistant to change: It took nairaland almost 7 years of existence to move from simple machine forums to a home grown solution done in Python (cherrypy and MySQL) to be exact. The UI of the site might hurt sensitive eyes and this wont change any time soon.  If the most basic basic things wont change for the better, why would the nairaland overlords embrace an API?

The above reasons are just speculations on my part.

Update: I have since been unbanned by nairaland, but since I am no longer bored and idle, the API might not be receiving any developer love from me any time soon as I am working on more interesting stuff. In case you are interested, you can check it out here: https://github.com/aitoehigie/unofficial-nairalandAPI (pls note: use at your own risk of being banned too).

Latest Update: I posted a link to this post on the programming board of nairaland to see if I could get some takers on the API but before I could blink an eyelid, I was immediately banned again from the site and the link was instantly deleted by the mods,which goes to prove my above theories to be 100% correct.

Pystar

Standard
critic, hacking, programming, Uncategorized

Why the “noise makers” among us can’t code.

Let me tell you a true  story: I would rather spend time coding than going to a tech meetup https://twitter.com/pystar/status/227405814921568256, [1] I hate the very thought of marketing (I probably just  hate the fact that my sales pitch might get turned down). I guess that’s why my start-up hasn’t  “blown” and that of “noise makers” [2] among us, is a tale in the opposite.  But the thing is this, I could probably code rings around these “noise makers”, who probably cant write a line of code at gunpoint, but their start ups actually make me feel inadequate in a perverse way.

Unless you are building a deep Comp.Sci based start up like Google, you probably don’t need to focus so much on your code but invest heavily on marketing. Most problems here in a 3rd world country like Nigeria that can become viable start ups actually don’t require deep science but heavy marketing and legwork to enlighten people and also give them a reason to actually use your product. [3]

Most good programmers I happen to know are introverted to a certain degree and prefer coding than actually going out and meeting people, so how do you then market your product if you don’t go out? Social media doesn’t count.

Doing a quick and dirty survey of the most “up in your face” start ups here in Nigeria will actually tell you that they are started by non coding techies (if I can safely call them that)[4]. These guys are “noise makers” and thats why their start ups do well. These guys can’t code and probably are not interested in learning how to code because coding is a long tedious and lonely task (unless you are pair programming) and the emotional make up of these “noise makers” wont just allow them to do this successfully.

I have discovered that even if you write the best code with the most bleeding edge frameworks and languages and do absolutely no marketing or “noise making”, no one will beat a path to your doorstop begging for the rare privilege to use your app.

After thinking alot about this “phenomenon”, I can actually say that I agree absolutely with MrBankole when he penned http://techloy.com/2012/07/10/im-ceo-bitch/ . How does some techie who probably has a name for his laptop [5] succeed in marketing his start up? The most successful route I can figure out is getting a “noise maker” as a co founder. That way you get the best of  both worlds.[6]

Notes

[1] Probably the reason why I have never been to any tech meetup (apart the 1st ever barcamp held in lagos “09”) and most probably wont in the nearest future is because of my hectic factory day job schedule and organizers of such meetups refusing to fix events on weekends.

[2] The phrase “Noise maker” as is used in this blog post is actually used in a positive context. A noise maker is someone who is a natural extrovert, a born marketer, with little or no technical chops, i.e. someone in the mould of Steve Jobs.

[3] Imagine a start up with a Seun Osewa and Jason Njoku combo? yeah I can, in my dreams.

[4] Bloovue, dealdey, IrokoTv, Jobberman, wakanow all have non coding founders. (Correct me if I am wrong)

[5] I am guilty as charged.

[6] Don’t do this alone, collaborate, collaborate. Get someone who can pick your slack and is strong where you are weak.

Steve Wozniak (awesome technical chops) + Steve Jobs (most prolific tech marketer ever) == Apple(World domination)

Standard
critic, funding, hacking, programming, Technology & Startups

Live in Nigeria?(***insert your 3rd world country here***). This is why your startup will fail.

You live in Nigeria or any 3rd world country?, are a techie and thinking of starting a web startup? here are some reasons why your startup is doomed to fail.

1. Your startup is a solution to a “WANT” and not a “NEED”. If you can remember your basic economics, you should know what “WANTS” and “NEEDS” are. Quickly, I would define a “NEED” as something you have to have, something you can’t do without e.g. food, clothing and shelter, while a “WANT” is something you would like to have. It is not absolutely necessary, but it would be a good thing to have. A good example is music.

When developing your startup idea, ask yourself, “is what I am creating a solution to a NEED or a WANT?”  According to the Nigerian Bureau of statistics 60.9% of Nigerians in 2010 were living in “absolute poverty” i.e. less than $1 per day. Do you think that taking a hiatus to create a music startup to enable these people living in abject poverty listen to music amounts to a good use of your time? or “skills”?

2. Your startup is a clone of some popular 1st world website or application [1]. Why would you clone when there are a myriad of problems you could develop solutions for? If you are developing a clone, ask yourself this question “why would anyone use this (***insert the name of your clone***) instead of the main thing (***insert the name of the website you cloned***)?” .

3. Your startup will require loads and loads of traffic i.e. pageviews with gullible people who would be ready to click on Google ads before it can generate income. In Nigeria, there are no VC’s, no Angels, no startup accelerators, no Government support programs, no infrastructure, regular electricity supply is a pipe dream, Internet access is patchy and expensive, in short, “NO NOTHING”. So it kind of beats me why anyone would base his startup’s business model on the benevolence of Google? In between the time your startup comes online to the time it can generate enough traffic to keep the lights on and the servers humming, how would you survive? Do you have some gold bars stashed under your mattress somewhere? If not, why don’t you just develop a product where you can start charging from the very first day? [2]

4. Reading too much of Techcrunch et al. These tech blogs are written by elitist white techies who live in silicon valley where the difference between over there and here is like light and day. Any advice you can glean from those sites just isn’t applicable here in Nigeria. [3]

NOTES

[1] The current fad in Nigeria is creating clones of Groupon.com. It once used to be Twitter clones, bulk sms and then Facebook clones. Why coders still do this kind of beats me. Instead of cloning, why don’t you build on these sites and take advantage of things like Facebook’s “Social Graph” etc and develop innovative solutions? Developing another DROPBOX wont meet the need of the average Nigerian, he has no need for it, and if he does why wont he go for the original? patriotism? please!

[2] Despite the fact that 60.9% of Nigerians live under $1 per day and there are 90 million mobile subscribers in the country with at least 1 mobile phone, these phones have to be loaded with “call credit” by these people because communication has become a NEED and not a WANT. So despite the grinding poverty in the country, the major Telco’s still declare mind boggling profits every year, with Nigeria now having the largest mobile phone market in Africa with 60% penetration. So in order to be successful, develop a solution to a NEED and not a WANT.

[3] Sarah Lacy, a former columnist for Techcrunch, when she came to Nigeria in 2011 advised techies not to read Techcrunch et al. Its of no use, the stories of billion dollar valuations for 6 month old companies that do nothing but count your number of Twitter followers will actually screw with your head. That can never happen here, this is Nigeria, be creative, be innovative, think local but act global.

Standard
hacking, programming, Technology & Startups

2 Reasons why you should start a startup (The Nigerian version)

2 Reasons why you should start a startup

(The Nigerian version)

Have you been thinking about starting an Internet company? here are some reasons why I think you should take the plunge.

  1. You just graduated from university or are about to and you are scared about getting a job which you know doesn’t even exist [1].
  2. Nigeria is a “virgin tech forest” where technology can be used to disrupt almost all facets of society. Almost any idea you develop  can  and will disrupt society for “good”, as there are real problems that technology can be used to solve [2] which Western tech companies haven’t solved and don’t even have any interest in solving. In Nigeria, viable ideas are everywhere, the streets are paved with “idea gold”, pick one up run with it and make impact.
P.S : For the love of God, while you are at it, please don’t create another clone of Facebook, Twitter or another bulk SMS website. And for your business model, don’t make Google Adsense  your primary source of income as I feel that there are ideas that some of the 45 million online Nigerians who also mostly live under $1 per day would be able to spare out of that pittance to pay for your service [3].

Notes

[1]  Actually, you don’t even need to have a degree to start a startup, as most coders I know are self-taught. The unemployment rate in Nigeria stands at 23.9%  out of a total of over 167 million people. Why waste your time looking for a job which is virtually (no pun intended) nonexistent, when you could create one for your self and others, make impact on your society which you definitely can’t do as a “cubicle slave” and if you are lucky, become rich and retire young?

[2]  PayPal has blacklisted Nigeria, why can’t we develop our home-grown version? Also, why do I have to go through semi illiterate middle men called “agents” before I can get a place to rent?  (present solutions in this space suck big time).

[3] This is the subject of a blog post for another day.

Standard
critic, hacking, programming, Technology & Startups

Dear Mr Jimoh

Hello Sir,

Congratulations on your much deserved win @Startup weekend Lagos. While you bask in the glow of your win, let me hit you with some questions before you get a tan.

1. Data: your app is basically useless without the data of artisans. So how do you intend getting the data of artisans seeded into your app? And please don’t tell me artisans would do the profile creation themselves (I can see you have a form for that) you know why? Most of the artisans who are your target demographic are either illiterate and/or wont be interested in creating a profile on your app without them really seeing what value that adds to them i.e. monetary. And if you want normal users to create and rate profiles of artisans they have used, what would motivate them to do so? Whats in it for them to go through the whole process?[1]

2. Business Model: Although your app is quite innovative at least in our local web space, but I cant for the life of me deduce how you intend making money from this app unless you want to go down the very well beaten path of Google adsense? [2] Provided you can generate enough traffic to cover hosting cost and other sundry costs with that, then I wish you guys luck.

P.S: I would be monitoring your progress over time.  Congrats again sir.

Notes

 

[1] A very thought-provoking tweebate was the cause of this blog post and the major thing that was debated was how artisans details would be created on findjimoh.com and who would do the creation. Leaving that power to either the artisans or people who use the artisans would be a major fail, because you would be giving them the power to determine how fast your app would grow and how useful it would be to other users. At least in the beginning, do the seeding yourselves.

[2] Regarding your business model, a little bird just whispered into my ear that you intend making money whenever any artisan is recommended. I really don’t know how that would work. But a simple way I feel you can make money is by having a short code that anyone could text a requirement and have the top ranking artisan that matches that query sent back in response.

Standard
hacking, programming, Technology & Startups

Its alright, be a clone.

Yeah, you heard me right, its alright to be a clone. Why?

Google wasnt the first search engine

Twitter wasnt the first microblog

Facebook wasnt the first social network

The ipod wasnt the first personal music player

The iphone wasnt the first phone or first touch screen phone.

What really made these products and services successful is the way they were implemented.

Google had the PAGERANK algorithm

Facebook had the “WALL”,

Twitter had its 140 character limit

THe iphone and ipod had “Steve Jobs” (no, seriously, they had a superbly made hardware combined with even better software which the Japanese portable players popular at the time and other phone makers didn’t have). All they did was to take something and add an innovative twist to its implementation which made it seem “original”.

This means in Nigeria’s tech scene, you can take an already tested idea which would be locally relevant, tweak it to create a breakout product or service and you would come out looking like a tech star. Example:

1. Instead of creating a Twitter clone, why don’t you create a fully mobile “Twitter” which works with sms. You “tweet” by texting a 140 character message to a short code and your followers receive you “tweet” from that short code. Your business model would be sms advertising based. [1]

It doesn’t really take much to be “original” all you have to do is to copy. So please go ahead be a clone.

Notes:

1. Something like this already exists in India called Gupshup and its very huge in India and most importantly its profitable.

Standard