RSS

Tag Archives: code

So Begineth Graduate school

I guess the blog name was after all correct, I mean calling a blog ending campo while still in campo and retaining said name after was a tricky bargain, I got varied comments and was tempted to change it, but still stack to the original. Any who I went back to Grad school a few months ago. I was tempted to either go back to JKUAT and do Msc in Computer Systems or stick to Msc TID in Strathmore. I ended choosing the later, and so began my new life in graduate school. The course is  if offered under the Safaricom Academy at ILab at Strathmore Universitydummybanner

So what exactly is Safaricom Academy and why am I enrolled. Well for me the journey began around 2011, that was when Safaricom academy was started if am not wrong. They uploaded the course modules online and I fell in love with the units immediately I mean It wasn’t like the boring math I was used to at JKUAT or the flimsy excuse  for CS either. This was content I was yearning for. I knew then that this is what i would do after Undergrad. You can see the course content here>> Well I malizad Campo around 2012 May, but by then I was already knee high  into Software Development. I had started working with the Late Idd Salim and as you all may know he was the code lord. He taught me a most of the things in the course  content and in less than a year I had already done several vertically scalable projects in USSD,SMS,Android,J2ME,Symbian,web etc. So I missed the 2012 and 2013 intake. so when the 2014 intake was announced I was balls in.

Strathmore has a rigorous recruitment for this course,well first you have to apply obviously, then they do shortlisting and after that they send emails for people to avail themselves for Practical Interviews. The Pracs are primarily code sessions with a little bit of math,English and general logic (Psychometric if you will). After this the next is shortlisting and then an oral Interview after which if you are selected you receive an invitation email to the programme. Its currently offered in both Full time and part Time. The full time students are mostly under scholarship from Safaricom. I am in the part time class (5.30 to 8:30), this class is a little different  since we have to pay for our tuition per module. Module cost is around 115K. There are 7 total modules (115K*7 =805K)..Starthmore is pricey I know don’t even get me started on this.

Coming from a public Uni background to Starth is like getting used to shagging a skinny chic and getting Vera Sidika. The ass overwhelms you at first. Well lets begin with the infrastructure. This guys have neat infrastructure, lets start with where our classes are

BuwX4m_CMAE1k0X

ILAB  is on the 4th floor of the students center.It houses other offices and study areas. Strath has a strict policy on dress code, I cant go to class as I did in undergrad shorts and tees they have a strong inclination towards formal attire and even have Fashion police to enforce it. Secondly there is an obsession with School Ids. I went through years of undergrad without as much as showing my School Id except occasionally on exams, here is quite converse,you need your Id to get into the students Center to move into Phase 1, to board the bus, you need to use Biometric maneno to get into class, Biometric to go to the Lib etc. Their labs are pretty neat also. We have OOP in the Samsung Lab, next to the Oracle Lab, there is an Ericsson Lab on the same floor as well, you get the picture, a far cry from the 100 year old labs at JKUAT.

We are 12 in our class, a small class. So far one guys has quit I guess juggling  class,life and work aint easy. So far  module 1 has OOP in Java,Data Structures in C++,Ethics and Wireless Technologies. The course is served pretty well, however despite the fact that I know OOP in Java inside out I still have to attend classes no exceptions. so I sit down through hours of JAVA,JAVA ME etc bored as hell but this is strath I cant dodge classes and expect to graduate. This aint the Black panther party where rebellion is encouraged

In general its hard running my own start up  (Ujuzi Code) classes, side projects and still finding time for the Mrs, but I guess I have to find a way to make it all work. I owe myself that much.I will blog more on grad school once I get time

 

 
Leave a comment

Posted by on October 7, 2014 in grad school

 

Tags: , ,

The Elusive MPESA API that may never be…and More

mpesa-logo

Alot has been Blogged about the MPESA api…and when I say Alot am talking about 1000’s of tweets,blogs,texts etc. When The Late Idd Salim (It still hurts me to call him late) was around he delved endlessly into this. Everyone has talked about how Devs would be able to leverage said APIs into their systems  if Safaricom Just agreed to play Ball. But You all know safcom….safcom is like that pretty chic,big booty, titties from here to Ronga..the whole Package…The hardest thing is kuingisha  dame kama Huyu Box…I mean the typical point of approach would be “Waaa Msupa si umeiva..” But kwani you think its the first time she has heard this..off cource not she will just snob you and twerk that ass some where else. Same thing with Safcom we all approach them telling them the same thing..”aki safcom MPESA ni poa wacha tu code on it” And safcom will snob you. But even pretty chics get Lonely si ati they also dont want the D..kuna someone who will come with a new Different angle instead of cliche lines he will hit her with unxpected wordplay “Waa si I like your eyes,na si unajua Mwanamke ni Haga,why you have a small one??” and baam chic will  be disarmed nikama kufinya reset kwa system. Back to safcom someone actually ingishad them Box and build an API of sorts (Not new news really) I will get to that in a few

Ohh wait so Safcom just posted that MPESA is down as I write this for 2 days Runs to withdraw cash: *sigh*

CaptureMPESA

Back  to said API ,Bernsoft kitu last year sucessfully developed  a system for MPESA that makes MPESA transactions realtime – this is why when you pay DSTV your account gets reconnected immediately or when you deposit money to your bank from MPESA its realtime or why your KPLC payment is more realtime than it was before. They developed this system called “MPESA Instant Payment Notification (IPN) ” originally for use on Kenya Airways ticketing then presented it to Safaricom and they liked the idea thus opened up MPESA for us them to integrate with and so most if not all of MPESA Paybill /Buy Good Transactions are now processed through this locally developed system.

Many Local companies are Using this (I for one do most of my MPESA stuff primarily on said IPN) But this is Not full proof.For starters its Not exactly Bi Directional and requires Integral Integration with a Paybill Number. If you have ever tried getting one you will know its one of the hardest things ..hard because the tarrifs are a CLOSELY guarded and No one can know what say Comapy A pays.Meaning If you dev a system and you set up a contract with them you may be charged x and Company A gets charged y Where x>y and you cant do shyt about It.

But this was a great leap since it was the first( Ata Virgo haitikiangi kila siku after the first time, you have to give  her time to Digest the awesomeness of the D) hahaha…Moving along swiftly..The problem with Safaricom is that Saf cannot be both the owner of the platform and also the gate keeper of innovations that may run on it. All the Innovations Devs talk about  will not stop them from earning money by coming up with standard licensing fees. However and Important to Note it should not be up to them to decide which idea they like and therefore should run on a payment system. This is the same problem AT&T had because they simultaneously owned Bell Labs which churned out landmark software technologies, they could decide that a technology that seemed a threat would not run on their network yet they were virtually a monopoly the way M-PESA by market positioning is a virtual monopoly.The fact is we cannot let Safaricom  stifle innovation and continue to prosper. AT&T was finally split up in 1984 not because of its overwhelming market dominance, but that IT WAS REFUSING TO ALLOW NEW INNOVATIONS TO WORK ON ITS PLATFORMS thus overall stifling technology.

There are thousands of programmers who could come up with software or games that could seamlessly integrate M-PESA as a payment platform for their services without having to go through an approval process where Safaricom technical people are the judges and jury particularly given the integrity issues that have long been raised of these Safaricom IT guys when it comes to dealing with developers.

Another key thing of Note if Safaricom will ShutDown MPESA today (11:00pm Saturday 9th November to 6.00a.m on Sunday 10th November) will this rumpant outages not cost the economy? 35% of our Kenyan GDP passes through M-PESA when there is no credible redundancy.That if MPESA is out of a week the economy stagnates? Potential systemic risks such as banking systems heavily exposed to one economic sector are heavily discouraged and neither should we say our national transactions are 35% exposed to one payment system and be happy about it.A system which No one but a select few know anything about

As Salim would Say: Wazi Back To code

 
3 Comments

Posted by on November 9, 2013 in Uncategorized

 

Tags: , ,

5 programming Languages I would advice to Learn

This list is purely based on my personal experience as a coder,these are primarily the code languages that I have been asked to demonstrate,develop in or mentor.

1.Java
java_code_generation_big

 

Java certainly has its critics, not to mention some well-publicized security issues. I believe they still tech this language in Campo, can’t possibly hurt that Google uses Java as the basis for Android application development, a sector that isn’t likely to slowdown anytime soon.

2.Python

calculator-python-code1

Python is a general purpose programming language that can be used in a variety of ways. Known for its clean and efficient code, Python is used by players as notable as Google and NASA. It’s also what Dropbox is written in. In fact, the technology is so important to Dropbox that the company hired Python author Guido van Rossum away from Google late last year.

3.PHP

phpCodeEditor

 PHP is huge. The open source, server-side scripting language runs on more than 20 million websites and powers high-profile sites we deal with every day, including Facebook and Wikipedia. Any blog, news site or other website built using WordPress or Drupal is making use of PHP as well. It’s all over the Web, even if you can’t see it by clicking “view source.”

4.Ruby

syn_color_IR_White.example_ruby

I don’t have a lot of working knowledge of Ruby,I started learning it 2 weeks ago ( see here). However It may be almost 20 years old, but the object-oriented scripting language is still going strong. After existing for years as a general purpose programming language, Ruby got a huge bump from the advent of Ruby on Rails, the hyper-popular Web development framework. Since the rise of Rails, the two have practically become synonymous, but Ruby has plenty of applications as a general scripting language

5.Objective C

sampleMemberCode

It’s the core of development for both of Apple’s operating systems. Its roots in Mac OS X go back to Steve Jobs’ days at NeXT and it’s at the heart of iOS and all their apps. If you are interested into going this way Then this is a language I would suggest you pursue

 
2 Comments

Posted by on July 17, 2013 in Uncategorized

 

Tags: , , , , ,

So begineth me and Ruby on Rails

Wait before I begin this code stuff, I was just  playing Let Nas Down off that Born Sinner album….all I can say this some epic music…best line he says “Long live the idols may they never be your rivals,pac was like Jesus,Nas wrote the bible”  Then thanx to @TayianC I got the rmx to it where Nas replies to J cole…. Story for another day lakini…. Back to code

1883857_orig

As I blogged here last week >> am learning ROR (Ruby on Rails) from scratch…with mentorship from some of the best ROR coders In Kenya. The first step is always setting up the environment,and trust me you don’t want to be that guy going at a pro  “how do I set up Ruby on rails on my machine”..so Had to do it myself…hit the usual stumbling blocks and decided to write this to help anyone who will go through the same:

First  my environment Fedora 17 GNOME on 6GB RAM, Core i5. That being said,I tried setup the  old fashioned way

sudo yum install ruby
sudo yum install rubygems
gem install rails

Screenshot from 2013-07-08 09:53:09

But the problem with doing it that was is I could not install some gems (rails,sqlite or mysql)

Screenshot from 2013-07-08 12:42:42

So after some research and asking around I got to learn that I should do this setup using RVM ….so here is how I did it

First install  the prerequisites

sudo yum install git-core curl make bzip2 gcc-c++ patch readline readline-devel zlib zlib-devel libyaml-devel libffi-devel libxslt-devel sqlite sqlite-devel openssl openssl-devel

We are now ready to install RVM:

bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)

…followed by,

echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bashrc

Finally, reload your .bashrc file with the following command:

. .bashrc

Ensure that RVM is loaded with the following command, which should output “rvm is a function”:

type rvm | head -1

The following steps will install Ruby, Rails and the Sqlite3 gem. Execute these in order:

first,

rvm install 1.9.3

then…

rvm use 1.9.3 --default

Screenshot from 2013-07-08 12:12:23

followed by…

gem install rails

Screenshot from 2013-07-08 12:30:57

…and finally,

gem install sqlite3

Screenshot from 2013-07-08 12:40:07

 

And Viola you have Ruby,rails and sqlite setup (if you are planning on using MYSQL then you can as well install it instead of sqlite)

 
3 Comments

Posted by on July 8, 2013 in Uncategorized

 

Tags: , ,

Type of Code Clients I have met

So someone accused me of only writing about code this and code that, nimaka unaweza peleka Code Nakumatt upatiwe shopping au Butchery ya Kamau akukatie ka Nyama Nusu…of course not, there has to  be business involved or in the words of Uhuru Kenyatta, willing buyer willing seller…so today I will just talk a little bit about the two types of willing buyers I know/ have had the experience of working for.

I have been taught by time and of course by more seasoned business men to divide clients into two broad yet true categories: Clande/chips funga and Girlfriend/wifey

1.Clande/chips Client.

film_pick_up_line_801085

The name speaks for itself, this type is the tap and go…No strings attached no Numbers no natsing. Usually this is my best type of client since everyone goes home happy. A clande Client knows point blank what they want, and how they want it. They are straight forward, utapatiwa spec doc yako,depo na time line. Utafanya Kazi, ukimaliza UAT kiasi. bass…the story ends there final Installment paid and you both go home happy. In the event hamskizani, you both have the luxury of walking away since you just met and nothing has been invested yet in between the two of you.

The Good thing about this type of client is just like a clande kwa bar uko guaranteed not to sleep hungry . Its cash at hand so you are happy,your landlord is happy and even the real Clandes are happy. Moving along

2.Girlfriend/wifey Client

art-cartoon-couple-cute-drawing-heart-Favim.com-48970

Sasa huyu ni ule wa long term…yaani in other words ata sio Strings attached ni more like ropes.This is the worst client ever. Let me explain using the analogy of a real world Girlfriend. You meet a hot mama, someone you think is a keeper…unaanza courtship. if you take that leap of faith you should know you will be in it for the long haul,during which anaweza amua hakuvunjii (utaka nja baba)…the only thing you get are hugs and smonches…you will have to be there for her 24/7(kama customer care)..handling all her Hormonal maneno and stuff……you get the picture.

Back to the client, you meet a big client <usually some corporate or Gov deal> una strike ka deal nao ,depo labda 30% unapatiwa kazi inaanza….1 month in system changes zimeanza,sijui integration na system flani wanatumia,2 month HR wanataka module yao…una call meeting…”hii haikuwa kwa spec doc…bla bla bla” wanakuangalia “How much more will it cost us” una peana figure…na ju uko na Njaa 20% unapewa,una endelea na code…3 months later huna rent,dame yako ana kuagalianga asubuhi ana skia Nausea ju huna any..zako ni “Ngoja niko karibu kulipwa” …they drag payment…na the day they actually give you your loot ni Friday Jioni na ni cheque ita take 3 days ku mature kwa hivyo tuseme next week Thursday ndo utakuwa monied. DAFAQ

All the while hiyo monday next wana kuambia you drive to their place to sort some stuff out, nikama walikupatia fuel card  ya kutumia. The Girlfriend client will also catch feelings if there is a bug “aki na vile tume kulipa vipoa..” This are the clients who will ask for refunds/sue you/want you in the office every week etc.

Any who those are my two categories of clients. Hope one of you out there can relate.

In other news if you haven’t yet tried PesaBox here is the link>>, and here is a brief Wiki entry of how it works/what it does.

 

 
Leave a comment

Posted by on April 5, 2013 in code, hack, Humour

 

Tags: , , , ,

I thought of quitting Code

Strange title don’t you think, well its true I did contemplate quitting my most revered calling ..coding. But before I tell you what happened let me first discuss why I got pissed. coding is an art and a science. Its writing lines after lines of code and producing something someone can use on a day to day basis. I remember one time my niece asked me what I do for a living and it was really hard explaining  to her what coding is all about, but the little darling already had a theory of what I do “Uncle si unaandikanga kwa blackboard ya white siku mzima” She calls both my physical white board and my IDEs Blackboard za white….then again she is just 4 years. Any who that’s me digressing…

Kenya is a country of hype, don’t believe me look at how Susan wa Tujuane became a house hold name,Look at Dida… Kenya is just one awesome country where trends are just over-hyped  Let me steer to my side. Code and In general the IT boom. I  have had people in the country and the few other African countries I have been blessed to go to call Kenya a great tech scene. The silicon sijui savanah au what ever they call it. I once had a Tanzanian friend tell me  how they believe Kenya is wired,things are run by computers. I looked at him and was amazed..Is this the same Kenya I know. But here is what really happens, ordinary Muggles will watch the 7pm or 9pm news.. They will see images of ICT in Kenya  some snapshot of guys in IHUB or Nailab, some local apps that claim to change the world will be show cased. Then Bitange Ndemo will talk about a new fiber landing on the coast..And bassss…you will feel all snuggly inside and lie, yes lie to your self that Kenya tume fika…But wait I have the true test of gauging the level of tume fika.

With the exception of MPESA what other Kenyan brewed tech product   do you use? Yes am talking to you my dear reader? You will wake up in the morning watch DSTV CNN muhimu, check your mail GMAIL muhimu, drive/jav to work chat up your pal/chic/clande/chippo on WhatsApp, WHATSAPP muhimu…get to work Microsoft ndo zako,boss akitoka/kazi ikireduce Youtube,Facebook,Twitter Muhimu..Skype Kiasi. Go for Lunch uko na mullah so you eating something fancy you check in on FourSquare and Instagram the food to a pal. Toka hapo back to works Uko sleepy kiasi so you chuk out your headphones and listen to music on your Galaxy something MXplayer or something like that. 5 ikifika hujui kama traffic ni mbaya WAZE ita help, tells you how the traffic is..On your way home you will be on some social Media/listening to music on a foreign made  app. And Morrow you will do it all again… Yet you will say that the Kneyan tech scene has matured and you think Zuckerberg should open an African HQ along Ngong RD as we wait for Konza ijengwe. Amen Bratha Amen.You know Not what you say

The sad truth is the only thing that has grown in Kenya as a resort of said tech boom is Safaricom’s data Revenues and Other ISPs in that matter. “Sasa Jaymo Unasema hii Yote ndo?”  Let me elaborate… I hate tech competitions… Ile roho safi Hackathons za kupeana prizes I never go…Sio Ku participate . Never!! Why? simple…You give a winner 1mill coz app yake ni briliant and It ends there. Safaricom AppSTAR the last event I can remember had winners…Name one product from said venture that is in use by ANY KENYAN CURRENTLY. I waited for them to release them to the market for me and other Kenyans to use but wapi?? Before that kulikuwa na AAC winners announced prizes announced but bilaz….inaishia hapo….all the while Kenyans will be shown this on media,ma picha za IHUB na Bitange ndemo…we will say tume fika…some kid will now apply to do computer Science to become Mnoma kama  Mr/MS/Miss so and so who won 10,000 USD. Epic fail

But wait all is not lost, Am not quitting code..My landlord still needs his rent on time. In spite of all this bullshit kuna a ray of hope….In the name of PivotEast…na sijalipwa ku blog hii so don’t say sijui nini. Pivot is the real deal, All the solutions they award turn out as products that people use. Pivot sio place ya kupeleka App yako ya ufala ndo upatiwe pesa ya kupeleka dame yako lunch place fancy.. Its the real thing, real Coders/Devs/Code Jammers/Hackers who develop things that can grow. The first thing msee atakuuliza is how  many clients do you have and whats your revenue model..sio how does it pass data au why did you use NGINX instead of Apache. In my opinion Pivot is what will drive the tech scene we all dream of sio hackathon sijui ya madame pekee, sijui ya UoN pekee kuandaika ma app za ku show map nikama Google Maps has been cancelled.

And this year Pivot has gone a step further:

  • Participating startups must be domiciled in Uganda, Kenya, Tanzania, Rwanda, Ethiopia, South Sudan, Somalia or DR Congo
  • Entries to the competition will be considered to be startups as per the universal definition of a “startup”* or a startup company (*as done below)
  • Participating startups must indicate details of at least two members of their team in their application profile
  • Companies that reached final 25 lists of Pivot 25 in 2011 or Pivot East 2012 may not compete with products/services previously submitted for the competition, the judging panel will have discretion to disqualify entries in breach of this requirement.
  • Competitors selected to the final 25 list must have set up a legal entity (business name, limited company etc) for their business by 15th May 2013. Competitors with legal entities already set up will have an added advantage at all judging stages.

So atleast am not quitting code coz I still have a shot at making something that you as my reader may use in your day to day life. Haya nimemalizia hapo. Let me finish tweaking code ya PesaBox kiasi nimeskia kuna vile nafaa ka modification kiasi.

 
3 Comments

Posted by on March 19, 2013 in Humour, INTERNSHIP

 

Tags: , , ,

New Apps I have been working On.

Time to Unveil two new Apps I have been working on: This will be a pictorial Blog with few words and More Images just to give an impression of the Apps.

WipeOut Mobile

Available on : Google Play,Samsung Store,WipeOutMobile site

Uploaded: November- 5 -2012  (Google Play)

Description: Allows you to securely  Backup your Contacts and Messages securely on Cloud. In the Event of Theft you can remotely lock and Format your phone by Issuing a command to it.  You can also Restore Contacts and Messages to your phone from already existing Backups. All contacts and Messages backed can be viewed online by visiting wipeoutmobile.net

Download link: 1.) Google Play.

2.)WipeOutMobile

Explore Kenya

Available on : Google Play,Samsung Store, Appia Store

Uploaded: November- 1 -2012

Description: Explore Kenya from the comfort of your phone.Find out about National parks,Game reserves,Marine parks. Attractions in major cities and towns in Kenya. Want to know about Events that are happening in Kenya. Then its never been easier receive Push Notifications on your Android powered Device in real time. Share your sights and comments with your friends on Facebook and Twitter all via ExploreKenya.

Download link: 1.) Google Play.

2.) Samsung Store

 
Leave a comment

Posted by on November 5, 2012 in 254, Uncategorized

 

Tags: , , ,