NML Blog

Recent posts

Tech4Africa Review

I recently attended the Tech4Africa conference on 06 August 2015. It was hosted at the Greenpoint stadium (a very cool venue!). It provided a good opportunity to network with people in the technology industry as well as to hear some stories of successes and failures with new ventures. It was very cool to see what people are doing in Africa and how the technology landscape is changing. There were quite a few sessions, I’ve just selected a few which stood out.

From Technology to Socks (Nic Haralambous)

Nic was co founder of mobile social network builder Motribe, which was acquired by Mxit. He is currently founder of NicHarry (previously NicSocks), a luxury men’s sock company.


Here are some lessons from his entrepreneurial experience which he shared with us:

1. Building anything is hard.

  • Don’t build a solution that’s looking for a problem.
  • Build a solution to address an existing problem.
  • Build things of value.

2. Partnerships are hard.

  • Businesses fail because of people not technology. It’s the human element that’s tricky.

3. Succeeding is hard and virtually impossible.

  • 85% of businesses fail in the first 18 months.

4. Selling a company is hard.

5. Failing is hard.

  • There’s a stigma attached to failing in S.A which shouldn’t be there.
  • Embrace failure and learn the lessons from it. Failing is probably the best way to learn.

6. Everything is hard.

  • There’s a myth that your time is your own when you’re running a business. This isn’t reality. From Nic's personal experience, 80% of time is spent ON the business (growing it) and 20% is spent IN the business (actual work).

7. Build something tangible/real.

  • Building a technological product is hard because you effectively need to build a community around a product.

8. E-commerce is harder than a brick and mortar business.

  • People can’t easily engage with your brand.

9. In retail, you’re either at the top or the bottom of the market.

  • If you’re in the middle...you’re dead.
  • Rebranding may help here.

10. There are no overnight successes.

  • Nothing worth building is done in a short time.

11. Capital is for learning, don’t burn through it.

12. When raising funds, the key is to try to give up equity but maintain control.

13. First to market isn’t necessarily the best (think Facebook, PayPal).

  • Sometimes you need to learn from other’s failures.

4 useful tips to succeed:

1. Patience

2. Grit

3. Focus

  • Pick something that you can do and do that one thing really well.

4. Risk

  • Take chances early while you can afford to. Learn the lessons if it doesn’t pan out.

Let's make Code South Africa's 12th official language. (Andre Vermeulen)

This session was about equipping talented individuals with programming skills to build Africa’s digital future. Andre introduced us to codeX.

This is a full-time apprenticeship, currently based in Cape Town, which aims to teach young individuals programming skills. Languages include Java, PHP, Python, Javascript. An agile methodology is followed and programmes are self-paced. Students work with mentors on real-life projects for companies. There is the possibility of students being employed by partners for a time at the end of the project.

The idea behind codeX is to provide opportunities for students who wouldn’t otherwise be given them and to provide a safe space to experiment and grow.
“Africa will play a much bigger role in the global economy in the years to come. Sure, it has resources the world needs, but its biggest assets are its peoples' creativity, ingenuity, and determination. The mission of codeX is to arm you with the skills you need to take all that talent and create the future.” (codeX)

We were introduced to some of the students at codeX, who shared their experiences and technology preferences with us. Their excitement and self confidence came through quite clearly. codeX seems to be making a difference and the work that Andre and his team are doing is awesome.

Here's a video with more info on codeX:

Prototyping for perspective (Rishal Hurbans)

This session was about prototyping, the different types, uses and where it can be useful.

  • People are visual. They want to interact and engage.
  • People have expectations which must be managed.
  • People experience different problems and they do it differently.
  • The key is to be tech agnostic and focus on the user and objectives, rather than the solution.
  • Requirements are not equal to problems. Requirements are merely a perception of a possible solution.

A prototype is used to test if a possible solution/approach solves a problem. A prototype can be anything from a drawing/mockup to demonstrate functionality to a 3d printed product.

There are two dimensions of prototypes:

1. Horizontal – tests a broad set of features. Often used to confirm user interface requirements.

2. Vertical – focuses on a single problem/feature. Often used to obtain detailed requirements by drilling down into a feature.

Types of prototypes:

1. Throwaway/Rapid

This prototype doesn’t form part of the final solution. It is used only to learn.
A model is built very early in the project, used only to get feedback from the user and is then discarded.

2. Evolutionary

This prototype is very robust and forms part of the final solution.
Only requirements that are well understood are incorporated into a prototype and the user is then provided with a functional prototype to use and provide feedback.
Features are added and modified based on feedback.

3. Incremental

The final product is built in phases as separate prototypes which are then merged together.

4. Extreme

A robust product is built in phases, usually used for web applications.
Phase 1 – static html pages, Phase 2 – fully functional screens with mocked out service data, Phase 3 – services are implemented.

The prototyping process:

1. Identify the problem

  • Understand the domain. Look at the existing system and processes to understand how things work.
  • Talk to People. Define user personas – identify people, goals, frustrations, tech preferences etc. to help you really understand your users.
  • Visualise ideas. People express ideas better visually, which helps identify problems and solutions more clearly.

2. Find a possible solution

  • Look at similar industries/products – you don’t need to reinvent the wheel.

3. Develop a prototype

  • Choose the right prototype for your audience and needs.

4. Review/evaluate the prototype

  • Get feedback
  • Measure and analyse user interaction/clicks etc.

5. Revise and enhance the prototype

Why prototype?

  • You receive user feedback and involvement earlier, which costs less than having to change functionality further down the line.
  • It fosters a better understanding of the domain/problem space/requirements.
  • You realise oversights/constraints earlier.
  • Prototypes are “People Centric” i.e. they’re interactive. This encourages conversation and engagement.

Some prototyping tools

  • Invision
  • Pencil (Mozilla)
  • Balsamiq
  • Photoshop
  • Marvel

FPV 'drone' racing (Alan Ball)

This was a fun session run by Alan Ball. He started FlyingRobot which is an online shop which sells racing equipment like quadcopters, flight controllers, motors, radios, accessories etc.

Alan brought along a quadcopter and gave us a demo of how FPV (First Person View) works. It seems drone/FPV racing is picking up as a sport, and with this uptake comes new legislation as to licensing and what is/is not allowed.

If you’re interested in being part of this growing community, you can join the FPV Racing South Africa facebook group.

There's also a cool event you can attend, where you will be able to display your drones, fly them through an obstacle course and watch drone racing live!


Here are some pretty cool videos of what people have been getting up to with their drones –

Need a software development partner?

Get in touch