Faire une recherche

lundi 28 octobre 2019

Comment monter un projet et créer sa startup technologique facilement en Afrique?

Bonjour! Des amis et moi sommes entrain de monter Proxima afin de vendre nos services, AlphaDSF et Salers. J'en profite pour partager ici avec vous, quelques conseils que nous sommes entrain d'appliquer!

En Afrique ça bouge de partout et de plus en plus de jeunes diplômés se lancent dans la création de startups. Dans le but de leur venir en aide et leur montrer comment s'y prendre, cet article donne quelques astuces pour leur permettre de créer leur prochaine startup technologique.

Dans un premier temps, je présente comment mettre en valeur une idée. Ensuite, j'indique comment monter son buisness plan et comment concrétiser son projet. Enfin, je présente les étapes de croissance qu'il faut suivre afin d'obtenir un financement.

Mettre en valeur votre projet

Étape 1 - Trouver un problème

Étape 2 - Étudier le marché (produits concurrents)

Etape 3 - Acheter un nom de domaine

Étape 4 - Créer une page d'accueil (landing page)

Étape 5 - Partager la page d'accueil et parler du projet

Étape 6 - Créer un business plan

1- Faire un résumé en une page

Qui êtes-vous? Que vendez-vous? A qui vendez-vous? Quels sont les gros titres financiers?

2. Vue d'ensemble de l'entreprise

Qui êtes-vous en tant qu'entreprise? Quelles sont vos valeurs? Quel est votre équipe?

3. Produits et services

Décrivez vos produits et/ou services. Quel est le problème que vous résolvez? Pourquoi êtes vous uniques?

4. Analyse du marché

Quels sont vos concurrents? Quels sont les opportunités qu'il y'a dans votre marché? Quels sont les défis et comment allez-vous les surmontez?

5. Définir votre marché cible

A qui allez-vous vendre? Quels sont leurs besoins? Combien ont-ils à dépenser? Pourquoi achèteront-ils ça ?

6. Stratégie et implémentation

Énoncer votre plan de marketing: définissez des étapes clés pour votre entreprise.

7. Plan financier

Comment allez-vous gagner de l'argent ? Quand allez-vous gagner de l'argent ? Combien allez-vous gagner sur une période de temps qui vous aurez définit? Combien il vous en coûtera pour gérer votre entreprise?

Étape 7 - Conception du projet

Étape 8 - Création de l'application

Étape 9 - Déploiement 


Étapes de croissance


Étape 1 - Obtenir 25 souscriptions

Etape 2 - Créer un SaaS

Étape 3 - Convertir les utilisateurs en clients payants

Étape 4 - Recueillir les commentaires des utilisateurs

Étape 5 - Améliorer l'application en utilisant les commentaires

Étape 6 - Recueillir 100 clients de plus

Étape 7 - Répéter les étapes 4 à 6 jusqu'à atteindre une certaine limite.

Étape 8 - Faire 2 embauches (développeur full-stack & commercial)

Étape 9 - Créer une offre plus généralisée

Étape 10 - Faire une levée de fond

Étape 11 - Embaucher une équipe plus nombreuse

Étape 13 - Grandir encore et encore


Comment obtenir un financement?

1- Avoir une bonne capacité de gestion (respect des procédures)

2- Avoir un bon business plan qui fait rêvé et qui permet de se projeter dans l'avenir

3- Croire au projet

4- Le projet doit être innovant (apporter une solution réelle à un problème)

5- Le projet doit être évolutif (être en mesure de l'implémenter ailleurs)

6- Le projet doit toucher une large population

7- Présenter le projet sur une vidéo de 2 ou 3 min convaincante

8- Rencontrer des investisseurs

Je vous propose également de regarder ce talk très instructif de Chris on code qui expliquais lors du Concatenate Conf 2019 comment mettre sur pied d'un buisness.


Je pense vous avoir aider et ose croire que cet article vous sera bénéfique pour la réussite de votre projet technologique!

samedi 19 octobre 2019

Découvrez les nouveautés de Python 3.8

Cet article a été publié en tant que thread sur twitter par Elias Walyba, data scientist et machine learner au Sénégal. Néanmoins, j'ai retouché quelques mots.

Python 3.8 est sorti le 14 octobre dernier. Cette nouvelle version de Python vient avec quelques fonctionnalités plutôt intéressantes en terme de développement. Dans ce thread je vous présente quelques unes de ces fonctionnalités que j’ai eu à tester.

1/ L’opérateur de warlus «:=»

Cet opérateur vous permet de faire des assignation de valeurs à des variables dans des expressions ou des blocs d’expressions. Son signe est := . Il est très utile pour éviter de se répéter dans des structures de contrôles.

# Le bout de code suivant (3.7):
if len(dataset) > 1000:
    print(f’’moins de {len(dataset)} éléments attendus’’)

# Devient (3.8):
if (n:=len(dataset)) > 1000:
    print(f’’moins de {n} éléments attendus’’)

2/ Les paramètre «/» et «*» des fonctions

Cette version de Python introduit ce qu’ils appellent: positional-only parameter et qui se note /. Cette fonctionnalités permet de dire que certains paramètres d’une fonction (ou méthode) ne peuvent être passés que par position et pas par clé-valeur. Elle introduit aussi le keywords only parameter qui se note * qui lui permet de dire que certains paramètres ne peuvent être passés que par clé-valeur.

Dans la fonction suivante, a et b ne peuvent être passé que par position, ce qui peut être à la fois passé par position et par clé-valeur et d ne peut être passé que par clé-valeur.

 def func(a, b, /, c, *, e):
    pass

func(2, 5, c=40, e=1.7)

ou

func(2, 5, 40, e=1.7)

Cette fonctionnalité est très utile pour écrire du code avec le paradigme fonctionnel.

3/ Ajout du signe «=» dans les f-strings

L’autre fonctionnalité super sympa de cette version c’est l’ajout du signe = dans les f-strings pour faciliter l’inspection de variable et la self documentation.
La f-string suivante: f"{expr=}" produit la chaine "expr=valeur_de_expr"

Le code suivant:
twitto = "@eliaswalyba"
age = 26
print(f"{twitto=} {age=}")

Produit:
"twitto=@eliaswalyba age=26"

PS: On peut l’utiliser avec les formatages de f-strings pour plus de contrôle.

print(f'{theta=}  {cos(radians(theta))=:.3f}')
theta=30  cos(radians(theta))=0.866

4/ Plus de précision sur le typage

Avec l’introduction de types de données tels que:

  • Literal types
  • Type dictionaries
  • Final objects
  • Protocols


Python prend en charge les indicateurs de type facultatifs, généralement sous forme d'annotations sur le code:

def double(number: float) -> float:
    return 2 * number

Dans cet exemple, number doit être un float et la fonction double() doit également renvoyer un float. Cependant, Python traite ces annotations comme des astuces. Ils ne sont pas appliqués à l'exécution:

double(2)
 retorune 4

double("Dakar)
retourne DakarDakar

Même si cela ne permet pas de faire de Python un langage à typage statique et fort, ça a une réelle importance pour les programmes de type-checking tels que mypy qui pourront l’utiliser pour faire du type-checking avant ou lors de l’édition.

Les types Literal, Protocoles, etc sont accessible via le package typing.

from typing import Literal

5. La fonction reversed() sur les dictionnaires

Depuis Python 3.7, les dictionnaires conservent l'ordre d'insertion des clés.  Avec Python 3.8 reversed() peut maintenant être utilisé pour accéder au dictionnaire dans l'ordre inverse de l'insertion - exactement comme OrderedDict

6. L’unpacking avec return et yield

Depuis Python 3.2, l’unpacking des éléments itérables sans parenthèses dans les instructions return et yield est interdit:

# interdit
def func():
    res = (4, 5, 6)
    return 1, 2, 3, *res

def func():
    res = (4, 5, 6)
    yield 1, 2, 3, *res

Toutes les deux fonctions renvoyaient  des SyntaxError
Avec Python 3.8, ce truc a été corrigé et donc possible maintenant.

7. Syntax Warning

Python 3.8 permet de faire des alertes en cas d’erreurs de syntaxe dans certains cas.

Le code suivant:
data = [
    (1, 2, 3)  # absence de virgule
    (4, 5, 6)
]

Au lieu de générer l’erreur: TypeError: 'tuple' object is not callable qui est une horreur 😱🤯, vous avez maintenant une Syntax Warning qui vous dit que vous avez probablement oublié une virgule. C’est qui est beaucoup mieux pour le débogage.

Voilà c’est tout ce que j’avais à partager avec vous concernant les nouvelles fonctionnalités de Python. Je suis sûr que vous allez les adorer 😍. Pour ma part je ne les trouve pas très nombreuses mais je pense qu’elles sont supers utiles et arrivent au bon moment.

Pour plus de détail vous pouvez consulter la documentation de Python dans la partie Whatsnew ou bien le blog realpython


Merci à Elias Walyba sans qui cet article aurait été beaucoup moins sympa à lire !