FrenchTech SAAS
32.3K views | +0 today
FrenchTech SAAS
Les news de l'univers SAAS et FrenchTech
Curated by Mickael Ruau
Your new post is loading...
Your new post is loading...

Popular Tags

Scooped by Mickael Ruau
October 12, 2021 8:59 AM
Scoop.it!

Tout ce que vous devez savoir sur les Big Data

Tout ce que vous devez savoir sur les Big Data | FrenchTech SAAS | Scoop.it
Ce tutoriel identifie quelques domaines où les Big Data font déjà une différence et quelques domaines où ils feront, bientôt, une différence. Bien entendu, l'élément clé de ce tutoriel est de vous apprendre le potentiel énorme des Big Data qui est actuellement surestimé, et à court terme, massivement surévalué.

Ce tutoriel est inspiré du livre de Nate Silver, The Signal and the Noise, probablement le plus complet credo des Big Data créé ces dernières années — un livre que je recommande à tous les analystes de marché et acteurs du Big Data.
No comment yet.
Scooped by Mickael Ruau
October 11, 2021 8:57 AM
Scoop.it!

Conception des bases de données SOLID .

Conception des bases de données SOLID . | FrenchTech SAAS | Scoop.it
Cet article est le premier d'une série d'articles rédigés par Chris Travers. Il présente le modèle de conception SOLID de bases de données. L'auteur essaye de par ces articles de comparer l'application des principes SOLID aux applications orientées objet et l'application de ces mêmes principes aux bases de données relationnelles. Chris Travers est un blogueur très actif et nous avons souhaité partager avec la communauté francophone ses contributions afin que chacun en tire profit.
Mickael Ruau's insight:

Retrouvez toute la série « Conception des bases de données SOLID » :

1- Introduction

2- Responsabilité unique et normalisation

3- Le principe d'Ouverture/Fermeture (à suivre)

4- La substitution de Liskov (à suivre)

5- La ségrégation des interfaces ou garder les procédures stockées simples (à suivre)

6- Inversion de dépendances et interfaces robustes de bases de données (à suivre)

No comment yet.
Scooped by Mickael Ruau
October 11, 2021 1:48 AM
Scoop.it!

BigData: Théorème de CAP –

BigData: Théorème de CAP – | FrenchTech SAAS | Scoop.it

Il y a quelques temps, l’un de mes collègues me posa cette question:

Saurais tu me rappeler le principe des trois lois des systèmes distribués ? Il y a la cohérence mais je ne sais plus quels sont les autres….

Et la je dois avouer que si ça me disait bien quelque chose, j’ai été incapable de l’aider. J’ai bien pensé aux 3V du Big Data (Vitesse,Volume, Variété) [1] mais ce n’était pas ça et finalement ça s’est fini en blague autour des trois lois de la robotique [2]. (Nous reviendrons sur ces deux concepts)

Du coup je n’ai pas pu beaucoup aidé mon collègue qui finalement a trouvé tout seul (comme un grand)! C’était le théorème de CAP (ou de Brewer [3])! Ça me disait bien quelques chose mais quoi? Regardons cela ensemble.

 

Mickael Ruau's insight:

Pour parler du théorème de CAP, il faut d’abord garder en tête deux concepts : ACID que nous avions vu dans les propriétés des bases de données Relationnelle [4] et BASE que nous venons de voir dans l’article précédent [5] dans les bases NoSql.

Ces deux concepts sont un peu comme les deux faces d’une même pièce: la gestion des données. D’un côté, on prône l’intégrité, de l’autre, la performance. Le théorème de CAP est la justement pour formaliser cette dualité au travers de trois concepts clefs:

  • Consistency: la cohérence des données dans la base
  • Availability: la disponibilité des données
  • Partitioning : les requêtes sur la base doivent aboutir quel que soit le partitionnement sur le réseau. 

Ainsi à partir de ces 3 concepts, le théorème de CAP énonce qu’il n’est pas possible pour un système de base de données de garantir à la fois les 3 concepts en même temps et ne peut en garantir qu’au mieux 2 [6].

Ainsi 3 configurations émergent de ce schéma mettant en évidence des types de base de données bien spécifiques:

  • CA: Coherence et disponibilité nous mène à l’ensemble des base de données les plus classique, les SGBD-R et nous ramène aux propriétés ACID
  • CP: Coherence et Partitioning nous mène à des base de données où les performances sont moindre mais où la sécurité de l’intégrité des données est primordiale. On trouvera certains SGBD-R (en cluster) et type de base NoSql configuré en conséquence.
  • AP: Disponibilité et partitioning nous conduit ici à la performance avant tout. Les bases ne sont pas forcément cohérente dans le temps mais la multiplicité des bases sur le réseau permet de garantir une réponse quoiqu’il arrive. La majeur partie des base NoSql se trouveront dans cette configuration en nous ramenant aux propriétés BASE.

Alors en fait le monde réel n’est pas si cloisonné et le théorème de CAP ne doit pas être interprété aussi strictement.

No comment yet.
Scooped by Mickael Ruau
October 8, 2021 8:52 AM
Scoop.it!

Stored Procedure Test at XUnitPatterns.com

 

Many applications that use a database to store the persistent state of the application also use stored procedures and triggers to improve performance and to do common processing on updates.

A Stored Procedure Test is a way to apply automated testing practices to this code that lives inside the database.

How It Works

We write unit tests for the stored procedures independent of the client application software. These tests may be layer-crossing tests or round trip tests depending on the nature of the store procedure(s) being tested.

When To Use It

We should write Stored Procedure Tests whenever we have non-trivial logic in stored procedures. This will help us verify that the stored procedures (our system under test (SUT) for the purposes of these tests) is working properly independently of the client application. This is particularly important when the stored procedures are likely to be used by more than one application and we cannot ensure they are tested adequately simply by exercising the application software (a form of Indirect Testing (see Obscure Test on page X).) Using Stored Procedure Tests also helps us to enumerate all the conditions under which the stored procedure could be called and what should happen in each circumstance. The very act of thinking about these circumstances is likely to improve the design (a common result of doing test-first development.)

Implementation Notes

There are two fundamentally different ways to implement Stored Procedure Tests. We can write the tests in the same programming language as the stored procedure and run them in the database or we can write them in our application programming language and access the stored procedure via a Remote Proxy[GOF]. We might even write tests both ways; the stored procedure developers might write unit tests in the database programming language and the application developers might prepare some acceptance tests in the application programming language to run as part of the application build.

Either way, we also need to decide how the test will set up the fixture (the "before" state of the database) and verify the expected outcome (the "after" state of the database as well as any expected actions such as cascading deletes.) The test may interact directly with the database to insert/verify the data (a form of Back Door Manipulation (page X)) or it could use another stored procedure (a form of round trip test.)

No comment yet.
Scooped by Mickael Ruau
October 8, 2021 8:49 AM
Scoop.it!

Test Smells at XUnitPatterns.com

Hard-to-Test Code Category: Test Smells 11 June 2007 Code is difficult to test. Production Bugs Category: Test Smells 18 February 2007 We find too many bugs during formal test or in production. Fragile Test Category: Test Smells 18 February 2007 A test fails to compile or run when the SUT is changed in ways that do not affect the part the test is exercising. Test Code Duplication Category: Test Smells 18 February 2007 The same test code is repeated many times. Test Logic in Production Category: Test Smells 18 February 2007 The code that is put into production contains logic that should be exercised only during tests. Erratic Test Category: Test Smells 4 February 2007 One or more tests are behaving erratically; sometimes they pass and sometimes they fail. Obscure Test Category: Test Smells 20 December 2006 It is difficult to understand the test at a glance. Assertion Roulette Category: Test Smells 31 October 2006 It is hard to tell which of several assertions within the same test method caused a test failure. Conditional Test Logic Category: Test Smells 31 October 2006 A test contains code that may or may not be executed Slow Tests Category: Test Smells 11 October 2006 The tests take too long to run. Developers Not Writing Tests Category: Test Smells 9 October 2006 Developers aren't writing automated tests.
No comment yet.
Scooped by Mickael Ruau
October 8, 2021 8:48 AM
Scoop.it!

Test Organization at XUnitPatterns.com

 

Utility Method Location: Category: Test Organization 6 November 2006 Test Code Reuse: Category: Test Organization 6 October 2006 Testcase Class Structure: Category: Test Organization 18 December 2005 Test Helper Category: Test Organization 4 March 2004 We define a helper class to hold any Test Utility Methods we want to reuse in several tests. Testcase Superclass Category: Test Organization 4 March 2004 We inherit reusable test-specific logic from an abstract . Testcase Class per Fixture Category: Test Organization 4 March 2004 We organize Test Methods into Testcase Classes based on commonality of the test fixture. Test Utility Method Category: Test Organization 4 March 2004 We encapsulate the test logic we want to reuse behind a suitably named utility method. Testcase Class per Feature Category: Test Organization 4 March 2004 We group the Test Methods onto Testcase Classes based on which testable feature of the SUT they exercise. Testcase Class per Class Category: Test Organization 4 March 2004 We put all the Test Methods for one SUT class onto a single Testcase Class. Parameterized Test Category: Test Organization 26 January 2004 We pass the information needed to do fixture setup and result verification to a utility method that implements the entire test lifecycle. Named Test Suite Category: Test Organization 12 January 2004 Define a test suite, suitably named, that contains a set of tests that we wish to be able to run as a group.
No comment yet.
Scooped by Mickael Ruau
October 8, 2021 8:31 AM
Scoop.it!

Une introduction à DbSetup, une alternative à DbUnit

Une introduction à DbSetup, une alternative à DbUnit | FrenchTech SAAS | Scoop.it

Après avoir utilisé DbSetup pendant quelques semaines, j'en suis particulièrement satisfait. Voici les avantages et inconvénients que j'en retire :

Avantages

Faiblesses

  • Un DbUnit like dopé aux bonnes pratiques contemporaines
  • Intégration possible à Spring Test
  • Prise en main rapide
  • Factorisation des jeux de données rendue possible
  • Qualité de la documentation, de la javadoc et du code source
  • Disponible sur le repo maven central
  • Légèreté, aucune dépendance tierce
  • Équipe ouverte aux améliorations
  • Fonctionnalité restreinte au chargement
  • Aucun log pour le débogage
  • Quid de la pérennité ?

Pour les intéressés qui souhaiteraient migrer de DbUnit vers DbSetup, voici les fonctionnalités proposées par DbUnit, mais non couvertes par DbSetup :

  1. chargement de jeux de données depuis les formats XML et CSV (à nuancer, car DbSetup propose une alternative en Java, ce qui en fait son principal intérêt) ;
  2. création d'une XSD à partir du schéma de la base de données pour une validation stricte des jeux de données ;
  3. export de données depuis une base de données source ;
  4. assertion des données présentes en base après l'exécution d'un test ;
  5. récupération du graphe de dépendances des tables (TablesDependencyHelper).
Mickael Ruau's insight:

Lors du développement de tests d'intégration, j'ai récemment eu besoin de charger une base de données à l'aide de jeux de données. Pour écrire mon premier test, j'ai simplement commencé par écrire un fichier SQL. En un appel de méthode (JdbcTestUtils::executeSqlScript) ou une ligne de déclaration XML (<jdbc:script location=”” />), Spring m'aidait à charger mes données.
Pour tous ceux qui se sont déjà prêtés à l'exercice, maintenir des jeux de données est relativement fastidieux, qui plus en SQL. Cette solution n'était donc pas pérenne.

Depuis une dizaine d'années, j'utilise régulièrement DbUnit pour tester la couche de persistance des applications Java sur lesquelles j'interviens, qu'elle soit développée avec JDBC, Hibernate ou bien encore JPA. Cette librairie open source est également très appréciable pour tester unitairement des procédures stockées manipulant des données par lot. Pour mon besoin, j'aurais donc pu naturellement me tourner vers cet outil qui a fait ses preuves et dont je suis familier.

Mais voilà, commençant à apprécier les avantages de la configuration en Java offerte par Spring et les API fluides des frameworks FestAssert ou ElasticSearch utilisés sur l'application, l'idée d'écrire des jeux de données en Java me plaisait bien. Et justement, il y a quelque temps, l'argumentaire de l'article Why use DbSetup ? ne m'avait pas laissé indifférent. C'était donc l'occasion d'utiliser cette jeune librairie développée par les Français de Ninja Squad et qui mérite de se faire connaître, j'ai nommé DbSetup.

Le guide utilisateur de DbSetup étant particulièrement bien conçu, l'objectif de cet article n'est pas de vous en faire une simple traduction, mais de vous donner envie de l'essayer et de vous présenter la manière dont je l'ai mis en œuvre. Celle-ci s'éloigne en effet quelque peu de celle présentée dans la documentation, la faute à mes vieux réflexes d'utilisateur de DbUnit et au bienheureux rollback pattern de Spring.

No comment yet.
Scooped by Mickael Ruau
October 8, 2021 5:23 AM
Scoop.it!

Cross-Platform Database Management with DBeaver »

Cross-Platform Database Management with DBeaver » | FrenchTech SAAS | Scoop.it
Save time and effort as you rummage through large quantities of data.
No comment yet.
Scooped by Mickael Ruau
October 7, 2021 5:09 AM
Scoop.it!

A Horizontal Scalability Mindset for MySQL

A Horizontal Scalability Mindset for MySQL | FrenchTech SAAS | Scoop.it
One way to deal with massive data sets in MySQL is splitting the data horizontally and spreading it across multiple equally sized instances.
No comment yet.
Scooped by Mickael Ruau
October 5, 2021 11:10 AM
Scoop.it!

Synchronize Tables on the Same Server with pt-table-sync

Synchronize Tables on the Same Server with pt-table-sync | FrenchTech SAAS | Scoop.it
How to synchronize data between two different tables on the same MySQL server using pt-table-sync.
No comment yet.
Scooped by Mickael Ruau
October 4, 2021 9:18 AM
Scoop.it!

Altova XBRL Taxonomy Manager | Altova

 

The Altova XBRL Taxonomy Manager provides a centralized way to install and manage XBRL taxonomies for use across all Altova XBRL-enabled applications. You may access the XBRL Taxonomy Manager from within your installed Altova products or via this page.

Altova will update available taxonomy versions frequently when they are released from standards bodies - you may download them here independent of any product release cycle.

Please select the taxonomies you would like to download from the list below.

Any required dependencies will be selected automatically.

No comment yet.
Scooped by Mickael Ruau
October 4, 2021 1:31 AM
Scoop.it!

Insert into a MySQL table or update if exists – thispointer.com

Insert into a MySQL table or update if exists – thispointer.com | FrenchTech SAAS | Scoop.it

While inserting rows into a table, there are times when the requirement is to insert the rows into a table, but if the key already exists, then update the value. This concept is also known as UPSERT, which is combining UPDATE with INSERT. In this article, we will be looking into :

  1. Insert or Update into MySQL Table : using On Duplicate Key Update
  2. Insert or Update into MySQL Table : using IGNORE INTO
  3. Insert or Update into MySQL Table : using REPLACE INTO
  4. MySQL Insert or Update if exists without primary key
    1. MySQL Insert or Update : UNIQUE KEY
    2. MySQL Insert or Update conditional : NOT EXISTS

We will be looking into all of them with detailed examples but first, let us look into the dataset. Assume the table we will be working with is customer_data and below data already exist in it.

No comment yet.
Scooped by Mickael Ruau
September 29, 2021 11:30 AM
Scoop.it!

Mysql update column with value from another table – thispointer.com

Mysql update column with value from another table – thispointer.com | FrenchTech SAAS | Scoop.it

This article will update columns in a MySQL table with values from another table using different methods.

Table of Contents:-

No comment yet.
Scooped by Mickael Ruau
October 12, 2021 3:47 AM
Scoop.it!

Horizontal Scaling in MySQL - Sharding Followup

Horizontal Scaling in MySQL - Sharding Followup | FrenchTech SAAS | Scoop.it
Theory and considerations around horizontal sharding, along with a lightweight ProxySQL sample implementation.
No comment yet.
Scooped by Mickael Ruau
October 11, 2021 8:53 AM
Scoop.it!

Droit à l’oubli : quel impact sur la donnée ? Quelles procédures mettre en place ?

Droit à l’oubli : quel impact sur la donnée ? Quelles procédures mettre en place ? | FrenchTech SAAS | Scoop.it
Notre experte Data vous explique comment gérer le droit à l'oubli pour les données de production et les backups.
No comment yet.
Scooped by Mickael Ruau
October 8, 2021 9:20 AM
Scoop.it!

Spell Checker Dictionaries | Altova

Altova XMLSpy, StyleVision, and Authentic include a comprehensive spell checker that provides support for numerous languages, as well as extended support for language peculiarities. This is the same highly acclaimed spell checker that is also used by Google Chrome, Mozilla Firefox, OpenOffice, and MacOS X. The spell checker is also compatible with the OpenOffice dictionaries.

Mickael Ruau's insight:

In its standard configuration the spell checker in Altova software ships with 12 built-in languages and corresponding licenses, as indicated in the table below.

The selection of built-in dictionaries that ship with Altova software does not constitute any language preferences by Altova, but is largely based on the availability of dictionaries that permit redistribution with commercial software, such as the MPL, LGPL, or BSD licenses. Many other open-source dictionaries exist, but are distributed under a more restrictive licenses, such as the GPL license.

No comment yet.
Scooped by Mickael Ruau
October 8, 2021 8:50 AM
Scoop.it!

Test Strategy at XUnitPatterns.com

Test Automation Framework Category: Test Strategy 18 February 2007 We use a framework that provides all the mechanisms needed to run the test logic so the test writer only needs to provide the test-specific logic. Recorded Test Category: Test Strategy 18 February 2007 We automate tests by recording interactions with the application and playing them back using a test tool. Shared Fixture Category: Test Strategy 18 February 2007 We reuse the same instance of the test fixture across many tests. Back Door Manipulation Category: Test Strategy 18 February 2007 We set up the test fixture or verify the outcome by going through a back door (such as direct database access.) Scripted Test Category: Test Strategy 20 January 2007 We automate the tests by writing test programs by hand. Test Fixture Strategy: Category: Test Strategy 6 November 2006 Pick an appropriate strategy for organizing the test fixture - xUnit. Test Automation Strategy: Category: Test Strategy 6 November 2006 Pick an appropriate strategy for automating various kinds tests. Standard Fixture Category: Test Strategy 6 November 2006 The same design of test fixture is used in several tests. SUT Interaction Strategy: Category: Test Strategy 6 November 2006 Pick an appropriate strategy for having the automated tests interact with the SUT. Minimal Fixture Category: Test Strategy 5 November 2006 Use the smallest and simplest fixture possible for each test. Layer Test Category: Test Strategy 25 March 2004 We write separate tests for each layer of the Layered Architecture.
No comment yet.
Scooped by Mickael Ruau
October 8, 2021 8:49 AM
Scoop.it!

Test Refactorings at XUnitPatterns.com

Minimize Data Category: Test Refactorings 12 November 2004 We remove things from the fixture until we have a Minimal Fixture. Inline Resource Category: Test Refactorings 12 November 2004 Move the contents of an external resource into the fixture setup logic of the test. Make Resource Unique Category: Test Refactorings 12 November 2004 Make the name of any resources used by a test unique. Replace Dependency with Test Double Category: Test Refactorings 12 November 2004 Break the dependency by replacing a depended-on component with a Test Double. Extract Testable Component Category: Test Refactorings 14 April 2004 Extract the logic you want to test into a separate component that is designed for testability and is independent of the context in which it is run. Setup External Resource Category: Test Refactorings 14 April 2004 Create an external resource within the fixture setup logic of the test rather than using a predefined resource.
No comment yet.
Scooped by Mickael Ruau
October 8, 2021 8:47 AM
Scoop.it!

Database Patterns at XUnitPatterns.com

Database Patterns

Recent Changes

Transaction Rollback Teardown Category: Database Patterns 18 February 2007 We rollback the uncommitted test transaction as part of the teardown. Stored Procedure Test Category: Database Patterns 16 October 2006 We write Fully Automated Tests for each stored procedure. Database Sandbox Category: Database Patterns 16 October 2006 We provide a separate test database for each developer or tester. Table Truncation Teardown Category: Database Patterns 14 October 2006 Truncate the tables modified during the test to tear down the fixture.
No comment yet.
Scooped by Mickael Ruau
October 8, 2021 5:48 AM
Scoop.it!

La version 5.3.2 de DBeaver, l'outil de base de données multiplateforme, est disponible, tour d'horizon des principales nouveautés

La version 5.3.2 de DBeaver, l'outil de base de données multiplateforme, est disponible, tour d'horizon des principales nouveautés | FrenchTech SAAS | Scoop.it
DBeaver est un outil de base de données universel gratuit à code source ouvert publié sous la licence Apache version 2. Publié pour la première fois en 2010, l’outil possède de multiples caractéristiques à savoir : une interface utilisateur conviviale permet l’écriture de diverses extensions, prend en charge toutes les bases de données partageant le pilote JDBC ou encore, gère n’importe quelle source de données avec ou sans pilote JDBC.

DBeaver est exécutable sur la plupart des systèmes d’exploitation notamment Windows(2000, XP, Vista, 7, 8, 10), Mac OS, Linux et Solaris(x86). Il est publié en deux éditions : DBeaver Enterprise Edition et DBeaver Community Edition. La version Community est un produit libre et gratuit à code source ouvert, alors vous pouvez le télécharger et l’utiliser à votre guise. Cependant, cette dernière ne contient que les fonctionnalités de base. La version Enterprise Edition, en plus des fonctionnalités de base, elle prend en charge les bases de données NoSQL et BigData, et intègre d’autres outils tels que Visual Query Builder, les cartes analytiques et un outil pour garder les historiques des requêtes.
No comment yet.
Scooped by Mickael Ruau
October 7, 2021 8:37 AM
Scoop.it!

Vingt fausses idées que se font les développeurs au sujet des numéros de téléphone - Débats sur le développement - Le Best Of

Vingt fausses idées que se font les développeurs au sujet des numéros de téléphone - Débats sur le développement - Le Best Of | FrenchTech SAAS | Scoop.it

Vingt fausses idées que se font les développeurs au sujet des numéros de téléphone Quelles sont les plus courantes ?

Mickael Ruau's insight:



1. Tout le monde a un numéro de téléphone
Certaines personnes ne possèdent pas de téléphone ou ne souhaitent pas fournir leur numéro de téléphone lorsqu'on leur demande. N'exigez donc pas d'un utilisateur qu'il fournisse un numéro de téléphone, sauf si cela est essentiel, et essayez, dans la mesure du possible, de fournir une solution de secours pour ne pas exclure ces utilisateurs.

2. Vous pouvez appeler n'importe quel numéro de téléphone
Certains appareils tels que les terminaux de transfert électronique de fonds dans les points de vente (EFTPOS), les télécopieurs et les dongles Internet mobiles peuvent ne pas prendre en charge la réception d'appels. De plus, certaines personnes peuvent ne pas utiliser leur téléphone pour des appels téléphoniques. Cela peut être permanent (en cas déficience auditive), temporaire (perte auditive temporaire) ou situationnel (lorsque l'utilisateur est dans un environnement bruyant). Il est donc nécessaire de faire comprendre à l'utilisateur comment vous utilisez les numéros de téléphone et lui donner la possibilité de définir ses préférences. Vous devez aussi vous assurer de rechercher cette préférence avant d'essayer de communiquer avec l'utilisateur.

3. Une personne n'a qu'un seul numéro de téléphone
Bien évidemment, si cela pouvait être vrai il y a des années, ce n'est pas nécessairement le cas aujourd'hui.

4. Un numéro de téléphone identifie de manière unique une personne
Il n'y a pas si longtemps, les téléphones portables n'existaient pas et il était courant qu'un ménage entier partage un même numéro de téléphone fixe. Dans certaines parties du monde, cela est toujours vrai. Des membres d'une famille et des amis peuvent partager un seul numéro de téléphone. N'oublions pas non plus que de nombreux services téléphoniques (en particulier pour les entreprises) autorisent plusieurs appels entrants ou sortants à partir du même numéro de téléphone.

5. Les numéros de téléphone ne peuvent pas être réutilisés
Les anciens numéros de téléphone sont recyclés et réattribués à d'autres personnes.

6. Chaque indicatif de pays correspond à exactement un pays
Les États-Unis, le Canada et plusieurs îles des Caraïbes partagent l'indicatif pays +1. La Russie et le Kazakhstan se partagent +7. C'est donc une fausse hypothèse de croire qu'un indicatif pays correspond à un et un seul pays.


7. Chaque pays n'a qu'un seul indicatif pays
Depuis 2016 par exemple, les numéros de téléphone dans le territoire contesté et l'État partiellement reconnu du Kosovo peuvent être joints en composant l'indicatif pays de la Serbie (+381), de la Slovénie (+386) ou de Monaco (+377), selon l'endroit et le moment où le numéro a été obtenu. Il faut donc penser à utiliser un widget de téléphone pour encourager les utilisateurs à saisir leur numéro de téléphone dans un format international afin qu'il puisse être compris sans ambiguïté.

8. Un numéro de téléphone est joignable depuis n'importe où
Certains numéros ne peuvent être joints que dans le pays. Certains ne peuvent être joints que depuis un ensemble de pays, comme les numéros gratuits internationaux universels +800. Certains encore peuvent être accessibles uniquement si l'appelant est abonné à une entreprise de télécommunications particulière.

9. Vous pouvez envoyer un SMS à n'importe quel numéro de téléphone
Beaucoup de gens n'ont encore qu'un téléphone fixe, qui ne peut généralement pas envoyer ou recevoir de messages texte. Il faut donc, dans la mesure du possible, essayer d'accommoder ces utilisateurs en les appelant avec un message vocal ou des invites vocales. Sinon, si votre service nécessite l'envoi de SMS, vérifiez que le numéro peut recevoir des SMS une fois que l'utilisateur l'a fourni.

10. Seuls les téléphones portables peuvent recevoir des SMS
Certains fournisseurs de services prennent en charge l'envoi et la réception de messages texte vers des numéros de ligne fixe. Il existe également des services en ligne comme Skype qui peuvent envoyer et recevoir des messages texte.

11. Un numéro invalide n'atteindra pas de terminal
Dans certains pays, des chiffres supplémentaires sont ignorés. Les numéros tels que "911" sont accessibles en composant le "911 123" par exemple dans certains pays, mais pas dans d'autres. Dans d'autres pays, les numéros invalides peuvent être « corrigés » par un opérateur, par exemple en ajoutant un jeton mobile s'il sait qu'il s'agit d'un numéro mobile, de sorte qu'il se connecte.

12. Tous les numéros de téléphone valides suivent les spécifications de l'UIT
L'UIT-T spécifie qu'un numéro de téléphone ne peut pas comporter plus de quinze chiffres, avec un à trois chiffres réservés à l'indicatif de pays, mais en Allemagne, il y a des numéros valides qui sont plus longs que cela.

13. Tous les numéros de téléphone valides appartiennent à un pays
Il existe de nombreux "indicatifs de pays" délivrés à des entités non géographiques, telles que les services par satellite, et le code "800" pour les numéros gratuits internationaux universels.

14. Les numéros de téléphone ne contiennent que des chiffres
En Israël, certains numéros publicitaires commencent par un *. En Nouvelle-Zélande, les incidents de circulation non urgents peuvent être signalés en appelant le *555 depuis un téléphone portable. Les caractères alphabétiques peuvent également être utilisés dans les numéros de téléphone.

15. Les numéros de téléphone n'ont qu'un seul préfixe à la fois
Au milieu des années 90 en Islande, les numéros de téléphone sont passés de 5 et 6 chiffres à 7 chiffres. L'ancien système avait des préfixes régionaux, mais pas le nouveau. Pendant la période de transition, les numéros de téléphone pouvaient être atteints par l'ancien indicatif régional ou le nouveau numéro à 7 chiffres (un préfixe différent). Pendant les périodes de transition, les développeurs doivent donc s'assurer que les deux formes d'un numéro sont prises en charge pour la recherche par numéro de téléphone. Si vous envoyez des messages ou composez des numéros concernés, vous devrez peut-être essayer le nouveau et l'ancien préfixe. Selon le type de transition, vous devrez peut-être contacter les clients concernés et leur demander de mettre à jour leur numéro.

16. L'indicatif pays ou régional d'un numéro de téléphone indique l'emplacement, le lieu de résidence, le fuseau horaire ou la langue préférée de l'utilisateur
Il existe de nombreuses raisons pour lesquelles quelqu'un a un numéro de téléphone émis dans un État ou une région autre que celui où il réside ou détient la citoyenneté. Par exemple, en cas de déménagement à l'intérieur d'un pays*: dans les pays où la portabilité des numéros de téléphone est possible, vous pouvez conserver votre numéro lors d'un déménagement, même dans certains cas s'il s'agit d'un numéro de ligne fixe qui a un indicatif régional. Certaines personnes gardent également leur téléphone portable lorsqu'elles déménagent dans un autre pays. Et ce ne sont pas les seuls cas où cette situation peut être possible. Les développeurs ne doivent donc pas interdire aux utilisateurs de s'inscrire avec un numéro de téléphone simplement parce qu'il appartient à un autre pays.

17. Le signe plus devant les numéros de téléphone au format international est facultatif ou peut toujours être remplacé par "00"
Le signe plus fait partie du format E.164 pour les numéros de téléphone internationaux. Il peut être remplacé par le préfixe d'appel international lors d'un appel international. Notez toutefois que même si 00 est un préfixe d'appel international commun, il varie en fait selon les pays.

18. Les numéros de téléphone sont des nombres
N'essayez jamais de stocker des numéros de téléphone sous la forme d'un entier ou de tout autre type de type de données numériques. Vous ne pouvez pas faire d'arithmétique sur eux, et bien que 007, 07 et 7 soient le même nombre, ils ne sont pas nécessairement le même numéro de téléphone. Dans certains pays, un 0 au début est significatif et fait partie du numéro lui-même. De plus, un numéro de téléphone peut contenir d'autres caractères.

19. Les plans de numérotation téléphonique publiés par les gouvernements ou les télécoms représentent la réalité
Les plans de numérotation nationaux, tels que ceux administrés par l'UIT, représentent les intentions du gouvernement ou des télécoms. Ceux-ci peuvent être publiés avant, pendant ou après la mise en œuvre effective des changements de plan de numérotation dans le monde réel. La date réelle à laquelle une plage de numéros de téléphone devient active peut ne pas toujours correspondre aux annonces officielles.

20. Les numéros de téléphone sont toujours écrits en ASCII
En Égypte, il est courant que les numéros de téléphone soient écrits en chiffres natifs.

No comment yet.
Scooped by Mickael Ruau
October 5, 2021 11:10 AM
Scoop.it!

PostgreSQL 14 - Performance, Security, Usability, and Observability

PostgreSQL 14 - Performance, Security, Usability, and Observability | FrenchTech SAAS | Scoop.it
Today saw the launch of PostgreSQL14, so let's look at what the community has done to improve performance for heavy transactional workloads and additional support for distributed data.
No comment yet.
Scooped by Mickael Ruau
October 5, 2021 11:10 AM
Scoop.it!

MySQL 8: Account Locking

MySQL 8: Account Locking | FrenchTech SAAS | Scoop.it
MySQL 8 Account Locking is one of the more security-focused changes first introduced in MySQL 8.0.19. Database administrators can now configure user accounts so that too many consecutive login failures can temporarily lock the account.
No comment yet.
Scooped by Mickael Ruau
October 4, 2021 1:46 AM
Scoop.it!

BigData: BASE –

BigData: BASE – | FrenchTech SAAS | Scoop.it

Nous voici sur un nouveau sujet: les bases de données NoSql. Pour introduire doucement ce sujet, nous allons nous intéresser au pourquoi ce type de base en nous intéressant aux propriétés de celles-ci: les propriété BASE. Les propriétés BASE sont pour les bases de données NoSql, ce qu’est ACID pour les bases de données relationnelles.…

No comment yet.
Scooped by Mickael Ruau
September 30, 2021 8:57 AM
Scoop.it!

XMLSpy | Open Source Alternative - osalt.com

XMLSpy | Open Source Alternative - osalt.com | FrenchTech SAAS | Scoop.it

Open source XMLSpy alternatives

Serna Free 4.2
Available for: windows mac linux unix java
Serna Free is an open source, powerful XML editor. It is geared toward those with no experience and uses WYSIWYG (What You See Is What You Get) for ease of use. Its appearance is a lot like a word... Read more XML Copy Editor 1.2
Available for: windows mac linux unix java
XML Copy Editor is a versatile XML editor primarily focused on text editing with XML files. However, XML Copy Editor provides many other features including validation of DTD and XML schemas - as well... Read more  
Mickael Ruau's insight:
About Website
XMLSpy

Available for
windows* mac
linux** unix
java

Tags
xml xml-editor dtd xslt xquery xpath wsdl

XMLSpy is most likely the number one XML editor on the market. While other programs may include XML editing functionalities - XMLSpy does it to perfection. The editing features and support for both schema and DTD development along with XSLT, XQuery and XPath development make it an ultimate XML tool.

Additionally XMLSpy allows creation and editing of all XML related to web services such as WSDL (Web Services Description Language) and SOAP. XMLSpy also provides code generation for Java, C++ and C# based on the XML schema - this make it even more ideal for SOAP and web services development.

 

 
No comment yet.