Welcome, Guest: Register On Nairaland / LOGIN! / Trending / Recent / New
Stats: 3,194,196 members, 7,953,717 topics. Date: Friday, 20 September 2024 at 12:32 AM

Davidsmith8900's Posts

Nairaland Forum / Davidsmith8900's Profile / Davidsmith8900's Posts

(1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (of 12 pages)

Computers / eHealth Startup By Nigerian Wins "Best Mobile Software Solution In Africa Award" by davidsmith8900: 10:32pm On Oct 29, 2014
eHealth-focused Nigerian tech startup Mobile Software Solutions has emerged winner of the the Best Mobile Software Solution in Africa 2014 at the World Summit Award (WSA). The startup was selected out of over 400 other solutions from across the continent.

The award was presented to its Chairman, Mobile Software Solutions Ltd, Mr. Chris Uwaje, at the just concluded 2nd Inter-Ministerial Conference on Sciense, Technology and Innovation (STI), held in Rabat Morocco.

The startup’s winning solution is its Malaria Destroyer Game which had earlier won the Best Mobile App (Game) of the year award at Mobile West Africa Conference held in Lagos Nigeria.

“With this type of solution, we can stop these massive Malaria deaths and sustain economic growth by ensuring the good health of our workforce,” Uwaje said.

Original Article - http://www.humanipo.com/news/47480/nigerian-ehealth-startup-wins-best-mobile-software-solution-in-africa-award/
Computers / Nigeria In Massive Push To Reduce Dependency On Foreign Software by davidsmith8900: 10:12pm On Oct 29, 2014
While Nigeria gradually moves down the path of diversifying its economy from oil, the federal government is seeking to reduce the level of foreign dominance in the nation’s fledging Information Communications Technology (ICT) market, industry observers say.

Plans are already in motion to ensure that Nigeria, Africa’s largest economy by GDP, produces 25 indigenous and sustainable software companies by 2017, the ministry of communications technology, has confirmed. This however represents one in a series of high-powered initiatives specifically geared towards increasing local participation in the ICT industry.

The modalities for the realisation of this agenda are currently been ironed out, but market observers are of the view that developing competitive alternatives is easier said than done. According to them, there is still widespread scepticism about the competence and talent of local software developers.

“It is a mind-set that was genuinely developed based on encounters and experiences. But, not all local software developers are lazy and incompetent,” said Segun Akano, managing director, UpperLink Nigeria Limited, an indigenous software development firm.

According to him, many local developers are making massive investments in international certifications and partnerships in an attempt to put their solutions in pole position to compete with their counterparts in other parts of the world.

“The government is also driving series of initiatives to support technology entrepreneurs. In the next two years, Nigerian and foreign businesses will have a different mindset about local software developers”, said Akano, in an interview with BusinessDay.

The imminent launch of the Nigerian Content Agenda by government, will also play a massive role in building the local Information Technology (IT) industry.

According to the National Office for Technology Acquisition and Promotions (NOTAP), Nigeria has lost approximately $1bn to foreign software imports and maintenance contracts on an annual basis over recent years.

Large scale buyers of foreign software include companies in most of Nigeria’s major industries, including banks and financial services, manufacturing, oil and gas, telecommunications, ministries and the ICT industry itself, which relies almost entirely on foreign operating systems.

“We are all consumers when it comes to the local software market. Everything is imported,” Emmanuel Bamiyor Iwegbu, managing director of ICT Convergence, a local technology solutions company. Omobola Johnson, minister of communications technology, said, in a paper presentation, that about 300 Nigerian firms play at the fringes of the ICT industry despite its robustness and largeness.

The sector is still largely dominated by multinationals, “which is actually not bad. But to further deepen the industry, there is need to build successful local businesses.” The minister observed that Nigerian firms needed to be more capitalised in order to compete favourably in the global market, dominated by the likes of Google; Oracle; SAP, etc.

She further added the ministry has created guidelines that would support the growth of local firms in the ICT sector including, accelerating the demand for local ICT products; ensuring procurements through local firms and partnership with multinational ICT firms.

Nigerian software sector loses about $360m yearly as capital flight.

Foreign manufacturers also supply most of the ICT-related hardware that is purchased in Nigeria.

As at mid-2013, foreign firms accounted for around 70 percent of the PC market and 100 percent of the handset market.

The government has introduced various ICT-focused initiatives in recent years. In April 2013, the ministry of communications technology, in conjunction with the National Information Development Agency (NITDA) and private sector players, launched the Information Technology Developers Entrepreneurship Accelerator (iDEA) programme, which aims to identify Nigerian ICT enterpreneurs and help them establish successful businesses.

iDEA centre focus on software development, and particularly mobile apps, enterprise solutions and software related to linguistics, education and Business Intelligence (BI).

Individuals admitted to the iDEA programme will be given better access to capital, training, mentorship programmes, business advisory services, shared tools, facilities, and if necessary work space. Only last week, Nigeria presented 14 start-ups for this year’s DEMO Africa, targeted also at creating big businesses out of the country’s ICT sector.

Original Article - http://businessdayonline.com/2014/10/nigeria-in-massive-push-to-reduce-dependency-on-foreign-software/#.VFFX8vnF_24

7 Likes 1 Share

Programming / Top 15 Programming Languages To Learn 2014-2015 by davidsmith8900: 9:58pm On Oct 29, 2014
There is a lot happening in the tech industry, with the advent of smartphones and every increasing numbers of people using it, the developers are in very much demand.

If you are a student and you are wondering which programming language you must choose to make an carrier then you must really have a check on whats in demand in the market. But you must make a choice on what YOU like and yes its more important.

Below is the list of 15 top Programming languages to learn in 2014-15, we believe that all these languages are very much in demand and always will be,



1. Java Programming Language

Any doubts? In the past few years Java has once again grabbed the top position in the charts of THE LANGUAGE to learn, thanks to Android Operating systems the demand of Java in market has grown largely over time.


Why one should learn Java ?

Java is used almost everywhere, your phones, washing machines ,Tv's, Banks, ATMs, Vending machines , Gaming Consoles, Games, you name it and it has it!

Some of the Java Technologies and its usage,

JSP : To make dynamic websites.

Java Applets : Programs that run on web browsers.

Java Swing/JavaFx : To make desktop applications.

J2EE : To make Enterprise level applications.

J2ME : To make applications for Mobile phones.

Android Development : To make applications for Smart phones, Tablets, Watches and TVs


What makes Java so powerful?

Java is an Object-Oriented Language, and has very few implementation dependencies. Its "Write once, run anywhere", i.e. you only need to compile the code once and the complied code is independent of the system on which you run it (e.g, Compile on Windows and run on linux or Mac OS X). Its Open Sourced (OpenJDK). There are lots of API's and online forums available in the market which make it more demanding.




2. C Language

Many will agree with this, C language is one of the oldest language yet the first language that people learn when they start learning programming. Why to learn C language?


C language is a general-purpose programming language developed by Dennis Ritchie in the 1970's and is the most widely used programming language till date. Most of the languages developed later on in many ways have intreated from C languages , to name a few, C++, Java, JavaScript, Limbo, LPC, C#, Objective-C, Perl, PHP, Python and C Shell Scripting. So knowing C makes your foundations strong, thus learning other languages becomes easy.


What makes C so powerful?


Some features, 1. Portable

2. Easy to learn

3. Its fast compared to other languages.

4. Its free

5. Its been there and famous for past 40+ years.

C is a procedural language, and almost all low level coding is done using C. C is still the first choice in System level programming. Operating Systems, Embedded systems, Hardware Drivers are programmed in C.




3. JavaScript

Yes, since past few years JavaScript has been i demand then most other languages. Thanks to web 2.0 and js libraries like jQuery, Node js, Angular js and all other libraries. JavaScript is no more a client side scripting language anymore , it works both at server as well as client end (read about Node.js).



4. C++

Pronounced as C plus plus, general purpose programming language based on OOPs concepts, it is a super set of C programming languages. Its the most powerful programming language and most part of the operating systems that we use are written using this language ( to name a few Windows, Mac OS X and Linux make use of C++ libraries). It is the first choice for writing low level programming.



5. PHP

Its stands for Hypertext Preprocessor, is the most widely used server side scripting language for making dynamic websites.

Why learn Php?

HP has been installed on over 250 million websites and over 2.1 million webservers.

Nearly 80% of websites with server side scripting are built using PHP.

Its Free (Open sourced)

Very Easy to learn

Better Support (documentation and forums).

Cross-Platform compatibility.

Powerful, Scalable and Quick.

Easy to deploy.

Lots of Frameworks : Zend, Silex, Symfony, Aiki and many more...

Lots of Hosting options and at reasonable price.



Who all use PHP


Facebook

Twitter

Flickr

Apple

Wikipedia

most of the Blogs ...





6. Python

Python is a general-purpose, high-level programming language. The code of this language is very easy to read and one only requires few lines of codes to do a particular thing compared to other languages.

Why learn Python?

There is a huge demand for this language in the market, over the time the demand for Python has grown exponentially. Companies like Google, Yahoo! and IBM use Python. So there is a lot of money that you can make if you know Python.




7. Objective C

Objective C is THE language if you want to develop applications for the Apple Mac OS X or apps for iPhones, iPads and the iPods. It is a very powerful language and is been in much demand since the launch of the iPhone back in year 2007.



Why to learn Objective C?

If you dream to make apps for the iOS devices then you have to learn this language. There is a lot of money that you can make by developing apps for the Mac and the iOS platforms. iOS developers are highly paid as compared to other mobile platform developers.

Update :

Since XCode6 Apple has come up with a new programming language for the Cocoa and Cocoa touch platform called as Swift. This language is much each to learn as compared to Objective-C (something similar to javaScript).

So Swift programming will surely be in much demand in the year 2015 and as its new its the right time to learn and excel.




8. C#

Pronounced as C-Sharp is THE programming language if you work with Microsoft technologies like .Net, ASP.Net. It is an object-oriented programming language. If you know C or C++ then learning C# becomes much easy. There is a high demand for developers working on Windows platform.If you plan to make applications of Windows Operating systems you need to know this languages. Windows Mobile apps make use of C# too.



9. SQL

Structured Query Language (SQL) is the language for relational databases. Be it Java, PHP, Python, C , C++ , C# or any other programming language you need to know SQL if you work with Databases like , mySQL, Oracle , DB2, SQLite, Microsoft SQL server.



10. Ruby on Rails

It is becoming the first choice of Startup companies, as it most suited for rapid web development (compared to languages like Java or .Net)



11. Perl


12. Shell


13. ASP.Net


14. Assembly


15. R Programming Language

Original Post - http://code2care.org/pages/top-15-programming-languages-to-learn-2014-2015/
Computers / Technological Solutions For Traffic In Lagos by davidsmith8900: 8:58pm On Oct 29, 2014
Tsaboin's Traffic Talk is a solution provided for the hectic traffic situation in Lagos state.


People sometimes spend up to four hours in traffic in Lagos state. PHOTO:Getty Images
The application gives people an update on the situation of traffic in different locations in the state. With live pictures and videos of traffic situations around Lagos bus stops. People can view what is happening and look for alternative routes via the company’s cameras stationed around the city.

“Business wise it is just starting. Our business focus is to provide a valuable solution to numerous people-millions of Lagosians, that we can replicate it all over the country once we hit the success rate which we are hitting right now in Lagos. The number keeps climbing up. We can then commercialise the advertising aspect of it because that is where the buck of the revenue will come from,” Dele Odufuye the CEO at Tsaboin told CNBC Africa.

People sometimes spend about three to four hours in traffic within the state which in a way affects the economy of the state. He said that lots of people are becoming aware of the service they are providing and making use of it.

“On a daily basis we have roughly between 6,000 and 10,000 people, it always fluctuates within that. We have active unique users that come in daily to view cameras and get traffic updates. On the app we have over 250,000 downloads.”


Could technology turn things around for Nigeria's traffic jams?
Apart from road safety, one issue that continues to ride in the hearts of road users in Lagos State, Nigeria, is the gridlocks experienced daily.
“We get feedback. We have built a system where people can communicate with us via Facebook, blackberry, twitter and emails,” said Odufuye.

Furthermore, Odufuye said that their system is automated so users can share the traffic experience. Also they have developers and programmers working day in and out making sure the cameras and applications are working.

“The Lagos state government are very interested in what we are doing. We have gotten invitations from the Lagos state commissioner for transportation. We have had the opportunity of meeting with the commissioner for science and technology and Lagos television traffic radio. They love what we are doing and are giving us their best support.”

Original Article - http://www.cnbcafrica.com/news/western-africa/2014/10/13/technology-solution-to-traffic-in-lagos/
Computers / Nigeria: Smile Communication Launches 4G Service In Abuja by davidsmith8900: 7:59pm On Oct 29, 2014
Nigeria’s Smile Communications has launched LTE broadband internet service in Abuja. The company said the Abuja roll-out, coming barely one year after its 2013 commercial unveiling of its network in Ibadan, and months after Lagos, followed more than three years of extensive testing and development.

Smile Group’s Chief Operating Officer, Tom Allen, stated that: “Abuja is very strategic in the company’s growth, and Smile has taken its time to ensure the service is at its best in the capital city. Our vision of becoming the broadband internet provider of choice in Nigeria has guided us in everything from selecting our people and partners to developing relevant products and services. We are confident and excited, and we are ready to share the promise of digital citizenship with Abuja residents and millions of Nigerians.”

According to Allen, Smile customers are already experiencing global standard speed and quality; however, with the implementation of 4G technology, these customers can experience speeds over 20Mbps.

Allen noted that key to Smile’s vision is to create a memorable experience for the customers. According to Allen, Smile Nigeria will create more than 400 highly specialised Nigerian jobs during 2014 alone.

Original Article - http://www.itnewsafrica.com/2014/10/nigeria-smile-launches-4g-service-in-abuja/
Programming / Re: Are We Still Allowed To Post Our Apps Here So That People Can Correct Them? by davidsmith8900: 12:01pm On Oct 28, 2014
Looks like they banned you again pal, because I don't see the message. Maybe someone from Nairaland can work on whats going on. Why are we getting banned for posting reasonable threads and information that can help us in the future? Are we being held down so we don't move on up in society?
Programming / Re: Are We Still Allowed To Post Our Apps Here So That People Can Correct Them? by davidsmith8900: 11:50am On Oct 28, 2014
Yesh I was banned for a while for doing the same thing. Like I look at the rules of the forum and I don't seem to be breaking them when I demo my work here on Nairaland. I don't know if it was the antispam bot that banned me or if it was human.

Here are the rules:

1. Please post on topic always. Don't derail or tribalize threads.
2. Don't abuse, bully, deliberately insult/provoke, fight, or wish harm to any Nairaland member.
3. Don't advocate or encourage violent actions against any person, tribe, race, animals, or group of people.
4. Discussions of the art of love-making should be restricted to the hidden sexuality section.
5. Don't post pornographic or disgusting pictures or videos on any section of Nairaland.
6. Don't post adverts or affiliate links outside the areas where adverts are explicitly allowed.
7. Don't say or do anything that's detrimental to the security or success of Nairaland.
8. Don't post false information on Nairaland.
9. Don't use Nairaland for illegal acts, e.g fraud, piracy, and spreading malware.
10. Don't expose the identity or post pictures of any Nairaland member without his/her consent.
11. Don't create distracting posts e.g. posts in giant fonts or ALL CAPS or with silly gifs.
12. Don't insert promotional signatures into your posts. Use the signature feature.
13. Please report any post or topic that violates the rules of Nairaland.
14. Please search the forum before creating a new thread on Nairaland.
15. Don't attempt to post censored words by misspelling them.
16. Don't promote MLM schemes, HYIPS, or other questionable schemes on Nairaland.
18. Don't spam the forum by advertising in the wrong places or posting the same content many times.
19. Don't create a new account when banned for breaking a rule. If you do, make sure we don't find out.
20. Please cooperate with the moderators, super-moderators, and administrator. Treat them with respect.
21. Please spell words correctly when you post, and try to use perfect grammar and punctuation.

and none of them seem to be talking about not being able to post your work. Is that illegal now?
Computers / Seagate Set To Invest In Africa by davidsmith8900: 11:57pm On Oct 26, 2014
Africa as a region has been attracting attention and focus in the IT sector over the past two years due to the vast growth opportunities. Seagate has placed a three year strategy to grow its presence and investments in Africa, with their key focus being Kenya, Nigeria and Algeria since 2013.

According to the company, Seagate started investing in people and channel programs to extend their market presence across the continent. South Africa is another significant market for the company due to its market share and leadership in the country.

Christian Assaf, Senior Sales Manager Seagate, MEA stated that: “As Seagate, we see huge potential for various countries within the African continent. For our business we see Kenya, Nigeria and Algeria among the top countries driving big strides in ICT implementation”

At the start of 2013, Seagate had initiated a three-year plan to extend their presence in the African continent. They invested in headcounts hiring three new Channel Relation Managers in these countries to help optimise their strategy and channel programs. This has enabled driving opportunities related to growth of cloud and the increase of storage demand.

The demand for enterprise storage systems continues to grow rapidly and is fueled by long-term demands for scalable storage; especially with the increasing popularity of cloud. “In addition, we see a huge growth in segments like business NAS and surveillance, as well the huge demand for more advanced consumer storage devices,” Assaf added.

As part of Seagate’s go-to-market strategy in Africa, the main focus of their local Channel Relation Managers is to drive the expansion of their Seagate Partner Program (SPP).

Seagate believes that investing in people within Africa is the key that can drive future expansion.

Link ~> http://www.itnewsafrica.com/2014/10/seagate-set-to-invest-in-africa/
Computers / Microsoft To African Tech Startups - "Create Products With Global Standards" by davidsmith8900: 8:14pm On Oct 23, 2014
Africa is a rising global competitor in the technology industry with more traction in the global startups scene as a result of growing number of tech hubs, big investments, and fresh ideas.
With Microsoft’s continued commitment of granting seed funding, technical support and mentorship to fast-track the growth of startups to highlight Africa’s ‘future growth pole’, the Country Manager, Microsoft Nigeria, Kabelo
Kabelo Makwane
Kabelo Makwane
Makwane in an interview with Vanguard Tech news at the just concluded DEMO Africa that enabled startups from all over Africa to pitch their solutions before angel investors and IT buyers across the region said that African startups must create products that meet global standards.
He spoke at length in a number of initiatives Microsoft is doing to support the growth and development of innovative solutions among startups which he believes can change the world.
Excerpt:
Sponsorship of Demo Africa
DEMO Africa is the coming together of different stakeholders who are interested in seeing the evolution of innovation. People that are very interested in essentially investing and supporting the start-ups.
So in Microsoft, one of our key areas is how to enable start-ups in Nigeria through incubation programmes and essentially how we incubate them and help them to grow so that they in turn can contribute to job creation and help the economy. We have about 60 million small enterprises in the country and you know that unemployment is a big challenge in the country, so what we aim to do is to potentially contribute to the creation of more tech start-ups so that they in turn contribute positively to the alleviation of the unemployment scourge.
Market for start-ups
From what we have seen, there is actually a big gap in the market currently. This is where i think we can make meaningful impact because if you look at the big enterprises, the reality of it is that if you look at the banks, the telcos, and other major corporations, they are not going to be employing people in droves, instead the reverse will be the case. This is because as big corporations, they are always looking at how they can optimise cost by reducing overheads.
And so, we have to look up to the start-ups, because even government for instance, will not be contributing significantly to the eradication of unemployment.
Research has shown that when you begin to make investment in SMEs, this is when you will begin to make meaningful impact.
Investment in the startups
We have teamed up with few industry stakeholders and others that are of like minds. For instance, we have teamed up with USAID, and a few other stakeholders. There are a few other ventures capitalist, investors that essentially want to provide seed funding.
Beyond that, there are lots of others in the Demo Africa confer-ence that will be interested in helping these start-ups to move from a start-up face to running sustainable businesses. It is not a single handed thing for Microsoft. There are a number of partners who are con-investing with us in order to help these guys to be successful.
Our participation in DEMO Africa:
Our purpose is to focus on businesses that are innovative to create opportunities and to bring products and services into the market.
So, it is an opportunity for us to collaborate with the likes of AfriLabs, USAID, venture capitalists and other stakeholders.
As a platinum sponsor, it means that we have a commitment to seeing these start-ups through in terms of direct investment in their success and their partnerships with all the other stakeholders. So we are going to be investing very directly as Microsoft in some of these startups
It is to showcase what is possible and what innovations there can be. The idea behind this is to take this a step further because one of the challenges we are solving is that of unemployment. We are also trying to address the challenge of youth enjoyability, lack of unemployment opportunities in the market.
It goes to the next level where through our African investment. We are then able to invest in these start-ups where we are also able to incubate those start-ups and help them to invest in successful businesses that can employ people within the economy and contribute to alleviating the economic challenge of youth unemployment.
Specifically, we have had lots of experience within the context of Nigeria and other African countries where we have invested in a few tech start-ups. We want people to create economic opportunities using their innovations. So these start-ups’ idea is really about how to monetize and essentially about creating products that are of global standards.
Investment landscape for Africa
I believe that we are starting to see momentum in terms of more and more youths realizing the opportunities around creating mobile apps, creating companies that will deliver services leveraging the benefit of technology, innovations that could talk to agriculture, the financial services sector,among others. O
ne of the realizations in the Nigerian context after the rebasing is that the services sector was a significant contributor to overall GDP in the country. And so what is in the services sector apart from the financial services and legal services is also technology services, that is, in terms of how we consume technology.
So when you talk of landscape, we have lots of young minds who needs someone to take what they have, help them to actualise it, incubate it, make it sustainable and help them to actually create businesses and participate meaning-fully in the local economy.
Collaboration with AfriLabs
We have been collaborating with AfriLabs across the continent. Afrilabs is an important incubation centre for us that provide beyond skills to technology of which we are significantly contributing. But also they provide skills in terms of business like how people can put together a sustainable business plan, how to monetise and create a viable business out of an idea or something based on intellectual property.

Link ~> http://www.vanguardngr.com/2014/10/microsoft-african-tech-startups-create-products-global-standards/#sthash.1wXMxjgo.dpuf
Computers / LG Donates 2000 & Samsung Donates 3000 Smartphones To Fight Ebola by davidsmith8900: 4:28pm On Oct 23, 2014
Samsung Electronics South Africa revealed earlier this week that it will be donating 3000 smartphones, worth about USD 1 million (ZAR10,9 million) to support the ongoing fight against Ebola.

LG is now doing the same. LG is expected to donate 2000 smartphones to the United Nations, in order to help in the fight against the Ebola virus in West Africa.

According to LG, the smartphones will be going to healthcare and other key personnel who have been dispatched to affected areas. LG also added that the smartphones will allow for seamless communication between the teams on the ground, focusing on medical data gathering, monitoring and planning. The UN Office for the Coordination of Humanitarian Affairs (OCHA) will distribute of the mobile devices one received.

Link ~> http://www.itnewsafrica.com/2014/10/lg-donates-2000-smartphones-to-fight-ebola-in-west-africa/

1 Like

Programming / Re: Why Does Nairaland Ban Important & Useful Information/Threads? by davidsmith8900: 1:58pm On Oct 23, 2014
dhtml18:

Sharrrap there my friend *slaps the boy*


That is very good. I like your posts too, they are so on-the-point, please keep up the good work.

Thank you very much for the compliment. I appreciate it and Have A Good Thursday.
Programming / Re: Why Does Nairaland Ban Important & Useful Information/Threads? by davidsmith8900: 11:44pm On Oct 22, 2014
Vstuffs:

Ok..expecting more good posts

Most definitely. Will be happening.
Programming / Re: Why Does Nairaland Ban Important & Useful Information/Threads? by davidsmith8900: 8:05pm On Oct 22, 2014
Vstuffs:
I like most of your posts,But I think it is better copying and posting the full/half content(in a quote) in nairaland rather than just posting only links without content
Maybe the only link stuff is what makes the antispambot delete threads

Okay thanks for letting me know. I'll work on my side. Thanks again for the feedback.
Programming / Why Does Nairaland Ban Important & Useful Information/Threads? by davidsmith8900: 7:00pm On Oct 22, 2014
Is it bad algorithm or is Nairaland trying to stop people from seeing information that may benefit them?
Webmasters / Here Is A Messaging App That Doesn't Use Internet by davidsmith8900: 3:04pm On Oct 13, 2014
Firechat ~> https://play.google.com/store/apps/details?id=com.opengarden.firechat&hl=en

It works by turning peoples phones into a wifi node/hotspot. Initially the maximum distance between 2 user is about 100 Meters but as more and more people are added to the network the maximum distance it can go, gets larger.

1 Like

Programming / Re: Why Aren't Nigerians Taking Advantage Of Messaging Apps That Dont Need Internet? by davidsmith8900: 2:39pm On Oct 13, 2014
How many people have looked into or downloaded the Firechat app?
Programming / Re: Why Aren't Nigerians Taking Advantage Of Messaging Apps That Dont Need Internet? by davidsmith8900: 5:47am On Oct 13, 2014
padeolu:
@OP, can you kindly list some of the apps?

Check it ~> https://play.google.com/store/apps/details?id=com.opengarden.firechat&hl=en

It already has about 1-5 million downloads. People in Hong Kong are already using it.
Programming / Re: Why Aren't Nigerians Taking Advantage Of Messaging Apps That Dont Need Internet? by davidsmith8900: 5:46am On Oct 13, 2014
Here is a great example Firechat ~> https://play.google.com/store/apps/details?id=com.opengarden.firechat&hl=en

People in Hong Kong are already using it.
Programming / Why Aren't Nigerians Taking Advantage Of Messaging Apps That Dont Need Internet? by davidsmith8900: 4:49am On Oct 12, 2014
I understand that 2go and Whatsapp are common and cool but they use internet and require money. However there are other messaging apps that do not use internet to communicate and do not need money. They work by turning each phone into a wifi node or hotspot and although the distance is initially limited to 100 meters for 2 users, as more and more people get on the network, the distance or range it can go, extends and maximises. So why aren't Nigerians (with a huge population and low GDP), taking advantage of this technology?
Programming / Re: What Android Phone Wud You Recommend For A Programmer? by davidsmith8900: 4:40am On Oct 12, 2014
I think it depends on what u are trying 2 use it for.

A. For coding, get 1 with an Android OS of at least 2.2, simply bcuz many Android users dont have the latest ones but many Android phones support Android OS 2.2.
B. For usage like calling n texting, get 1 with an Android OS of at least 4.0, simple bcuz many modern apps are making use of the latest Android APIs n hardware installed on the phones.
Programming / Top 10 Java 8 Tutorials - Best Of Lot, Must Read by davidsmith8900: 3:53pm On Sep 09, 2014
It's almost six month since Java 8 has released and there are so many Java 8 tutorials are written by Oracle, bloggers and other peoples, but which should you read? Which tutorials are worth of your time? Actually this question is asked to me by one of my reader called John, he was asking me about some good Java 8 tutorials, which he can read to start with. This encouraged me to take a look at some of Java 8 tutorials available on internet and form a list of best. I have just used three criterion, content, language and length. Because tutorials complements books, they should not be like book. They should be small enough to complete in few hours and complete enough to give useful information. I also like tutorials, which discusses practical problems and examples. Another thing I kept in mind that this list of Java 8 tutorial must explain core features like lambda expressions, streams, default or extension methods, annotation changes in Java 8, Nashron JavaScript engine, new Date and Time API and couple of more interesting features. I think following Java 8 tutorials have all these qualities and they are currently the best Java 8 tutorial available online.

List of Must read Java 8 Tutorials
Here is my list of Java 8 tutorials, which I will recommend to any Java programmer who wants to learn Java 8. These tutorials are good for both intermediate and experienced Java programmers, you will learn sufficient details of all key Java 8 features by following good non-trivial examples. Most of the tutorials are detailed enough to provide all important information and good enough to engage you for that period of time. So let's first start with official Java 8 tutorials from Oracle itself.

Official Java 8 Tutorial from Oracle
Oracle has done a really good job with Java after it's acquisition from Sun Microsystem. All the worries of Java no longer to be open source and destroyed by Oracle is settled by now, and if you still have that in mind then it will surely go away after using Java 8. They have even started work with Java 9, with features like money API, modules API and several others. Coming to this tutorial, it's the first one to look, even if you don't go along with all the examples, you must first look at this and then follow some other tutorials from internet. Oracle has covered almost all important features of Java 8 e.g. lambda expressions, default methods, stream API, bulk data operations, optionals, new Date and Time API, annotation changes in Java 8 and others. This particular link is for their lambda expression tutorial, but you can find all other topics by following this link. Seems, they have just done some CSS changes in their website, which makes reading this tutorial even more pleasant experience. I really liked how they have organized the tutorial and how they take your from simple to complex concept in matter of few examples. It's one of the best Java 8 tutorial, you can get for FREE, so don't forget to fully utilize it. They even have lots of good articles about date and time, optionals and other feature which you find on Java Tech network.


Java 8 Tutorial By Benjamin Winterberg
When I first come across this tutorial, I was thinking it as "Yet Another Java 8 Tutorial" but I was wrong, it's very well written and probably better than official Java 8 tutorials from Oracle for impatient developers. It's not as detailed as official Java 8 tutorials from Oracle, but surely detailed enough to give you exposure of all key details. It's worth of all seconds you spent on this tutorial, well organized and nice and simple examples. Benjamin Winterberg has done fabulous job, Kudos to him. Along with content, presentation is also good and once you start reading you will only getting up after finishing it, not much scrolling you can do there smiley


Lambda Expressions in Java 8
Dr. Dobbs is one of the respected site among developers and they often introduce new concepts with good details. This article has done justice with most important feature of Java 8, lambda expression. This will explain you the concept right from the start, as why do you need lambda expression, and if you are one who is lost between cryptic syntax of lambda expression ( I was, almost a year ago ) then this article is something you can look forward. It explains syntax of lambda expressions, how lambda do type inference, and how lambda expression works. Focus is how do you write clean code using lambdas and how functional interfaces, method reference, and constructor reference help you on your goal. It also touches tricky topic of lexical scoping used in lambda expressions along with default methods, and static methods on interfaces. If you are not convinced yet to read this tutorial, you would after knowing that author of this article is none other than Cay S. Horstmann, professor of computer science at San Jose State University, a Java Champion, and a frequent speaker at computer industry conferences and author of Java SE 8 For the Really Impatient book.


Overview of JDK 8 Support in NetBeans IDE
Out of big three Java IDEs (Eclipse, Netbeans and IntelliJ IDEA) , I think Netbeans has best support for Java 8. Their code assist and quick tips helped me a lot to master syntax of lambda expression and where I can use lambda. It can be really confusing when you find you can pass lambdas to some method but not to others, as you can only pass lambda expression to a method whose parameter is a functional interface, annotated by @functional or SAM type (a class or interface with just one abstract method). Netbeans really help here, it will suggest you when you can use lambdas, when you can use method reference, where is legal and where is illegal. So along with any of these tutorials or books, Netbeans should you be your best companion in your Java 8 journey.


My Java 8 Lambda Expression and Streams Example
What can be better than sharing your own experience and in this article I have shared Java 8 lambda expression and Streams wisdom with some easy to follow examples. This is the busy developers guide, who wants to learn by following and doing examples. You will find how you can replace your old anonymous class way of coding with brand new lambda expressions. I have given examples of how single abstract method interfaces e.g. Runnable, Comparable, Comparator, and ActionListener can benefit hugely from lambda expressions and functional interfaces. Since Java allows SAM type functional interface you can create method in Java 8 ways.


Maurice Naftalin's Lambda FAQ
This is one of the premier resource about lambda expression and Java 8. You will get answers of all your queries related to lambda expression here e.g. Why Java needs lambda expression, how Lambda expression works internally and all syntax and semantics of Java 8 lambdas. This is actually one of the most authoritative source about lambdas. If you don't know who is Maurice Naftalin, you better remember him from his excellent work at Java Generics and Collection book, one of the most recommend resources on Java Collection framework. Sooner or later you will come to this site, but since you know about it now, it's worth paying a visit and taking an idea of what you can learn about lambda expression in Java 8.


My Java 8 Streams Examples
I love stream for their expressiveness, lazy optimization and ease of code, and I found it while trying several different examples. This collection contains those tried and tested code snippet of stream API. You can find how to filter using steams, how to collect result, finding max and min, average and working with integer streams there. If you love to learn by following different kind of how to examples, then you will find this tutorial useful. It's more focused on how to do in Java 8 but also gives you important details while trying those examples.


Java 8 Tutorials through Katas : Berlin Clock (Easy)
Programmers loves Katas, I do, don't you? and what would have been better than learning new Java 8 concept using classical programming Katas. Viktor Farcic and Jordi Falguera has done really good job to teach Java 7 and 8 coding style using problems like Fizz Buzz, Berlin Clock, Tennis Game, Prime Factors, String Permutations, Word Wrap, Mars Rover, Bowling game and Reverse Polish Notation. Some of the Katas are in Scala which gives you more challenges of converting them into Java 8 code. So if you like to practice some programming Katas using Lambda expressions, Streams and new Java 8 utilities, this site is for you.


A deeper look into the Java 8 Date and Time API
List of Best Java 8 TuotrialsWhen some one talk about Java 8, including myself, main focus is always on lambda expression, but there are some other significant changes, which is also as important as lambdas. After lot of criticism of Java's handling of Date, Time and Calendar, Java is now sorted out all there mistakes by giving us a brand new Date and Time API. This API is result of all experiences of how a programming language should handle critical date and time. Though API looks largely inspired from joda date and time API, it's very designed. One of the key thing is separation of date from human and machine point of view. You have classes like Instant, Duration, LocalDate, LocalTime for your day to day needs. Java's handling of time-zones is also better in this new API, I hope it provides some way to reduce errors due to confusing names e.g. Asia/HongKong and Asia/Hong_Kong (one of them is valid). As suggested this article provides a deeper look into Java 8 Date and Time API. It's example driven article and I am sure you will love it.


Java 8 Stream Tutorial
I have become fan of Benjamin Winterberg, after reading his Java 8 tutorial, so when he publishes next two article in this series, I was quick to read. Like his previous article, he has done justice with Streams as well. I am really how he covers the concepts one by one in an order, which looks perfect. Since there are lot of things to learn about Streams, there is good chance that one or two will be missed, but this article covers most of them e.g. different kinds of streams operations like intermediate and terminal, lazy evaluation of streams, filtering, transformation, parallel execution, special Stream classes for primitives and several others. You will not only learn basics like what is a Stream in Java 8 and How it works but also some advanced operations e.g. how to use FlatMap, using Map and Reduce function in Java 8, filtering, collecting results and so on.


Java 8 Nashorn Tutorial
This is another gem by Benjamin Winterberg and it's actually one of the rare best articles on Java 's new JavaScript engine, Nashorn. For those who don't know, Java supports execution of JavaScript code from Java 1.6 by supporting Rhino (Java's legacy JavaScript engine form Mozila). Nashron is in the same league as Google V8 (JavaScript engine of Chrome browser) and Node.js. Though I have yet to be proficient in utilizing this powerful feature of Java, I like his article. It's good to learn about JJS (Java's command line tool to execute JavaScript) but also how to execute JavaScript code from Java Class itself. If you have just started exploring this feature, this is the article you should read.


Java 8 StampedLocks vs. ReadWriteLocks and Synchronized
Takipi blog has some interesting Java 8 tutorials, one of them is Java 8 StampedLocks vs. ReadWriteLocks and Synchronized. Tal Weiss, CEO of Takipi has done great job in explaining how StampedLock fair with classical synchronized keyword and better performing alternative ReadWriteLocks. He has nicely compared performance of these three lock on various scenario like 19 reader vs 1 writer, 16 reader vs 4 writer, 10 readers vs 10 writers and 5 readers vs 5 writers. Though conclusion is somewhat intuitive but more realistic as on average still intrinsic lock provided by synchronized keyword perform better.


These were some of the best Java 8 tutorials you will find online at this moment. Though these tutorials doesn't cover all the features introduced in Java 8, You will get nice overview of most of the core features e.g. Streams, Lambdas, new Date and Time API, Repeatable annotations, Nashorn and others. If you are hungry for more Java 8 tutorials, resources and books, You can also take a look at my earlier article about some of the best Java 8 books. I personally likes to thank all authors for taking their time and sharing knowledge, making it easy for us to understand power of Java 8. Great job guys.

Link - http://java67..com/2014/09/top-10-java-8-tutorials-best-of-lot.html
Programming / The Key Differences Between Python 2.7.x & Python 3.x With Examples by davidsmith8900: 3:13pm On Sep 09, 2014
Sections
Using the __future__ module
The print function
Integer division
Unicode
xrange
Raising exceptions
Handling exceptions
The next() function and .next() method
For-loop variables and the global namespace leak
Comparing unorderable types
Parsing user inputs via input()
Returning iterable objects instead of lists
More articles about Python 2 and Python 3

An IPython Notebook for this article can be found here

Input code will be shown with Python syntax highlighting,
and the output after execution in blue.



The __future__ module
Python 3.x introduced some Python 2-incompatible keywords and features that can be imported via the in-built __future__ module in Python 2. It is recommended to use __future__ imports it if you are planning Python 3.x support for your code. For example, if we want Python 3.x's integer division behavior in Python 2, we can import it via

from __future__ import division
More features that can be imported from the __future__ module are listed in the table below:


feature optional in mandatory in effect
nested_scopes 2.1.0b1 2.2 PEP 227: Statically Nested Scopes
generators 2.2.0a1 2.3 PEP 255: Simple Generators
division 2.2.0a2 3.0 PEP 238: Changing the Division Operator
absolute_import 2.5.0a1 3.0 PEP 328: Imports: Multi-Line and Absolute/Relative
with_statement 2.5.0a1 2.6 PEP 343: The “with” Statement
print_function 2.6.0a2 3.0 PEP 3105: Make print a function
unicode_literals 2.6.0a2 3.0 PEP 3112: Bytes literals in Python 3000
(Source: https://docs.python.org/2/library/future.html)





from platform import python_version
# function to print the Python version in the following sections



The print function
[back to top]
Very trivial, and the change in the print-syntax is probably the most widely known change, but still it is worth mentioning: Python 2's print statement has been replaced by the print() function, meaning that we have to wrap the object that we want to print in parentheses.

Python 2 doesn't have a problem with additional parentheses, but in contrast, Python 3 would raise a SyntaxError if we called the print function the Python 2-way without the parentheses.



Python 2
print 'Python', python_version()
print 'Hello, World!'
print('Hello, World!')
print "text", ; print 'print more text on the same line'
Python 2.7.6
Hello, World!
Hello, World!
text print more text on the same line


Python 3
print('Python', python_version())
print('Hello, World!')

print("some text,", end=""wink
print(' print more text on the same line')
Python 3.4.1
Hello, World!
some text, print more text on the same line
print 'Hello, World!'
File "", line 1
print 'Hello, World!'
^
SyntaxError: invalid syntax
Note:

Printing "Hello, World" above via Python 2 looked quite "normal". However, if we have multiple objects inside the parentheses, we will create a tuple, since print is a "statement" in Python 2, not a function call.

print 'Python', python_version()
print('a', 'b')
print 'a', 'b'
Python 2.7.6
('a', 'b')
a b



Integer division
[back to top]
This change is particularly dangerous if you are porting code, or if you are executing Python 3 code in Python 2, since the change in integer-division behavior can often go unnoticed (it doesn't raise a SyntaxError).\ So, I still tend to use a float(3)/2 or 3/2.0 instead of a 3/2 in my Python 3 scripts to save the Python 2 guys some trouble (and vice versa, I recommend a from __future__ import division in your Python 2 scripts).



Python 2
print 'Python', python_version()
print '3 / 2 =', 3 / 2
print '3 // 2 =', 3 // 2
print '3 / 2.0 =', 3 / 2.0
print '3 // 2.0 =', 3 // 2.0
Python 2.7.6
3 / 2 = 1
3 // 2 = 1
3 / 2.0 = 1.5
3 // 2.0 = 1.0


Python 3
print('Python', python_version())
print('3 / 2 =', 3 / 2)
print('3 // 2 =', 3 // 2)
print('3 / 2.0 =', 3 / 2.0)
print('3 // 2.0 =', 3 // 2.0)
Python 3.4.1
3 / 2 = 1.5
3 // 2 = 1
3 / 2.0 = 1.5
3 // 2.0 = 1.0




Unicode
[back to top]
Python 2 has ASCII str() types, separate unicode(), but no byte type.

Now, in Python 3, we finally have Unicode (utf-cool strings, and 2 byte classes: byte and bytearrays.



Python 2
print 'Python', python_version()
Python 2.7.6
print type(unicode('this is like a python3 str type'))
<type 'unicode'>
print type(b'byte type does not exist')
<type 'str'>
print 'they are really' + b' the same'
they are really the same
print type(bytearray(b'bytearray oddly does exist though'))
<type 'bytearray'>


Python 3
print('Python', python_version())
print('strings are now utf-8 \u03BCnico\u0394é!')
Python 3.4.1
strings are now utf-8 μnicoΔé!
print('Python', python_version(), end=""wink
print(' has', type(b' bytes for storing data'))
Python 3.4.1 has <class 'bytes'>
print('and Python', python_version(), end=""wink
print(' also has', type(bytearray(b'bytearrays')))
and Python 3.4.1 also has <class 'bytearray'>
'note that we cannot add a string' + b'bytes for data'
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
in ()
----> 1 'note that we cannot add a string' + b'bytes for data'

TypeError: Can't convert 'bytes' object to str implicitly




xrange
[back to top]
The usage of xrange() is very popular in Python 2.x for creating an iterable object, e.g., in a for-loop or list/set-dictionary-comprehension.\ The behavior was quite similar to a generator (i.e., "lazy evaluation"wink, but here the xrange-iterable is not exhaustible - meaning, you could iterate over it infinitely.

Thanks to its "lazy-evaluation", the advantage of the regular range() is that xrange() is generally faster if you have to iterate over it only once (e.g., in a for-loop). However, in contrast to 1-time iterations, it is not recommended if you repeat the iteration multiple times, since the generation happens every time from scratch!

In Python 3, the range() was implemented like the xrange() function so that a dedicated xrange() function does not exist anymore (xrange() raises a NameError in Python 3).

import timeit

n = 10000
def test_range(n):
for i in range(n):
pass

def test_xrange(n):
for i in xrange(n):
pass


Python 2
print 'Python', python_version()

print '\ntiming range()'
%timeit test_range(n)

print '\n\ntiming xrange()'
%timeit test_xrange(n)
Python 2.7.6

timing range()
1000 loops, best of 3: 433 µs per loop


timing xrange()
1000 loops, best of 3: 350 µs per loop


Python 3
print('Python', python_version())

print('\ntiming range()')
%timeit test_range(n)
Python 3.4.1

timing range()
1000 loops, best of 3: 520 µs per loop
print(xrange(10))
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
in ()
----> 1 print(xrange(10))

NameError: name 'xrange' is not defined
The __contains__ method for range objects in Python 3
Another thing worth mentioning is that range got a "new" __contains__ method in Python 3.x (thanks to Yuchen Ying, who pointed this out). The __contains__ method can speedup "look-ups" in Python 3.x range significantly for integer and Boolean types.

x = 10000000

def val_in_range(x, val):
return val in range(x)

def val_in_xrange(x, val):
return val in xrange(x)

print('Python', python_version())
assert(val_in_range(x, x/2) == True)
assert(val_in_range(x, x//2) == True)
%timeit val_in_range(x, x/2)
%timeit val_in_range(x, x//2)
Python 3.4.1
1 loops, best of 3: 742 ms per loop
1000000 loops, best of 3: 1.19 µs per loop
Based on the timeit results above, you see that the execution for the "look up" was about 60,000 faster when it was of an integer type rather than a float. However, since Python 2.x's range or xrange doesn't have a __contains__ method, the "look-up speed" wouldn't be that much different for integers or floats:

print 'Python', python_version()
assert(val_in_xrange(x, x/2.0) == True)
assert(val_in_xrange(x, x/2) == True)
assert(val_in_range(x, x/2) == True)
assert(val_in_range(x, x//2) == True)
%timeit val_in_xrange(x, x/2.0)
%timeit val_in_xrange(x, x/2)
%timeit val_in_range(x, x/2.0)
%timeit val_in_range(x, x/2)
Python 2.7.7
1 loops, best of 3: 285 ms per loop
1 loops, best of 3: 179 ms per loop
1 loops, best of 3: 658 ms per loop
1 loops, best of 3: 556 ms per loop


Below the "proofs" that the __contain__ method wasn't added to Python 2.x yet:

print('Python', python_version())
range.__contains__
Python 3.4.1
<slot wrapper '__contains__' of 'range' objects>
print 'Python', python_version()
range.__contains__
Python 2.7.7
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
in ()
1 print 'Python', python_version()
----> 2 range.__contains__

AttributeError: 'builtin_function_or_method' object has no attribute '__contains__'
print 'Python', python_version()
xrange.__contains__
Python 2.7.7
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
in ()
1 print 'Python', python_version()
----> 2 xrange.__contains__

AttributeError: type object 'xrange' has no attribute '__contains__'


Note about the speed differences in Python 2 and 3
Some people pointed out the speed difference between Python 3's range() and Python2's xrange(). Since they are implemented the same way one would expect the same speed. However the difference here just comes from the fact that Python 3 generally tends to run slower than Python 2.

def test_while():
i = 0
while i < 20000:
i += 1
return


print('Python', python_version())
%timeit test_while()
Python 3.4.1
100 loops, best of 3: 2.68 ms per loop
print 'Python', python_version()
%timeit test_while()
Python 2.7.6
1000 loops, best of 3: 1.72 ms per loop



Raising exceptions
[back to top]
Where Python 2 accepts both notations, the 'old' and the 'new' syntax, Python 3 chokes (and raises a SyntaxError in turn) if we don't enclose the exception argument in parentheses:



Python 2
print 'Python', python_version()
Python 2.7.6
raise IOError, "file error"
---------------------------------------------------------------------------
IOError Traceback (most recent call last)
in ()
----> 1 raise IOError, "file error"

IOError: file error
raise IOError("file error"wink
---------------------------------------------------------------------------
IOError Traceback (most recent call last)
in ()
----> 1 raise IOError("file error"wink

IOError: file error



Python 3
print('Python', python_version())
Python 3.4.1
raise IOError, "file error"
File "", line 1
raise IOError, "file error"
^
SyntaxError: invalid syntax
The proper way to raise an exception in Python 3:

print('Python', python_version())
raise IOError("file error"wink

Python 3.4.1
---------------------------------------------------------------------------
OSError Traceback (most recent call last)
in ()
1 print('Python', python_version())
----> 2 raise IOError("file error"wink

OSError: file error



Handling exceptions
[back to top]
Also the handling of exceptions has slightly changed in Python 3. In Python 3 we have to use the "as" keyword now



Python 2
print 'Python', python_version()
try:
let_us_cause_a_NameError
except NameError, err:
print err, '--> our error message'
Python 2.7.6
name 'let_us_cause_a_NameError' is not defined --> our error message


Python 3
print('Python', python_version())
try:
let_us_cause_a_NameError
except NameError as err:
print(err, '--> our error message')
Python 3.4.1
name 'let_us_cause_a_NameError' is not defined --> our error message



The next() function and .next() method
[back to top]
Since next() (.next()) is such a commonly used function (method), this is another syntax change (or rather change in implementation) that is worth mentioning: where you can use both the function and method syntax in Python 2.7.5, the next() function is all that remains in Python 3 (calling the .next() method raises an AttributeError).



Python 2
print 'Python', python_version()

my_generator = (letter for letter in 'abcdefg')

next(my_generator)
my_generator.next()
Python 2.7.6
'b'


Python 3
print('Python', python_version())

my_generator = (letter for letter in 'abcdefg')

next(my_generator)
Python 3.4.1
'a'
my_generator.next()
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
in ()
----> 1 my_generator.next()

AttributeError: 'generator' object has no attribute 'next'



For-loop variables and the global namespace leak
[back to top]
Good news is: In Python 3.x for-loop variables don't leak into the global namespace anymore!

This goes back to a change that was made in Python 3.x and is described in What’s New In Python 3.0 as follows:

"List comprehensions no longer support the syntactic form [... for var in item1, item2, ...]. Use [... for var in (item1, item2, ...)] instead. Also note that list comprehensions have different semantics: they are closer to syntactic sugar for a generator expression inside a list() constructor, and in particular the loop control variables are no longer leaked into the surrounding scope."



Python 2
print 'Python', python_version()

i = 1
print 'before: i =', i

print 'comprehension: ', [i for i in range(5)]

print 'after: i =', i
Python 2.7.6
before: i = 1
comprehension: [0, 1, 2, 3, 4]
after: i = 4


Python 3
print('Python', python_version())

i = 1
print('before: i =', i)

print('comprehension:', [i for i in range(5)])

print('after: i =', i)
Python 3.4.1
before: i = 1
comprehension: [0, 1, 2, 3, 4]
after: i = 1



Comparing unorderable types
[back to top]
Another nice change in Python 3 is that a TypeError is raised as warning if we try to compare unorderable types.



Python 2
print 'Python', python_version()
print "[1, 2] > 'foo' = ", [1, 2] > 'foo'
print "(1, 2) > 'foo' = ", (1, 2) > 'foo'
print "[1, 2] > (1, 2) = ", [1, 2] > (1, 2)
Python 2.7.6
[1, 2] > 'foo' = False
(1, 2) > 'foo' = True
[1, 2] > (1, 2) = False


Python 3
print('Python', python_version())
print("[1, 2] > 'foo' = ", [1, 2] > 'foo')
print("(1, 2) > 'foo' = ", (1, 2) > 'foo')
print("[1, 2] > (1, 2) = ", [1, 2] > (1, 2))
Python 3.4.1

---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
in ()
1 print('Python', python_version())
----> 2 print("[1, 2] > 'foo' = ", [1, 2] > 'foo')
3 print("(1, 2) > 'foo' = ", (1, 2) > 'foo')
4 print("[1, 2] > (1, 2) = ", [1, 2] > (1, 2))

TypeError: unorderable types: list() > str()



Parsing user inputs via input()
[back to top]
Fortunately, the input() function was fixed in Python 3 so that it always stores the user inputs as str objects. In order to avoid the dangerous behavior in Python 2 to read in other types than strings, we have to use raw_input() instead.



Python 2
Python 2.7.6
[GCC 4.0.1 (Apple Inc. build 5493)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

>>> my_input = input('enter a number: ')

enter a number: 123

>>> type(my_input)
<type 'int'>

>>> my_input = raw_input('enter a number: ')

enter a number: 123

type(my_input)
<type 'str'>


Python 3
Python 3.4.1
[GCC 4.2.1 (Apple Inc. build 5577)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

>>> my_input = input('enter a number: ')

enter a number: 123

>>> type(my_input)
<class 'str'>



Returning iterable objects instead of lists
[back to top]
As we have already seen in the xrange section, some functions and methods return iterable objects in Python 3 now - instead of lists in Python 2.

Since we usually iterate over those only once anyway, I think this change makes a lot of sense to save memory. However, it is also possible - in contrast to generators - to iterate over those multiple times if needed, it is aonly not so efficient.

And for those cases where we really need the list-objects, we can simply convert the iterable object into a list via the list() function.



Python 2
print 'Python', python_version()

print range(3)
print type(range(3))
Python 2.7.6
[0, 1, 2]
<type 'list'>


Python 3
print('Python', python_version())

print(range(3))
print(type(range(3)))
print(list(range(3)))
Python 3.4.1
range(0, 3)
<class 'range'>
[0, 1, 2]
Some more commonly used functions and methods that don't return lists anymore in Python 3:

zip()

map()

filter()

dictionary's .keys() method

dictionary's .values() method

dictionary's .items() method




More articles about Python 2 and Python 3
[back to top]
Here is a list of some good articles concerning Python 2 and 3 that I would recommend as a follow-up.

// Porting to Python 3

Should I use Python 2 or Python 3 for my development activity?
What’s New In Python 3.0
Porting to Python 3
Porting Python 2 Code to Python 3
How keep Python 3 moving forward
// Pro and anti Python 3

10 awesome features of Python that you can't use because you refuse to upgrade to Python 3
Everything you did not want to know about Unicode in Python 3
Python 3 is killing Python
Python 3 can revive Python
Python 3 is fine
© 2013-present Sebastian Raschka |@rasbt email rss


Link - http://sebastianraschka.com/Articles/2014_python_2_3_key_diff.html
Programming / The 5 Key Drivers Of $700 Billion In Mobile Internet Revenue by davidsmith8900: 5:57pm On Sep 04, 2014
Mobile internet revenue will hit $700 billion annually in less than three years, according to a new report by research firm Digi-Capital.

The key drivers?

iphone5-ios7, Mobile commerce, mobile advertising, in-app purchases, an emerging app-as-a-service model with mainly subscription revenue, and of course, maniacal attention on the part of app makers to their key metrics.

The absolute top driver? Mobile commerce.

“mCommerce will be the dominant business model, with $516 billion in sales driving more than 70 percent of all mobile internet revenue by 2017,” Digi-Capital’s Tim Merel told VentureBeat via email.

That’s Amazon.com, sure, but it’s also Wal-Mart. And buying your groceries at Publix. And using digital wallets to pre-order food on your way to the take-out restaurant, so it’s ready to go as you arrive, no questions asked and no cash required.

In other words, the driver is the ongoing colossal shift of commerce to digital, and within that, largely to mobile.

Link ~> http://venturebeat.com/2014/08/27/5-drivers-of-700-billion-in-mobile-internet-revenue/
Programming / If You Solve This Math Problem You'll Get $1 Million Prize Change Internet by davidsmith8900: 5:39pm On Sep 04, 2014
One of the deepest questions in computer science is called P vs. NP, and answering the question would earn you a million-dollar prize. P vs. NP is one of the Clay Mathematics Institute Millennium Prize Problems, seven problems judged to be among the most important open questions in mathematics.

P vs. NP is about finding algorithms, or computer programs, to solve particular math problems, and whether or not "good" algorithms exist to solve these problems. Good algorithms allow a computer to come up with a solution to a problem relatively quickly, even if the size of the input to the problem is very large. Problems for which computer scientists have found good algorithms are said to be in the "complexity class" P.



Read more: http://www.businessinsider.com/p-vs-np-millennium-prize-problems-2014-9#ixzz3CMju2iaU

Link ~> http://www.businessinsider.com/p-vs-np-millennium-prize-problems-2014-9
Programming / What Is A Nosql Database? Learn By Writing One In Python by davidsmith8900: 5:30pm On Sep 04, 2014
NoSQL is a term that has become ubiquitous in recent years. But what does "NoSQL" actually mean? How and why is it useful? In this article, we'll answer these questions by creating a toy NoSQL database in pure Python (or, as I like to call it, "slightly structured pseudo-code"wink.

Link ~> http://www.jeffknupp.com/blog/2014/09/01/what-is-a-nosql-database-learn-by-writing-one-in-python/
Programming / Re: 11 African Startup Founders Who Built Million-dollar Internet Companies by davidsmith8900: 4:17pm On Sep 04, 2014
deeobserver209: The list is incomplete. What about the founder of Nairaland?

Please Add Mr. Seun Osewa - Founder of Nairaland To This List. Thanks!!!
Programming / 11 African Startup Founders Who Built Million-dollar Internet Companies by davidsmith8900: 3:25pm On Sep 04, 2014
The number of millionaires springing up from digital ventures has grown tremendously in the past two decades, as the world increasingly embrace the potential of knowledge technologies, information and social media to produce economic benefits , employment and enable globalisation. From Mark Zuckerberg to Sergey Brin, Lawrence E. Page and YouTube partners: Steve Chen, Chad Hurley and Jawed Karim, the world has witnessed a new breed of entrepreneurs who have charted a new course in business and made a fortune at it. The good news – Africa is not lagging behind.

Innovative minds in the motherland have cited and exploited opportunities in the knowledge economy, which has become more prominent as the internet usage and importance increased over the years. In this article, Ventures Africa shortlists, in no respective order, 10 Africans who have successfully amassed a fortune from founding million dollar internet companies.

Seun Osewa
Founder Nairaland, Nigeria

Nairaland is Nigeria's Largest Online Discussion Forum. Ranked 8th in the world, it receives million hits per day.

Vinny Lingham
Founder Yola Inc, South Africa

South Africa’s Vinny Lingham is the founder of the popular free web building, publishing and hosting services site Yola Inc (previously named SynthaSite) based in San Francisco. Yola has attracted over $30 million in venture capital financing from investors such as Columbus Venture Capital and plays host to over 3 million active users across the globe.

Prior to Yola, Lingham founded Click-2-Customers, a hugely successful search engine marketing company with offices in London, Cape Town, and Los Angeles that rakes in about $100 million in annual revenues.

The millionaire entrepreneur recently announced the launch of ‘Gyft’ – which aims to challenge the United States’ $100 billion plastic gift card market by bringing gift cards to consumers’ mobile phones.

Mark Shuttleworth
Founder Thawte and Ubuntu/Knife Capital, South Africa

Mark Shuttleworth is Africa’s first dot com millionaire. When Shuttleworth was 22, he founded Thawte, a digital certificate and internet security company he later sold to VeriSign for $575 million in an all stock deal in 1999. It is the second largest provider of digital certification the world.

At age 26, Shuttleworth used a fraction of his proceeds to start HBD Capital (now called Knife Capital), a Cape Town-based emerging markets investment fund.

Shuttleworth also founded and funds Ubuntu, a computer operating system which he distributes as free open source software. He has a reported net worth of $500 million.

Njeri Rionge
Co-founder Wananchi Online, Kenya

Njeri Rionge is the co-founder of Wananchi Online – a leading Internet service provider which has gone on to become East Africa’s leading cable, broadband and IP (Internet-based) Phone Company.

Dubbed ‘one of Kenya’s most successful serial entrepreneurs’, she succeeded in turning a $500,000 start up to into East Africa’s top internet firm valued at $175 million dollar.

“Wanachi was a roller coaster ride in which we sought to challenge the assumption of regulators, the government officials and competitors that the Internet was not only relevant for the elite.” The Business woman told forbes in an interview.

The internet providing company became hugely successful that it rose close to $60 million in growth capital from a consortium private equity firm.

Jason Njoku
Founder & CEO iRokoTv, Nigeria

The Nigerian Internet entrepreneur is the founder of Iroko TV – the world’s largest digital distributor of African movies. Iroko TV was labeled the ‘Netflix of Africa’ according to forbes.

Earlier this year, Iroko TV raised $8 million in venture capital from Tiger Global Management, a New York-based private equity and hedge fund run by billionaire Chase Coleman.

The online streaming website, profits from lucrative content distribution deals with Dailymotion, iTunes, Amazon and Vimeo.

Analysts believe IrokoTV could be worth an estimated $30 million and CEO Njoku is the company’s largest individual shareholder.

Elon Musk
Co-founder PayPal, South Africa

Born to a South African father and Canadian mother, Elon Musk is the co-founder of ecommerce payment system Paypal.

In March 2002, Musk co-founded X.com, a financial services and email payments company. One year later, x.com acquired Confinity – originally a company formed to beam money between Palm Pilots – and the combined entity focused on email payments through the PayPal domain, acquired as part of Confinity.

In February 2001, X.com changed its legal name to PayPal. In October 2002, PayPal was acquired by eBay for US$1.5 billion in a stock deal. Before its sale, Musk, the company’s largest shareholder, owned 11.7% of PayPal’s shares.

The business mogul is also known for founding Space Exploration Technologies or SpaceX – the first private company to launch a rocket into space – and for founding Tesla Motors, an electric car company.

Herman Heunis
Founder & former CEO MXit, South Africa

Heunis is the CEO and founder of South African social networking site MXit – a free online instant messenger that runs on close to 3000 mobile handsets. Last year, Heunis sold the company to World of Avatar for around $61 million. The site is a phenomenon in South Africa, and now has close to 40 million users in more than 120 countries – with 40,000 new subscribers joining daily, it is fast emerging as the biggest instant messaging service in South Africa and Indonesia.

Heunis earlier also established an ICT consultancy firm in 1990, creating Swist Group Technologies in 1998 – a software development company that would ultimately produce MXit Lifestyle.

Justin Stanford
Founder & CEO, 4Di Group/Co-founder Silicon Cape Initiative, South Africa

South African-born Stanford – a software entrepreneur and venture capitalist – is the founder of 4Di Group, an investment holding company headquartered in Cape Town, South Africa. It operates four major companies in Southern Africa including ESET Southern Africa, iViZ Security, 4Di Capital and 4Di Privaca.

After dropping out of high school he set up an internet security company which eventually flopped, but when he came across ESET – a Slovakian anti-virus software package, he negotiated with its manufacturers and acquired the exclusive, lucrative Southern African distribution rights for the product.

Stanford’s ESET Southern Africa presently operates the ESET brand in the region and sells ESET’s range of internet security products in about 20 sub-Saharan countries, recording over $10 million in annual turnover while controlling 5 percent of the anti-virus market in Southern Africa region.

Stanford also co-founded the Silicon Cape Initiative with Vinny Lingham – an IT business networking NGO that assists individuals with ICT ideas and start-up entrepreneurs to navigate the many drawbacks associated with the industry.

Adii Pienaar
Co-Founder Woothemes, South Africa

Adii Pienaar is the Founder of Woothemes, one of the world’s most popular premium wordpress theme companies.

Working virtually with partners worldwide, Adii built Woothemes into a multi-million dollar business, generating over $2 million in annual revenues from the sale of its themes.

The company also sells themes for other content management systems including Tumblr. Adii recently wrote a book titled ”Rockstar Business”, detailing his experience as an entrepreneur.

Justin Clarke & Carey Eaton
Co-founders One Media Africa, South Africa & Kenya

Justin Clarke and Carey Eaton are cofounders of One Africa Media. Africa’s largest online classifieds group by traffic, page views, advert volume and revenue.

The South African-based Private Property Holdings and Kenyan Cheki Africa Media merged their businesses to form One Africa Media which operates in three economic hubs covering East, South and West Africa. The company has five brands, namely PrivateProperty, Cheki, Jobberman, BrighterMonday and SafariNow. These brands are longest-established brands in Africa in their segments and have started to turn in revenues. Its majority shareholder is New York-based investment Manager, Tiger Global.

Top Australian recruitment portal Seek reportedly invested $20 million in the company, acquiring a 25 percent stake. The Australian firm says it values One Media Africa at $80 million.

Kamal Budhabatti
CEO, Craft Silicon, Kenya

Nicknamed Kenyan’s Bill Gate, Kamal is the founder and CEO of Craft Silicon – a Kenyan Software firm that provides core banking, microfinance, mobile, switch solutions software and electronic payments services for over 200 institutional clients in 40 countries spread across Africa, Asia, Europe and the Americas.

Craft Silicon has an office in Silicon Valley — in Palo Alto, California – one of the very few Kenyan companies to achieve such a feat.

The software company has a $50 million market value, raking in annual revenue of $6 million.

Link - http://vc4africa.biz/blog/2013/07/23/10-african-startup-founders-who-built-million-dollar-internet-companies/

(1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (of 12 pages)

(Go Up)

Sections: politics (1) business autos (1) jobs (1) career education (1) romance computers phones travel sports fashion health
religion celebs tv-movies music-radio literature webmasters programming techmarket

Links: (1) (2) (3) (4) (5) (6) (7) (8) (9) (10)

Nairaland - Copyright © 2005 - 2024 Oluwaseun Osewa. All rights reserved. See How To Advertise. 176
Disclaimer: Every Nairaland member is solely responsible for anything that he/she posts or uploads on Nairaland.