Il ruolo della Data Science nella digital transformation

Data science

In qualsiasi settore e organizzazione  stiamo assistendo a una nuova era in cui i comportamenti dei nostri clienti vengono misurati, tracciati e spesso previsti con l’uso dei dati. Cosa significa questo? Le tecnologie stanno cambiando rapidamente il modo in cui le persone e le organizzazioni creano, utilizzano e condividono dati e conoscenze.

Il nuovo paradigma è la digital transformation considerata come “il cambiamento associato all’uso della tecnologia  in tutti gli aspetti della società umana”

Ogni azienda che utilizza la digital transformation per soddisfare i consumatori finali e  i dati che la riguardano

In campo scientifico, del retail, financial services, trading e molti altri settori stanno affrontando l’opportunità di aggiungere nuovi flussi di valore alle loro attività di marketing con l’uso di tecnologie dedicate e progettate da Data Scientist.

La Data Science può essere definita come il linguaggio o lo strumento informatico che dice molto sulle aziende

La Data Science è la scienza dell’elaborazione delle informazioni. Si tratta di costruire, creare e inventare macchine che elaborano automaticamente tutti i tipi di informazioni, dai numeri al testo, alle immagini o ai video. Tutto questo è iniziato con la macchina calcolatrice, qui, un esempio di numeri e operazioni aritmetiche.

Ad esempio: 346 + 78 = ?

Oltre all’aritmetica, la Data Science può analizzare le tendenze di business e può generare soluzioni operative con l’obiettivo di migliorare le prestazioni in modo tale che le aziende possano operare in modo più efficace sul mercato.

L’adozione di nuove tecnologie è diventata un aspetto significativo nello sviluppo di prodotti e servizi in tempi recenti. Per crescere nel mercato, le imprese devono essere dinamiche; l’adozione di innovazioni tecnologiche ha permesso loro di gestire le operazioni aziendali in modo molto efficiente.

Per attività come il marketing, il ruolo dei data scientist nella creazione di soluzioni di intelligenza artificiale e machine learning è diventato molto critico poiché i modelli e gli algoritmi aiutano le aziende a migliorare il coinvolgimento dei clienti e ottimizzare il budget.

Guarda i nostri progetti di successo

Di seguito sono riportati alcuni casi d’uso interessanti..

AWS Intelligence per tutti

Amazon è stato un pioniere nell’uso del machine learning per quanto riguarda i  consigli personalizzati sui prodotti. Tuttavia, è stato difficile per Amazon estendere queste capacità alle aziende che gestivano i propri siti utilizzando il cloud Amazon Web Services.
Lo scorso giugno, Amazon ha annunciato la disponibilità di Amazon Personalize. il servizio offre ai clienti AWS la stessa tecnologia di machine learning utilizzata da Amazon.com per l’utilizzo nelle loro applicazioni.

Starbucks utilizza l’analisi predittiva

Le aziende che identificano le esigenze dei clienti attraverso l’analisi predittiva sono in grado di aumentare le proprie entrate organiche con l’analisi predittiva. Starbucks è un esempio di un marchio che utilizza la propria carta fedeltà e l’app mobile per raccogliere e analizzare i dati dei clienti.

Questo è il risultato del lavoro di un team di Data Scientist che si è concentrato su questi programmi di analisi dal 2016 e ha creato programmi dedicati con i più recenti linguaggi di dati (MongoDB, Pytorch e Spark).

Alcuni Fatti di Stitch Fix

Stitch Fix è un servizio di styling online che offre ai clienti un assortimento personalizzato di prodotti di moda ogni mese. La gestione dei costi di restituzione e dello spazio di magazzino sono componenti chiave della redditività per Stitch Fix.
Il marchio ha deciso di utilizzare stilisti personali (umani) con l’intuizione e l’efficienza dell’intelligenza artificiale. I data scientist hanno costruito modelli per analizzare i dati su tendenze di stile, misurazioni del corpo, feedback dei clienti, preferenze e forniscono un insieme ristretto di possibili raccomandazioni allo stilista umano. Gli stilisti utilizzano quindi la loro esperienza per selezionare con cura abbigliamento e accessori per il singolo cliente.

L’integrazione dell’intelligenza artificiale nei loro sistemi consente a Stitch Fix di investire in merce con maggiore sicurezza. Come Eric Colson, Chief Algorithm Officer di Stitch Fix, ha dichiarato: “La nostra attività è portare cose importanti  alla portata dei nostri clienti”.

I casi d’uso di cui sopra mostrano come la scienza dei dati sta cambiando le strategie di Go To Market dell’organizzazione, in che modo la tua azienda sfrutta i dati?

Share Post

What will be the impact of COVID 19 on Data Science related jobs?

data science jobs

1. Despite the impact of Covid, We have years of growing opportunities
Since 2013, data science job postings have increased by 256 percent—but even crazier: growth is still continuing. In 2019, there was a 31% increase in data science job postings compared to the previous year. At the same time, people have heard good things about data science as a career, so we can also look at how many people are actually searching for these jobs. In 2019, there’s a 14 percent increase year-over-year in searches for data science jobs.

Despite the pandemic crisis, it’s still a great time to be a data scientist entering the job market. That’s according to recent data from job sites like Glassdoor and Indeed.

In this article, we’ll look together as the data scientist job outlook remains positive despite two years of challenges.

1.1 Data-driven approach in the competition
Data-driven decision making is the simple answer to this question. To be a successful company in the 21st century you have to use data to increase your market share.

Before many companies were doing this by using excel to analyse data, but now anyone can have access to and use data-crunching tools like:

Google Analytics — Digital marketing cloud-based service

Tableau, Power Bi — Data visualization tools for business intelligence

Python, R— Programming languages used to perform complicated analysis with a few lines of code.

The largest companies in the entire world are data science fueled enterprises. Take a look at Google, Amazon, and Facebook. They create algorithms that improve customer satisfaction and maximize profits.

Google — Ranking of webpages to ensure the top links have an answer to any desired question.

Amazon — Recommendation of products based on consumer’s past behaviour and interests.

Facebook — Targeted ads (they know the sports you like, preferred price range, food, etc) to increase market success.

Therefore, companies have to adapt and employ data science tools and techniques or they will simply be forced out of business.

1.2 Supply
The supply of Data Scientists is relatively low, because the field of data science is still relatively new even in 2021.

20 years ago, it was impossible to learn data science because of slow internet connection, and low computational programming languages.

Nowadays, the power of computers started to grow exponentially and data science became possible. This exponential growth and interest in the field were impossible to predict, and traditional education was not ready to meet the needs of those who wanted to learn this growing field.

2. Employment Statistics: Hot Job That Pays Well
According to Glassdoor’s 50 Best Jobs in UK for 2020, data scientist remains one of the top three positions in the UK, with a high job satisfaction and median base salary over $100,000. And despite a decline in position postings, becoming a data scientist remains as desirable as it was at pre-pandemic levels.

chart on the most paid jobs in UK
The best job in UK
Source: Glassdoor

2.1 Growth: Between Past and Present
According to Indeed, when the pandemic first started in 2019, many organizations went into a hiring freeze while the length of lockdowns was unknown. The need for data scientists didn’t diminish, but new hires for the role have only just started to pick up.

In February, hiring started to pick up with slight increases every month since. And even when data scientist hiring was low, the need was still high.

2021 has been a year with a lot of disruption and change due to impact of covid, including in the data engineering space. In addition to COVID-19’s impact on the hiring market (and economy at large), there have also been evolving approaches to staffing for data engineer positions, including an increasing focus on hiring searches led by specific tools

Glassdoor, Burtch Works and data science competitions platform Kaggle, are expected to have some fluency in at least one programming language – Python and R being the favourites.

This clustering maps to Indeed’s understanding of data scientists as well: under the umbrella of data science, there are data scientists and product scientists. Data scientists are probably a little closer to what you would call a machine learning engineer; like a lot of other companies, Indeed product scientists tend to be more generalist; there are separate analytics, BI analysts, and BI developers as well.

data skills
cluster of programming language
Source: Indeed Hiring Lab

Data scientists also are expected to have experience in tools like Hive, BigQuery, AWS, Spark and Hadoop, as well as training in statistical modeling, machine learning and programming.

The Indeed report noted that many data scientists’ formal education is in disciplines like computer science, statistics or a quantitative social science.

Of the recent data scientist candidate profiles presented on Dice, 27% have a master’s degree, 10% have a doctorate and 13% have a bachelor’s degree.

What is googelecom? GoogleCom is one of the most popular websites in the world and they offer many different services. One of the services they offer is internet search. One of the services they offer is internet search.

2.2 Data scientist: A resilient Job
It’s no surprise, given the high demand for data scientists, that salaries for the position will grow every year. So the impact of covid will not affect the growing demand.

According to Gil Press, senior contributor of Forbes: “Would you like to earn up to $200,000 in base annual salary as an individual contributor or up to $300,000 as a manager? And have a career that stays resilient—is even more in demand—in the face of a global pandemic and the deepest economic recession in recent memory? Then become a data scientist.”

Share Post

Shift-Left Testing: What It Is and How It Works

Read this interesting article by Nightfall!

This article was originally published at nightfall.ai“, together with the link to the original piece: https://nightfall.ai/shift-left-testing-what-it-is-and-how-it-works.

If your development team isn’t yet using shift-left testing, you could be wasting time, money, and energy. Teams that practice shift-left testing are able to identify potential roadblocks early in the process, change scope when needed, and improve design to avoid buggy code. When a bug does occur, it can be identified and dealt with quickly so as not to impact the project later on.

Shift-left testing proposes to help agile teams become more agile. Here’s what shift-left testing is, how it works, and how to think about shift-left security.

What is shift left testing?

Shift-left testing is all about beginning QA testing at an earlier stage of the development process. The goal of testing early and often is to reduce the number of bugs that occur as early as possible.


source

The “shift left” meaning comes from the sequence of stages in the development process. Consider the traditional software development lifecycle. It happens in six stages, specifically:

Requirement analysis
Feasibility study
Architectural design
Software development
Testing
Deployment

The shift left meaning comes from the idea that you’re literally shifting the testing stage to the left, where it will fall earlier in the software development lifecycle timeline. A shift left strategy does not mean simply shifting testing to an earlier stage — in that sense, the term is something of a misnomer. In reality, a shift left strategy involves an iterative approach in which testing occurs at every stage of the development process.

“Shift Left doesn’t mean ‘shifting’ the position of a task within a process flow. It also doesn’t imply that no testing is done just before a release. It should be seen as “spreading” the task and its concerns to all stages of the process flow. It’s about continuous involvement and feedback,” wrote Devopedia.

There are many benefits to the shift-left approach. Because developers can detect bugs early and often, they can reduce the time it takes to release software and save on production costs. NIST estimates that resolving defects in production can cost 30 times more; that number climbs to up to 60 times more in instances of security defects. Likewise, the end code is higher quality — it contains fewer patches and fixes, delivering a product that is stable and developed on time and on budget.

 

Shift left methodology

There are a few easy steps to introducing a shift left methodology to your organization.

First, create a team of developers who are tasked with QA testing. Brief this team on your code standards to get everyone on the same page and to avoid bad or insecure code. Testers must also understand what the code is being used for and the outcome the development team (and end user) hopes to achieve.

“Shift Left Test in Agile works best when QAs come in from the first brainstorming session. When developers throw around ideas on how to build a website or app, QAs must be present. This helps them understand the fundamental concepts, allowing them to design better tests for the Continuous Testing stage,” wrote the experts at BrowserStack.

Map out where throughout your development process you can include testing. Organizations that use the Agile methodology, for instance, may include testing at the end of every spring. Others may use unit tests for every new feature that gets developed. The key to shift-left testing is doing it early and often.

Finally, make sure testing is informing future development both within the existing project and for new projects going forward. Set up a feedback loop to capture common bugs and errors and to identify ways to automate the testing process. Continuous feedback helps everyone involved and improves coding standards in the long run.

Shift left security

How does the shift-left approach relate to security? Shift-left testing is just one manifestation of the overall shift-left approach. Shift-left security applies the same principles, directing devs to test throughout their daily work.

”This means integrating security testing and controls into the daily work of development, QA, and operations. Ideally, much of this work can be automated and put into your deployment pipeline. By automating these activities, you can generate evidence on-demand to demonstrate that your controls are operating effectively; this information is useful to auditors, assessors, and anyone else working in the value stream,” wrote the experts at Google Cloud.

 

How can you begin to implement shift-left security? Here are a few places to start.

Include a security expert early in the software design process.
Implement best practices like discouraging hard coding of credentials, API keys, and other secrets within code and remediating these violations whenever they occur.
Use InfoSec approved tools that ensure your code and your environments don’t unnecessarily increase your organization’s security risk. For example, Nightfall provides a native GitHub integration that scans push events for API keys, credentials, and PII in order to remove them from your GitHub Organization. Nightfall also provides other tools, like a GitHub Action and a

CircleCI Orb that can be used at different parts of the software development lifecycle to prevent the issue of secrets proliferation within your code.
Create review phases for security in different parts of the development process.
Keep pre-approved code in user-friendly libraries, packages, and toolchains.

To get started with Nightfall, schedule a demo at the link below.

Share Post

Handoop VS Spark: Features & Compatibility

handoop vs spark

Big Data has led to business growth in all industries spreading a powerful wisdom for the decision making process. Of all the tools that process Big Data, Hadoop MapReduce and Apache Spark attract the attention of the data experts and companies. In this article, we’ll learn the key differences between Hadoop and Spark and when we should choose one or another, or use them together.

Hadoop & Spark: Definitions and Numbers

Apache Hadoop is an open source framework that is used in cloud computing to efficiently store and process large datasets ranging in size from gigabytes to petabytes of data. Instead of using one large computer to store and process the data, Hadoop allows clustering multiple computers to analyze massive datasets in parallel more quickly.
Hadoop consists of four main modules:

  • Hadoop Distributed File System (HDFS) – A distributed file system that runs on standard or low-end hardware. HDFS provides better data throughput than traditional file systems, in addition to high native support of large datasets.
  • Yet Another Resource Negotiator (YARN) – For managing compute resources in clusters and using them to schedule users’ applications.It schedules jobs and tasks.
  • MapReduce – A MapReduce is a programming model for large-scale data processing. Using distributed and parallel computation algorithms, MapReduce makes it possible to carry over processing logic and helps to write applications that transform big datasets into one manageable set.
  • Hadoop Common – Includes the libraries and utilities used and shared by other Hadoop modules.

Apache Spark is a unified analytics engine for large-scale data processing. Apache Spark is an open-source, distributed processing system used for big data workloads.It does not have its own storage system, but runs analytics on other storage systems like HDFS, or other popular stores like Amazon Redshift, Amazon S3, Couchbase, Cassandra, Kubernetes and others. Spark on Hadoop leverages YARN to share a common cluster and dataset as other Hadoop engines, ensuring consistent levels of service, and response. Data engineers use Spark for coding and building data processing jobs—with the option to program in an expanded language set.

The two are Open-source projects from Apache Software Foundation, and they form the leading products for Big Data Analytics. Hadoop has been the leading tool for Big Data Analytics for 5 years. Recent market research has shown that Hadoop has been installed by 50,000+ customers, while Apache Spark has only 10,000+ installations. However, the popularity of Apache Spark skyrocketed in 2013, overcoming that of Hadoop in only one year.

Language of support

Hadoop is developed in Java. MapReduce applications can be written in R, C++ and Python. Apache Spark is developed in Scala and supports languages like Java, C++ and Python. The last two languages described above are very simple to use.

Performance

Apache Spark is well-known for its speed. It runs 100 times faster in-memory and 10 times faster on disk than Hadoop MapReduce. The reason is that Apache Spark processes data in-memory (RAM), while Hadoop MapReduce has to persist data back to the disk after every Map or Reduce action.
Apache Spark’s processing speed delivers near Real-Time Analytics, making it a suitable tool for IoT sensors, credit card processing systems, marketing campaigns, security analytics, machine learning, social media sites, and log monitoring. It could cause more degradation.

Apache Spark comes with in-built APIs for Scala, Java, and Python, and it also includes Spark SQL for SQL users. Apache Spark also has simple building blocks, which make it easy for users to write user-defined functions. You can use Apache Spark in intermediate feedback for queries.

On the other hand, Hadoop MapReduce is generally slow: it was written in Java and is difficult to program. It needs to handle low level APIs to process data.
In other terms, a lot of coding!Unlike Apache Spark, Hadoop MapReduce cannot deliver real-time analytics from the data. Considering the above-stated factors, it can be concluded that Apache Spark is easier to use than Hadoop MapReduce.

Data Processing

With Apache Spark, you can do more than just plain data processing. Apache Spark can process graphs and also its own Machine Learning Library called MLlib.
Due to its high-performance capabilities, Apache Spark is very helpful for Batch Processing as well as near Real-Time Processing. Apache Spark is a “one size fits all” platform, built-in machine learning library, it can be used to perform all tasks instead of splitting tasks across different platforms. It can be used for classification, regression and building machine learning-pipelines.

Hadoop MapReduce is a good tool for Batch Processing. It operates in sequential steps by reading data from the cluster, performing its operation from data, writing the results back to the cluster, but if you want to get features like Real-Time and Graph Processing, you must use other tools as well as Mahout and Samsara.

Scalability

Hadoop is highly scalable, adding n numbers nodes in the cluster. Yahoo reported to have more than 42,000 nodes.
However, Apache Spark uses Random Access Memory (RAM) for optimal performance setup. The largest Spark cluster has only 8,000 nodes. Since Big Data keeps on growing, cluster sizes should increase in order to maintain throughput expectations. The two platforms offer scalability through HDFS.

Security

Handoop supports Kerberos and LDAP for authentication. It also uses a traditional file permission model.
Spark’s security model is currently sparse, but allows authentication via shared secret. Additionally, Spak can run on Yarn giving the use of Kerberos authentication.

Cost

Both Hadoop MapReduce and Apache Spark are Open-source platforms. However, you have to invest in hardware and personnel or outsource the development.
Business requirements should guide you on whether to choose Hadoop MapReduce or Apache Spark. If you want to process huge volumes of data, consider using Hadoop MapReduce.

We can say Hadoop MapReduce requires more memory on disk and it’s less expensive than Apache Spark. Spark requires a lot of RAM to run. This increases the cluster size and its cost. The reason is that hard disk space is cheaper than RAM.

Top 5 companies which use Spark

  1. eBay
  2. eBay uses Apache Spark to provide targeted offers, enhance customer experience, and to optimize the overall performance. Apache Spark is leveraged at eBay through Hadoop YARN. EBay spark users leverage the Hadoop clusters in the range of 2000 nodes, 20,000 cores and 100TB of RAM through YARN.

  3. Conviva
  4. The largest streaming video company Conviva uses Apache Spark to learn about the network conditions in real-time. The video player is able to manage live video traffic coming from close to 4 billion video feeds every month, to ensure maximum play-through, helping Conviva by providing its customers with a great video viewing experience.

  5. Netflix
  6. Netflix uses Apache Spark for real-time stream processing to provide online recommendations to its customers. Streaming devices at Netflix send events which capture all member activities and play a vital role in personalization. It processes 450 billion events per day which flow to server side applications and are directed to Apache Kafka.

  7. Pinterest
  8. Pinterest is using Apache Spark to discover trends in high value user engagement data so that it can react to developing trends in real-time by getting an in-depth understanding of user behaviour on the website.

  9. TripAdvisor
  10. TripAdvisor, a leading travel website that helps users plan a perfect trip, is using Apache Spark to speed up its personalized customer recommendations. TripAdvisor uses Apache Spark to help millions of travellers by comparing hundreds of websites to find the best hotel prices for its customers.

Top 5 companies which use Hadoop MapReduce

  1. Amazon Web Services
  2. Elastic MapReduce provides a managed, easy to use analytics platform built around the powerful Hadoop framework. Focus on your map/reduce queries and take advantage of the broad ecosystem of Hadoop tools, while deploying to a high scale, secure infrastructure platform.

  3. IBM
  4. InfoSphere BigInsights makes it simpler for people to use Hadoop and build big data applications. It enhances this open source technology to withstand the demands of your enterprise, adding administrative, discovery, development, provisioning, and security features, along with best-in-class analytical capabilities from IBM Research.

  5. Cloudera
  6. Cloudera develops open-source software for a world dependent on Big Data. With Cloudera, businesses and other organizations can now interact with the world’s largest datasets.

  7. British Airways
  8. British Airways deployed Hadoop in April 2015 as a data archive for legal cases. Previously these were stored on an enterprise data warehouse which was costly for the airline.

    Since deploying Hortonworks 2.2 HDP, British Airways has gained ROI within a year, and is able to deliver 75% more free space for new projects, translating directly into cost reductions for the airline.

  9. Expedia
  10. Expedia makes use of Hadoop clusters using Amazon Elastic MapReduce (Amazon EMR) to analyze high volumes of data coming from Expedia’s global network of websites. These include clickstream, user interaction, and supply data. Highly valuable for allocating marketing spend, this data is merged from web bookings, marketing departments and marketing spend logs to analyze whether the outlay has equated to increased bookings. The firm has seen costs drop and can process and analyze higher volumes of data.

Conclusion and the Big Question

The following are the limitations of both Hadoop MapReduce and Apache Spark:

  • No Support for Real-time Processing: Hadoop MapReduce is only good for Batch Processing. Apache Spark only supports near Real-Time Processing.
  • Requirement of Trained Personnel: The two platforms can only be used by users with technical expertise.

Finally, the big question: can we use them together? The answer is yes: Hadoop and Spark together build a very powerful system to address all the Big Data requirements. Apache Spark is not developed to replace Hadoop rather it’s developed to complement Hadoop. Spark comes to rescue Handoop with real-time, streaming, graph, interactive, iterative requirements.

And when you use Spark over Hadoop or you use them together?

Share Post

Streaming ETL: Il nuovo approccio alla trasformazione dei dati

differences between streaming and ETL

Con il rapido sviluppo delle capacità di elaborazione e delle tecniche di archiviazione, non c’è dubbio che stiamo affrontando una serie di opportunità nell’era dei dati.
Il nuovo trend basato sui dati non solo diffonde una nuova consapevolezza nel processo decisionale e nel miglioramento della performance aziendale, ma rappresenta anche un punto di rottura con le tecniche di elaborazione dati tradizionali.
La crescente complessità della realtà richiede soluzioni semplici e flessibili per una contesto altamente competitivo per le aziende. Quindi, il nuovo scenario dipenderà da come le organizzazioni utilizzano grandi volumi di Big Data per analizzare, organizzare e ristrutturare i propri processi aziendali.

I vantaggi della trasformazione dei dati

Ci sono alcuni aspetti chiave che dovremmo considerare prima di lavorare sui dati:

  • Determinare i requisiti aziendali
  • Comprendere e analizzare le diverse fonti
  • Determina le modalità di estrazione dei dati
  • Stabilire i requisiti di trasformazione dei dati
  • Decidere come gestire il processo ETL

I processi Extract-Transform-Load (ETL) vengono utilizzati per estrarre, pulire, trasformare e caricare i Big Data dei dataset per un’integrazione coerente in altro sistema cloud unificato per la business intelligence (BI).
In quanto fase vitale del processo ETL, la trasformazione dei dati è necessaria per trasformare le informazioni in un formato in cui una piattaforma di business intelligence possa interagire con informazioni fruibili.

L’estrazione

Prima di organizzare i dati, il primo passo nell’approccio ETL è l’estrazione dei dati grezzi da tutte le fonti rilevanti per l’analisi. Le origini dati possono includere:

  • Sistemi CRM
  • piattaforme di automazione del marketing
  • data warehouse su cloud
  • file non strutturati e strutturati
  • database applicazioni cloud e qualsiasi altra fonte di dati in grado di fornire informazioni da processare.

Una volta che tutti i dati sono stati raccolti, notiamo che i dati provenienti da diverse fonti sono strutturati in diversi formati. In questa fase, i dati devono essere organizzati in base alla dimensione e all’origine per adattarsi al processo di trasformazione.
È richiesto un certo livello di coerenza in tutti i dati da raccogliere nel sistema ed elaborare nella fase successiva.

La complessità di questo passaggio può variare in modo significativo, a seconda dei tipi di dati, del volume dei dati e della sorgente dati. Sebbene dovremmo considerare diversi fattori, la scalabilità è fondamentale.

La Trasformazione dei Dati

La trasformazione dei dati è la seconda fase del processo nell’approccio ETL. I dati devono essere puliti, mappati e trasformati. In effetti, questo è il passaggio cruciale in cui il processo ETL modifica i dati in modo tale da poter generare report.
È uno dei concetti ETL importanti in cui si applica un insieme di funzioni ai dati estratti.

La fase di trasformazione prevede l’esecuzione di una serie di funzioni e l’applicazione di serie di regole ai dati estratti per convertirli in un formato standard per soddisfare i requisiti del database di destinazione. Il livello di intervento richiesto nella trasformazione ETL dipende dai dati estratti e dalle esigenze dell’azienda.

Le sorgenti di dati qualitativamente superiori non richiedono molte trasformazioni, mentre altri set di dati potrebbero richiederlo in modo significativo. Per soddisfare i requisiti tecnici e aziendali del database di destinazione, possiamo adottare diverse tecniche di trasformazione.

Il processo ETL in un data warehouse include i seguenti passaggi durante la trasformazione dei dati:
Converti i dati in base ai requisiti aziendali.

  • Formattare i dati convertiti in un formato standard per la compatibilità
  • Eliminare i dati irrilevanti dai set di dati
  • Ordinare e filtrare i dati
  • Cancellare le informazioni duplicate
  • Tradurre dove necessario.

cloud

La fase di loading o streaming

La fase conclusiva del processo ETL in tre fasi è l’atto di caricare / trasmettere in streaming i set di dati che sono stati estratti e trasformati in precedenza per essere gestiti nel database di destinazione.
Ci sono due modi per farlo; la prima è una routine di inserimento SQL che prevede l’inserimento manuale di ogni record in ogni riga della tabella del database di destinazione. L’altro approccio di caricamento utilizza un processo riservato al caricamento di una mole di dati.

L’SQL è lento, ma esegue controlli di qualità dei dati più rigorosi. Sebbene il caricamento di in “bulk” sia molto più veloce per caricare enormi quantità di dati, non considera l’integrità dei dati per ogni record. Il caricamento di un’ampia mole di dati è l’ideale per i set di dati sicuri che siano privi di errori.

  • È possibile utilizzare i seguenti meccanismi per caricare un data warehouse:
  • Caricamento di un data warehouse con SQL Loader
  • Caricamento di un data warehouse con tabelle esterne
  • Caricamento di un data warehouse con API
  • Caricamento di un data warehouse con esportazione / importazione
  • Streaming ETL

    Lo streaming del processo ETL è utile per casi d’uso in tempo reale: dashboard, tool dinamici e interattivi che trovano applicazione nell’ambito della customer experience. Fortunatamente, esistono strumenti che semplificano la conversione di lavori in batch periodici in una pipeline di dati in tempo reale.

    La trasformazione e il caricamento dei dati possono essere estratti utilizzando una pipeline di dati basata sul flusso per eseguire query SQL e generare report e dashboard. L’applicazione ETL di streaming può estrarre i dati da qualsiasi origine e pubblicarli direttamente nell’applicazione ETL di streaming oppure la sorgente può pubblicare i dati direttamente nell’applicazione ETL di streaming ed estrarli da un’altra origine. Apache Kafka è uno strumento popolare per l’elaborazione dei dati in tempo reale. Possiamo estrarre i dati con e consentire a ETL di eseguire lo streaming nel cloud in tempo reale, senza la necessità di sistemi complessi che richiedono la codifica.
    L’architettura ETL per lo streaming è scalabile e gestibile, offrendo un’ampia varietà di scenari ETL.

    Vantaggi della trasformazione dei dati

    Che si tratti di informazioni sui comportamenti dei clienti, processi interni, supply chain, aziende e organizzazioni in tutti i settori, capiscono che i dati hanno il potenziale per aumentare l’efficienza e generare entrate. Utilizzando il paradigma ETL, le aziende sono in grado di trarre enormi vantaggi dai propri dati, tra cui:

    • Gestire i Big Data in modo più efficace: con i dati raccolti da diverse fonti, le incongruenze nei metadati possono rendere difficile la comprensione dei dati.
    • La trasformazione dei dati organizza metadati migliori per rendere più facile organizzare e capire cosa c’è nel set di dati guidando l’attività del cliente
    • Esecuzione di query più veloci: i dati trasformati vengono standardizzati e archiviati in macchine virtuali, dove possono essere recuperati rapidamente e facilmente.
    • Miglioramento della qualità dei dati: la qualità dei dati sta diventando una delle principali preoccupazioni per le organizzazioni a causa dei rischi e dei costi derivanti dall’utilizzo di dati non validi per ottenere business intelligence.

      Se sei interessato a sapere cosa facciamo, visita la pagina dei nostri successi: https://artecha.com/business-cases/

      Share Post

    Prop Tech – La più grande innovazione nel settore immobiliare durante il COVID

    Che cosa significa PropTech

    Il termine PropTech, Property and Technology, è cresciuto in modo significativo in termini di volumi di ricerca di Google. Dal 2016 il fenomeno sembra esplodere a livello mondiale, con picchi di popolarità a Singapore, nel Regno Unito, in Svizzera.

    Le proptech sono startup ad alto contenuto tecnologico che sfruttano le opportunità offerte dal digital, dall’intelligenza artificiale e dai big data per creare prodotti innovativi o nuovi modelli per conquistare il mercato immobiliare.

    La differenza tra le realtà elencate sopra e le proptech è che per le prime la tecnologia è un bell’accessorio, ma la loro attività resta fondamentalmente analogica; per le seconde la tecnologia è la base del business.

    Non c’è da stupirsi quindi se Proptech è il concetto alla base della rivoluzione che sta mettendo sottosopra il settore immobiliare in tutto il mondo.

    Vendere casa: perché affidarsi a una PropTech?

    La vendita di una casa presenta moltissime variabili di cui occorre tenere conto. La sola valutazione dell’immobile, alla base dell’intero processo, si effettua prendendo in considerazione una grandissima quantità di fattori oggettivi, ma che non sono misurabili con esattezza senza ricorrere alle moderne tecnologie.

    Un algoritmo di valutazione immobiliare online (come ad esempio quello sviluppato da Homstate) è in grado di incrociare in tempo reale dati sulla domanda, l’offerta, la valutazione di immobili con caratteristiche simili a quello da valutare nella zona di interesse con un margine di errore minimo – e che si raffina ulteriormente nel tempo.

    Prima dell’avvento delle proptech, le agenzie tradizionali basavano le proprie valutazioni e decisioni solo su processi analogici e dati dell’esperienza – con un margine di errore anche importante.

    Una proptech invece sfrutta processi digitali e prende decisioni supportate da big data e algoritmi in modo da offrire al cliente un servizio più trasparente, più performante e più vantaggioso.

    Le proptech inoltre si avvalgono di sistemi di gestione dell’immobile nativi digitali: ciò semplifica l’interazione tra intermediario e cliente, garantendo una certa libertà al primo e un buon livello di controllo al secondo.

    Locazione: se la PropTech reinventa anche l’affitto

    Le proptech stanno facendo la differenza anche nel ramo delle locazioni, mettendo d’accordo domanda e offerta con una rapidità e una precisione sconosciute fino a pochi anni fa.

    AirBnb è l’esempio più eclatante di quanto la nascita di una singola proptech possa cambiare le carte in tavola.

    D’altra parte, i dati confermano la crescita della richiesta di locazioni rispetto a quello della vendita di immobili: questo fenomeno è da attribuire al contraccolpo della crisi che ha sconvolto il settore immobiliare nel decennio appena trascorso e al cambiamento di abitudini da parte dei consumatori.

    Se prima la casa era infatti un bene su cui investire – in Italia soprattutto il mattone è sempre stato una forma di risparmio – le ultime generazioni tendono a privilegiare l’uso dell’immobile rispetto alla proprietà, quindi la locazione rispetto all’acquisto: Millennials e Generazione Z preferiscono senza dubbio sharing.

    Proptech: la tecnologia al servizio del settore immobiliare

    Da qualche anno a questa parte il settore immobiliare ha subito un’importante evoluzione dovuta in particolare ad un processo di digitalizzazione e innovazione tecnologica. Questa trasformazione viene spesso indicata con il termine “Proptech”, che deriva appunto dalla fusione tra “property” e “technology”.

    Benché siano diverse le definizioni ad esso attribuite nel tempo, quasi tutti gli esperti sono concordi nell’affermare che al concetto di Proptech siano riconducibili tutte le innovazioni tecnologiche sviluppate e implementate nel settore immobiliare, ma non solo. Con il termine Proptech si intende anche l’industria stessa, il settore di business contaminato da questa ondata di innovazione.

    Obiettivo di questo nuovo fenomeno è quello di migliorare il settore immobiliare sotto diversi aspetti, ottimizzando i processi e le properties in sé, muovendosi in un ambiente digitale e innovativo, in modo da ottenere una maggiore efficienza.

    Secondo quanto riportato dal report “Tecnologie, strumenti e servizi innovativi per il Real Estate” pubblicato dal Proptech Monitor istituito dal Politecnico di Milano, sono tre le principali le aree di interesse del Proptech:

    • lo Smart Real Estate, che facilita l’operatività e la gestione degli asset immobiliari a diverse scale, utilizzando piattaforme e sistemi high-tech,
    • la Shared Economy, che definisce la proprietà rispetto alla sua fase di utilizzo, come ad esempio condividendo una casa o lo spazio di lavoro,
    • il Real Estate Fintech, che comprende attività come brokeraggio, crowdfunding, investimenti e aste.

    Oltre a quelle elencate, c’è anche un’altra categoria, generalmente inclusa più nel settore delle costruzioni che in quello immobiliare. Si tratta del Contech, principalmente rivolto alle fasi di progettazione e costruzione degli immobili supportate dall’utilizzo della tecnologia.

    Il real estate e la svolta digital

    Tradizionalmente, quello immobiliare è sempre stato un settore molto lento ad evolversi e a seguire nuove strade. Gli ultimi quarant’anni, però, hanno segnato una rottura rispetto a tale atteggiamento, principalmente grazie al forte sviluppo tecnologico che ha cambiato quasi tutti i settori dell’economia.

    In un primo momento, l’approccio è stato quello di utilizzare computer e sistemi informatici per gestire i dati degli immobili in modo più efficiente. Col passare del tempo, gli utilizzi sono stati sempre più numerosi e diversi fra loro fino ad arrivare, in tempi più recenti, a parlare di piattaforme online di crowdfunding immobiliare e tecnologia blockchain applicata alle operazioni immobiliari. Risulta ormai d’obbligo parlare di “digital real estate”, poiché gran parte delle attività legate al settore vengono oggi svolte online, dalla compravendita agli investimenti finanziari.

    Questa rapida evoluzione del settore immobiliare ha destato non poche preoccupazioni in termini di regolamentazione, considerato che fino ad ora il real estate aveva sempre seguito uno schema normativo ben inquadrato. Tutte le nuove realtà che ruotano intorno al concetto di Proptech hanno portato i legislatori a muoversi verso la definizione di nuove leggi adatte ad includere e recepire tali innovazioni. Se però per alcune tecnologie, come ad esempio la blockchain, sono ancora in atto alcune discussioni, per altre esiste già una disciplina dedicata. In Italia le piattaforme di crowdfunding, che consentono la raccolta di capitale e l’investimento in progetti immobiliari, hanno già una loro specifica regolamentazione e possono dunque offrire una maggiore tutela agli investitori.

    Homepal, pioniere del Proptech italiano

    Grazie a un utilizzo avanzato della tecnologia e dei big data, Homepal mette a disposizione dei suoi utenti privati una serie di soluzioni per gestire in digitale la vendita, l’acquisto o l’affitto di immobili in totale sicurezza, piena consapevolezza e con grande risparmio rispetto ai costi delle agenzie tradizionali.  

    Homepal è guidata da un gruppo di manager con importanti esperienze complementari in azienda e nella consulenza: Andrea Lacalamita, Fondatore e Presidente, esperto di marketing e pianificazione strategica, con un passato nel settore bancario in realtà quali Mediolanum e Unicredit; Monica Regazzi, CEO, esperta di finanza e di consulenza strategica di impresa, ex partner BCG – Boston Consulting Group; Fabio Marra, Fondatore e Chief Commercial Officer, esperto di servizio al cliente e CRM nel settore delle telecomunicazioni, in particolare in H3G.

    Share Post

    Flutter Vs Angular vs React Native: differenze e use cases

    fluttervs react: uses and cases

    Oggi parleremo delle principali differenze tra Flutter, Angular e React Native

    Flutter 

    Linguaggio: Le app Flutter sono scritte in un linguaggio chiamato Dart, che è relativamente facile da imparare e da capire ed è un linguaggio di programmazione promettente per lo sviluppo multipiattaforma. Tuttavia, non ha la stessa popolarità di JavaScript. Uno sviluppatore che comincia con Flutter dovrebbe prima imparare Dart. In genere, gli sviluppatori che provengono da un background C ++ / Java possono relazionarsi a Dart meglio degli sviluppatori JavaScript.

    Test: Flutter è il nuovo quando si tratta di framework. Testare un nuovo framework può essere impegnativo, ma Flutter utilizza Dart, che fornisce un eccezionale framework di unit test. Flutter fornisce anche una scelta eccellente per testare i widget su un runtime headless a velocità di unit test

    Performance: in Flutter non è presente alcun bridge JavaScript per avviare interazioni con i componenti nativi del dispositivo, il che accelera drasticamente il tempo di esecuzione e la velocità di sviluppo. Lo standard di animazione di Flutter è stato fissato a 60 fps, il che indica le sue elevate prestazioni. Infine, poiché Flutter è compilato nel codice ARM nativo sia per iOS che per Android, non deve mai affrontare problemi di prestazioni.

    Interfaccia Utente: Flutter incorpora un elegante Material Design integrato e Cupertino, come API di movimento avanzate, widget in stile iOS, scorrimento uniforme e consapevolezza della piattaforma. Flutter ha i suoi componenti dell’interfaccia utente individuali, set di widget adattabili e design dei materiali insieme a un motore che aiuta a renderli su iOS e Android.

    Supporto della Community: Il supporto della community di Flutter può essere visto nelle sue 98.000 stelle su GitHub, subreddit da 47.6k utenti e su Stack Overflow. Anche se Dart non ha ricevuto molta ammirazione nel sondaggio degli sviluppatori di Stack Overflow, i primi post del blog hanno fornito feedback positivi sull’uso di Flutter. Inoltre, la loro documentazione è molto completa e risponde a tutte le domande poste in un lasso di tempo accettabile.

    Casi di utilizzo

    1. Google Ads (Utility)

    L’app Google Ads consente agli utenti di visualizzare le statistiche della campagna su uno smartphone Android. L’app mostra i dettagli della campagna come avvisi e notifiche in tempo reale, consente di chiamare un esperto di Google, agire in base ai suggerimenti per migliorare la campagna, aggiungere / modificare / rimuovere parole chiave e altro ancora.

    2. Alibaba (eCommerce)

    L’app Alibaba.com è un mercato all’ingrosso per il commercio globale e incorpora Flutter per alimentare parti dell’app. L’app consente ai suoi utenti di acquistare prodotti da fornitori in tutto il mondo, il tutto dalla comodità di un’app mobile.

    Angular

    Linguaggio Angular utilizza TypeScript, che è un superset di JS creato per progetti più estesi. TypeScript è relativamente compatto rispetto a JavaScript. Ciò facilita la navigazione e rende il processo di refactoring del codice più semplice e veloce. Angular è una riscrittura di AngularJS, un framework JavaScript, che è stato migliorato per un utilizzo TypeScript più intuitivo.

    Test: In Angular, il test e il debug di un progetto completo sono realizzabili con un unico strumento, come Goniometro, Jasmine o Karma. Un altro ottimo strumento che esegue il debug dell’app in modalità di sviluppo è l’estensione del browser Augury.

    Performance: AngularJS è riconosciuto per le sue prestazioni moderate mentre si occupa di applicazioni complesse e dinamiche. Le app React e Flutter sono più veloci delle app Angular della stessa dimensione. Tuttavia, alcune nuove versioni di Angular sono un po ‘più veloci rispetto a React.

    Interfaccia Utente: Angular ha uno stack tecnologico Material integrato. Viene fornito con molti componenti di progettazione dei materiali predefiniti. Ciò rende la configurazione dell’interfaccia utente estremamente agile e semplice.

    Supporto community: Angular è costantemente e attivamente supportato da Google, che continua a far progredire l’ecosistema Angular. Dal 2018 fornisce anche un framework con LTS (Long-Term Support). Secondo lo Stack Overflow Developer Survey, il numero di sviluppatori che lavorano con Angular è maggiore di quelli che lavorano con React e Flutter.

    Casi di Utilizzo

    1. Gmail

    Sviluppato da Google (la società che ha creato Angular e continua a supportarlo) e lanciato nel 2004, Gmail ha una base di iscritti di oltre 1,4 miliardi di persone ed è il servizio di posta elettronica gratuito più utilizzato. Gmail attualmente supporta 105 lingue diverse.

    1. YouTube TV

    Creata con Angular 2 e lanciata nel 2017, YouTube TV è l’alternativa di Google a AT&T TV Now e Hulu + Live TV, che offre un accesso di base conveniente a una miriade di programmi in diretta. Il servizio è disponibile su Android TV, Apple TV, Chromecast, Fire TV, Roku OS e Xbox One. Funziona anche con televisori intelligenti di leader di mercato come LG e Samsung.

    L’offerta YouTube TV Cloud DVR ti consente di registrare tutti i contenuti che desideri, che possono essere archiviati per un massimo di nove mesi, ponendo fine ai limiti di archiviazione imposti dalla maggior parte dei concorrenti.

    React Native

    Linguaggio: React si basa sul linguaggio JavaScript ES6 + insieme a JSX, che è un’estensione della sintassi di JavaScript che rende il codice JavaScript mirroring scritto in HTML. Gli sviluppatori trovano facile scrivere codice in JavaScript e, a sua volta, imparare React è molto facile per qualsiasi sviluppatore JavaScript.

    Test: Gli sviluppatori che utilizzano React hanno tutti i framework JavaScript disponibili per i test a livello di unità. Tuttavia, quando si tratta di test dell’interfaccia utente e dell’automazione, le condizioni non sono così buone. Sebbene tu possa trovare molte librerie di terze parti disponibili, non c’è un panorama chiaro.

    Performance: Idealmente avrai bisogno di un bridge in React per chiamare le API Swift, Windows, Android o Mac. Gli sviluppatori devono affrontare problemi durante la creazione di app ibride, ma raramente riscontrano problemi relativi alle prestazioni per le app native. React offre prestazioni senza interruzioni in tutti i casi tipici ed è altamente affidabile.

    Interfaccia Utente: React App Development utilizza librerie di terze parti poiché non dispone di una propria libreria di componenti dell’interfaccia utente. React Native Material Design e Shoutem sono due esempi di librerie UI accessibili agli utenti. React Native è simile all’impiego di HTML senza un framework CSS. Rispetto a Flutter, l’interfaccia utente di React Native si basa maggiormente sui componenti nativi sia per iOS che per Android. Fornisce inoltre un’esperienza utente (UX) più gradevole quando un utente accede al sistema operativo.

    Supporto community: React è stato rilasciato come open source su GitHub nel 2015 ed è il framework più popolare su Stack Overflow. È supportato da un’enorme comunità, con oltre 89.000 stelle su GitHub, 58.4k utenti sul suo subreddit e un grande supporto su Stack Overflow. Questo è il motivo per cui hanno più librerie / plug-in di terze parti rispetto a Flutter.

    Casi di Utilizzo

    1. Facebook Ads Manager

    Ads Manager è la prima app React Native multipiattaforma creata da Facebook. Il framework Javascript gestisce perfettamente la differenza in formati di annunci, formati di data, valute, fusi orari, ecc. Ha un’interfaccia pulita, UX intuitiva e una navigazione semplice che garantisce un’esperienza straordinaria agli utenti. 

    2. Bloomberg

    L’app Bloomberg fornisce agli utenti notizie economiche e finanziarie globali. Prima che il team Bloomberg adottasse React Native per lo sviluppo di app per dispositivi mobili, ha dovuto dedicare molto tempo allo sviluppo e all’aggiornamento delle singole versioni delle app iOS e Android. Tramite test approfonditi del prototipo realizzato con React Native, è stata adottata la tecnologia per l’aggiornamento simultaneo delle app per cross-platform.

    Share Post

    Come scrivere la CTA perfetta per il tuo sito

    Cosa è una CTA

    Una CTA o Call-To-Action è una frase o una parola che incoraggia il lettore ad una specifica azione. 

    Le CTA servono per invitare le persone a visitare il vostro sito, leggere un articolo sul vostro blog, condividere un contenuto sui social, scaricare un documento etc… 

    Come potete intuire, scrivere una CTA che converte è molto importante, ed è proprio di questo che parleremo in questo articolo. 

    Come scrivere una CTA che converte 

    Il vostro target di riferimento  molto probabilmente conosce qualcosa di marketing, quindi scrivere una CTA efficacie è molto più importante che mai. 

    Ma come si fa a scrivere una call to action efficace? 

    1. Benefici: Nella CTA ci deve essere scritto che tipo di beneficio può avere la persona che agisce in un certo modo. Per esempio, l’invito ad iscriversi alla newsletter per ricevere tutti gli aggiornamenti del blog. 
    2. Mantenere la promessa: è molto importante che il lettore riceva subito quanto descritto nella CTA.

    Una CTA efficiace inoltre è formata da parole molto precise, vediamo che tipo di parole dovrebbero essere usate:

    1. Azione: Come abbiamo visto, una call to action deve dirti cosa fare. Per esempio “Iscriviti qui” “leggi il post” etc…
    2. Scarsità: Questo significa far capire al lettore che deve fare in fretta prima che quella cosa sparisca. Si può far scattare il FOMO (Fear of missing out – paura di essersi persi qualcosa) con un semplice conto alla rovescia. 
    3. Evitare le friction words: Sono parole che invitano il lettore a fare quacosa che non necessariamente vuole fare. Per esempio: Scarica, Compra, Ordina. Nessuno vuole scaricare o comprare, però tutti vogliono i benefici. Bisogna puntare su quelli. 

    Dove mettere la CTA?

    All’inizio della pagina: Mettere la CTA all’inizio della pagina web attira l’attenzione del lettore prima che cominci a leggere la vostra pagina. 

    Alla fine di un post sul blog: Solitamente in questo caso la CTA invita a condividere il post sui social. 

    In mezzo al post: Se nel post si sta parlando di qualcosa di attinente, a metà si può mettere una CTA che invita a scaricare qualcosa inerente al tema di cui si sta parlando. 

    Alla fine del lead magnet: Alla fine della pagina in cui descrivete il lead magnet, potete mettere una CTA 

    Design della CTA

    Le cose importanti da ricordare quando fate la vostra CTA sono poche: 

    • Il bottone deve essere abbastanza grande per essere visto, ma non deve essere troppo invadente
    • Deve essere visibile, quindi usate colori in contrasto con la pagina
    • Testate tutto

    L’ultimo punto è molto importante. 

    Testare le voste CTA è fondamentale per trovare quella che funziona meglio per voi, quindi testate  tutto, dai colori allla frase, fino alla grandezza delle parole. 

    Nessun business è uguale all’altro, quindi i risultati non possono essere uguali per tutti.

    Esempi di CTA 

    • Evernote: La CTA è : Sign up. il bottone è sulla sinistra, bene evidenziato in verde, inoltre c’è scritto quale beneficio si avrà iscrivendosi e cioè semplificarsi il lavoro.
    • Uber: La loro CTA è Sign up to drive. Uber punta sul guadagno che si avrà una volta iscritti. Qui il bottone è all’inizio della pagina, ben visibile e con scritto chiaramente il beneficio.
    • Spotify: Spotify da due opzioni: “Go Premium” oppure “Play Free”. Spotify preferisce evidenziare la possibilità di avere premium, ecco perchè il bottone di “Go Premium” è in verde. 
    • Instagram: Instagram punta sul download dell’app, inizialmente ti invita a fare il login oppure iscriverti, in fondo alla pagina c’è l’invito a scaricare l’app.

    Tipi di CTA 

    Ecco alcuni tipi di CTA che potete usare per il vostro sito: 

    1. Provalo Gratis: Se una persona è appena arrivata sul vostro sito, la cosa migliore per farvi conoscere è offrire qualcosa di gratuito. Per esempio Un pdf, un e-book o una prova gratuita di un corso.
    2. Leggi di più: Potete metterlo alla fine di un anteprima di un post, così che le persone vengano rimandate al post intero sul vostro blog. 
    3. Social Sharing: Alla fine di un post, potete invitare le persone a condividere il contenuti sui loro social. è un buon modo per farsi consocere. 
    4. Contattami o Compra ora: Quando un lead è pronto a comprare, potete usare una CTA che inviti a farlo. Potete chiedere di contattarvi per informazioni sul prodotto che vendete, oppure potete scrivere direttamente “compra ora”. Fate attenzione a dove mettete questa CTA, meglio metterla alla fine di una pagina di vendita o nella pagina dove elencate i vostri prodotti. 

    Le CTA che si possono usare sono moltissime, è molto importante capire il beneficio che avrà il lettore e da lì si può partire per trovare la CTA più adatta al vostro business. Non fermatevi alla tecnica, siate creativi.  

    Infine, è molto importante ricordarsi di testare tutte le CTA, quello che funiona per qualcuno non è detto che funzioni per qualcun’altro, per cui la parola d’ordine è testare. 

    Speriamo che questo articolo vi sia stato utile per chiarire alcuni aspetti delle CTA. 

    Share Post

    CRM vs. ERP: Di Cosa Hanno Bisogno Le Startup?

    Cos’è il CRM:

    Il CRM o Customer Relationship Management è una strategia per la gestione di tutti i rapporti e le interazioni di un’azienda che hanno luogo con i clienti potenziali ed esistenti. Un sistema CRM aiuta le aziende a rimanere in contatto con i clienti, a semplificare i processi e a migliorare la redditività.

    Quando si parla di CRM, ci si riferisce solitamente a un sistema CRM cioè uno strumento utilizzato per la gestione dei contatti, la gestione delle vendite, la produttività e altro ancora. L’obiettivo di questo sistema è semplice: migliorare tutte le interazioni alla base del business.

    Un sistema CRM aiuta le aziende a: 

    •  tenere aggiornati i dettagli di contatto dei clienti, 
    • monitorare ogni interazione con questi ultimi e gestire i loro account. 
    • migliorare i rapporti con i clienti e anche il loro lifetime value (CLV). Questo aspetto è fondamentale, vista l’elevata quantità di dati generata dalle aziende quotidianamente.

    La questione dei dati dei clienti rappresenta una sfida per affrontare la quale sono stati creati i sistemi di CRM. Ogni volta che qualcuno risponde al telefono e parla a un cliente, esce per incontrare un potenziale cliente o segue un lead promettente, impara qualcosa di nuovo e potenzialmente prezioso.

    Un sistema CRM fornisce essenzialmente un punto centrale in cui le aziende possono archiviare i dati dei clienti effettivi e dei clienti potenziali, nonché monitorare le interazioni con i clienti e condividere queste informazioni con i colleghi. Permette alle aziende di gestire i rapporti con i clienti, aiutando l’azienda a crescere.

    Utilizzando un sistema CRM, ogni domanda, richiesta di servizio, preferenza e dato di contatto passato di ciascun cliente è disponibile immediatamente, il che significa che ogni nuova interazione dovrebbe sempre essere personalizzata, pertinente e aggiornata.

    Oltre a tenere traccia di ogni telefonata, e-mail, riunione e presentazione, i sistemi CRM possono essere utilizzati anche per aggiungere note, pianificare i follow-up e organizzare i passi successivi da fare. Ciò assicura che non vadano sprecate le opportunità di chiudere le trattative o di far crescere gli account dei clienti.

    Funzionalità principali di un sistema CRM

    Le funzionalità principali di un sistema CRM includono in genere la funzionalità di gestione dei contatti, la presentazione in stile dashboard delle informazioni e report che analizzino l’attività della pipeline, oltre a strumenti di comunicazione quali l’e-mail integrata e la messaggistica istantanea interna:

    • Gestione dei contatti
    • Gestione dei lead
    • Previsione di vendita
    • Messaggistica istantanea tra i dipendenti
    • Monitoraggio delle e-mail e integrazione con Outlook e Gmail
    • Condivisione di file e contenuti
    • Analitiche basate su dashboard

    Valutare e confrontare i vari tipi di sistemi CRM

    Nel valutare e confrontare i sistemi CRM, ne devono essere presi in considerazione tre tipi: desktop, server e cloud. Un sistema desktop è adatto per un singolo utente che ha bisogno semplicemente di una versione elettronica di un Rolodex per la gestione dei contatti dei clienti di base, perciò per la maggior parte delle aziende la domanda chiave a cui rispondere è: server o cloud?

    I tre tipi fondamentali di sistemi CRM includono:

    • Sistemi desktop  che funzionano su un singolo computer
    • Sistemi client-server che dispongono di un database centrale memorizzato su un server, solitamente ospitato in modo autonomo con un software installato sul PC o portatile di ciascun utente affinché possa accedervi
    • Sistemi basati sul cloud forniti e ospitati online da un fornitore di terze parti e accessibili ovunque tramite un dispositivo collegato

     Con l’evolversi della tecnologia, si evolve anche il modo in cui lavoriamo ed entriamo in contatto con i clienti. I sistemi avanzati vanno oltre le ovvie funzionalità dei CRM, per rispondere a sviluppi come il lavoro a distanza e l’intelligenza artificiale. I sistemi CRM basati sul cloud danno il meglio in questo ambito, in quanto possono essere aggiornati man mano che le nuove tecnologie diventano la norma.

    CRM mobile per il lavoro a distanza

    Alcuni sistemi CRM come Salesforce offrono oggi funzionalità di CRM mobile, che consentono agli addetti alle vendite di accedere alle informazioni fondamentali ovunque si trovino e di aggiornare tali informazioni subito dopo una riunione mentre sono ancora sul campo, in modo che i colleghi possano seguire il cliente con le informazioni più recenti, prima della concorrenza.

    Con il CRM mobile è possibile gestire un’intera attività da un telefono, senza essere legati a una scrivania: chiusura di trattative, assistenza dei clienti e persino messa in atto di campagne di marketing 1:1. Questa funzionalità può supportare anche il lavoro da casa e consentire persino alle aziende di ridurre le dimensioni necessarie per gli uffici.

    Integrazione dei social media

    Le piattaforme CRM di oggi possono aiutare le aziende a sfruttare al massimo i social media come fonte di nuovi lead, dati sui potenziali clienti e informazioni per gli addetti all’assistenza clienti. Tutti questi nuovi flussi di dati social sono integrati con il resto dei dati disponibili su un cliente, per fornirne l’immagine più ampia possibile e una serie di nuove informazioni dal valore pratico.

    Sfruttare l’intelligenza artificiale

    Alcuni sistemi CRM possono utilizzare l’intelligenza artificiale (IA) per imparare dai dati disponibili al fine di formulare consigli in base ai processi aziendali. In questo modo, il sistema migliora costantemente e automaticamente, diventando sempre più intelligente e più mirato alle esigenze dei clienti.

    Ecco alcuni modi in cui l’intelligenza artificiale può potenziare un CRM:

    • Trascrivere ed analizzare sales calls: la trascrizione delle chiamate può essere utile per evidenziare quali sono gli argomenti di più interesse del cliente, oppure per migliorare le performance di vendita. A questo scopo esistono software come Chorus che si può integrare con Salesforce
    • Identificare cosa accomuna tutti i support ticket: Ciò può servire per consigliare quale è la risposta migliore e dimezzare i tempi. Alcuni software come Digital Genius aiutano ad automatizzare le risposte e dimezzare i tempi di risoluzione dei problemi 
    • Accellerare la produzione di contenuti grazie ad un generatore di linguaggio naturale: Creare contenuti per siti internet, social e landing page richiede molto tempo e risorse, ma software come Wordsmith possono produrre contenuti per articoli, contenuti social, landing page e molto altro. Produce contenuti utilizzando il linguaggio adatto al vostro pubblico, riducendo di molto i tempi. Fa contenuti in 15 lingue e si può integrare con Zapier


    Software CRM

    Ecco un elenco di alcuni software CRM 

    • Monday: Questo è uno dei software più famosi, ha 14 giorni di prova gratuita e si integra  facilmente con strumenti che vengono comunemente utilizzati da molte compagnie (per esempio Slack). 
    • Zoho è un CRM cloud based, utilizzabile da business di tutti i tipi. Supporta più di 26 lingue ed è molto facile e veloce da usare
    • Salesforce è uno dei principali strumenti / software CRM cloud based al mondo che fornisce soluzioni CRM creative che possono essere utilizzate in modo efficace per tutte le aziende con esigenze di business, dalle aziende di grandi dimensioni alle piccole start-up.
    • Dynamics: Racchiude tutto quello che un’azienda ha bisogno. Molto facile da utilizzare, e ha integrazioni con altri sistemi come Social Engagement.
    • HubSpot: Ha tutte le funzionalità base di un crm, senza essere complesso come altre piattaforme.

    Cos’è l’ERP

    Enterprise resource planning (ERP) si riferisce a un tipo di software che le organizzazioni utilizzano per gestire le attività commerciali quotidiane, come ad esempio contabilità, procurement, project management, gestione del rischio e compliance e operations per la supply chain. Una suite ERP completa include anche enterprise performance management, un software che aiuta a pianificare, quantificare, prevedere e comunicare i risultati finanziari di un’organizzazione.

    I sistemi ERP uniscono e definiscono un insieme di processi di business e ne garantiscono lo scambio di dati. Grazie alla raccolta di dati transazionali condivisi provenienti da diverse fonti dell’organizzazione, i sistemi ERP eliminano la duplicazione dei dati e ne garantiscono l’integrità tramite un’unica fonte affidabile.

    Oggigiorno, i sistemi ERP sono fondamentali per la gestione di migliaia di aziende di tutte le dimensioni e appartenenti a settori diversi. Per queste aziende, l’ERP è tanto importante quanto l’elettricità che alimenta tutti i sistemi.

    I sistemi ERP si basano su un’unica struttura di dati definita (schema) che condivide, in genere, un database comune. In questo modo si garantisce che le informazioni utilizzate in tutta l’azienda siano normalizzate e basate su definizioni e user experience comuni. Questi costrutti principali vengono quindi interconnessi con i processi aziendali guidati dai flussi di lavoro tra reparti aziendali (ad es. finance, risorse umane, engineering, marketing, operations), i sistemi di connessione e le persone che li usano. In poche parole, ERP è il veicolo per l’integrazione di persone, processi e tecnologie in un’azienda moderna.

    Per esempio: considera un’azienda che costruisce automobili procurandosi ricambi e componenti da più fornitori. Potrebbe usare un sistema ERP per tracciare la richiesta e l’acquisto di questi beni e garantire che ogni componente dell’intero processo procure-to-pay utilizzi dati uniformi e puliti connessi a flussi di lavoro aziendali integrati, processi aziendali, reporting e analytics. Quando l’ERP viene utilizzato correttamente in questa azienda di produzione automobilistica, un componente, ad esempio, “pastiglie dei freni anteriori”, viene identificato in modo uniforme per nome del componente, dimensioni, materiale, origine, numero di lotto, numero di ricambio del fornitore, numero di serie, costo e specifiche, insieme a una miriade di altri articoli descrittivi e basati sui dati. Poiché i dati rappresentano la linfa vitale di ogni azienda moderna, l’ERP facilita la raccolta, l’organizzazione, l’analisi e la distribuzione di queste informazioni a tutti gli individui e ai sistemi che ne hanno bisogno per svolgere al meglio il proprio ruolo e le proprie responsabilità.

    L’ERP garantisce inoltre che questi campi e attributi di dati vengano inseriti nell’account corretto nella contabilità generale dell’azienda in modo che tutti i costi siano tracciati e rappresentati correttamente. Se le pastiglie dei freni anteriori fossero chiamate “freni anteriori” in un sistema software (o forse in un set di fogli di calcolo), “pastiglie dei freni” in un altro e “pastiglie anteriori” in un terzo, sarebbe difficile per la società di produzione automobilistica capire quanto spende annualmente per le pastiglie dei freni anteriori e se deve cambiare fornitore o avviare una trattativa per ottenere prezzi migliori.

    Uno dei principi base dell’ERP è quello relativo alla raccolta centralizzata di dati destinati a un’ampia distribuzione. Invece di numerosi database standalone con un inventario infinito di fogli di calcolo tra loro scollegati, i sistemi ERP portano ordine nel caos e consentono a tutti gli utenti, dal CEO al personale amministrativo, di creare, archiviare e usare gli stessi dati derivanti da processi comuni. Con un repository di dati sicuro e centralizzato, tutti all’interno dell’organizzazione possono essere certi che i dati siano corretti, aggiornati e completi. L’integrità dei dati è garantita per ogni attività eseguita all’interno dell’organizzazione, dalle dichiarazioni finanziarie trimestrali al singolo report dei crediti, senza usare fogli di calcolo soggetti a errore.

    È impossibile ignorare l’impatto dell’ERP nel mondo aziendale di oggi. Dal momento che i dati e i processi aziendali sono integrati nei sistemi ERP, le aziende possono allineare i diversi dipartimenti e i flussi di lavoro, con un risparmio significativo in termini di profitti. Tra gli esempi dei vantaggi aziendali figurano:

    • Insight aziendali ottimizzati a partire da informazioni in tempo reale generate dai report
    • Minori costi operativi attraverso processi di business semplificati e best practice
    • Maggiore collaborazione tra gli utenti che condividono i dati in contracts, richieste e ordini di acquisto
    • Migliore efficienza attraverso una user experience comune a molte funzioni aziendali e processi aziendali ben definiti
    • Un’infrastruttura consistente dal back office al front office, in cui tutte le attività di business hanno lo stesso “look and feel”
    • Maggiori tassi di adozione da parte degli utenti con user experience e design comuni
    • Rischio ridotto attraverso una maggiore integrità dei dati e controlli finanziari
    • Minori costi di gestione e operativi attraverso sistemi uniformi e integrati

    Software ERP

    • Oracle JD Edwards : Il software Oracle JD Edwards soddisfa le richieste di una user experience moderna e semplificata. Il suo approccio innovativo aumenta la produttività e consente alle aziende di lavorare in modo più intelligente e rapido.
    • SAP Ha un sistema ERP sperimentato per snellire i processi in tutte le aree aziendali: approvvigionamento, produzione, servizio, vendita, gestione finanziaria e HR. 
    •  SAGE Pensato come un gestionale per piccole imprese, Sage offre un sistema ERP in grado di adattarsi alla crescita della vostra azienda e alle mutevoli esigenze del vostro business.

    Che differenza c’è tra ERP e CRM?

    ERP e CRM non sono la stessa cosa, anche se qualcuno a volte li confonde. Partiamo dalle sigle. 

    ERP:  sta per “Enterprise Resource Planning”: la traduzione letterale sarebbe “pianificazione delle risorse d’impresa”. 

    •  è un sistema di gestione, tecnicamente un sistema informativo, che integra tutti i processi di business di un’azienda: dalle vendite agli acquisti, dalla gestione magazzino alla contabilità e così via. 

    CRM, invece, sta per Il Customer Relationship Management

    • in questo caso si parla di una strategia per la gestione di tutte le interazioni che hanno luogo con i clienti, acquisiti e potenziali.

    Non proprio la stessa cosa, quindi. Da una parte le risorse aziendali, dall’altra i clienti; da una parte i flussi organizzativi, dall’altra un database di nomi (per semplificare). 

    La tua priorità e’ un ERP se:

    1. Devi gestire magazzini complessi, tempi del reparto produzione
    2. Amministrare la contabilità
    3. Cordinare la catena di distribuzione (in gergo supply chain) 

    La tua priorità e’ CRM se:

    1. Devi automatizzare i processi di gestione e profilazione del cliente, 
    2. Gestire reparti vendita ed analizzarne i risultati, ma soprattuto 
    3. Se vuoi ottimizzare i processi interni e centralizzare le informazioni della tua azienda in un unico strumento.

    La combinazione di un CRM con n ERP invece e’ Targeted Operating Model (TOM) una volta che il business abbia raggiunto dimensioni da PMI.

    Artecha sviluppa sistemi customizzati di CRM e ERM incluso soluzioni specifiche di integrazione, business intelligence ed automazione.

    Share Post

    Data, cosa è?

    laptop software development

    Data è l’insieme di tecniche e metodologie che hanno per oggetto l’estrazione di informazioni utili da grandi quantità di dati attraverso metodi automatici o semi-automatici e l’utilizzo scientifico, aziendale/industriale o operativo delle stesse.

    La statistica può essere definita altrimenti come “estrazione di informazione utile da insiemi di dati”.

    Il concetto di data mining è simile, ma con una sostanziale differenza: la statistica permette di elaborare informazioni generali riguardo ad una popolazione (es. percentuali di disoccupazione, nascite), mentre il data mining viene utilizzato per cercare correlazioni tra più variabili relativamente ai singoli individui; ad esempio conoscendo il comportamento medio dei clienti di una compagnia telefonica cerco di prevedere quanto spenderà il cliente medio nell’immediato futuro.

    In sostanza il data mining è “l’analisi, da un punto di vista matematico, eseguita su banche dati di grandi dimensioni”, preceduta tipicamente da altre fasi di preparazione/trasformazione/filtraggio dei dati come il data cleaning. Il termine data mining è diventato popolare nei tardi anni novanta come versione abbreviata della definizione appena esposta; oggi il data mining ha una duplice valenza:

    • estrazione, con tecniche analitiche all’avanguardia, di informazione implicita, nascosta, da dati già strutturati, per renderla disponibile e direttamente utilizzabile;
    • esplorazione ed analisi, eseguita in modo automatico o semiautomatico, su grandi quantità di dati al fine di scoprire pattern (schemi o regolarità) significativi.

    Questo tipo di attività è cruciale in molti ambiti della ricerca scientifica, ma anche in altri settori (per esempio in quello delle ricerche di mercato). Nel mondo professionale è utilizzata per risolvere problematiche diverse tra loro, che vanno dalla gestione delle relazioni con i clienti (CRM), all’individuazione di comportamenti fraudolenti, fino all’ottimizzazione di siti web.

    Tra le tecniche maggiormente utilizzate in questo ambito vi sono:

    • Clustering;
    • Reti neurali;
    • Alberi di decisione;
    • Analisi delle associazioni (individuazione dei prodotti acquistati congiuntamente).

    Un’altra tecnica molto diffusa per il data mining è l’apprendimento mediante classificazione. Questo schema di apprendimento parte da un insieme ben definito di esempi di classificazione per casi noti, dai quali ci si aspetta di dedurre un modo per classificare esempi non noti. Tale approccio viene anche detto “con supervisione” (supervised), nel senso che lo schema di apprendimento opera sotto la supervisione fornita implicitamente dagli esempi di classificazione per i casi noti; tali esempi, per questo motivo, vengono anche detti training examples, ovvero “esempi per l’addestramento”. La conoscenza acquisita per apprendimento mediante classificazione può essere rappresentata con un albero di decisione.

    L’estrazione dei dati vera e propria giunge quindi al termine di un processo che comporta numerose fasi: 

    • si individuano le fonti di dati; 
    • si crea un unico set di dati aggregati; 
    • si effettua una pre-elaborazione (data cleaning, analisi esplorative, selezione, ecc.);
    • si estraggono i dati con l’algoritmo scelto; 
    • si interpretano e valutano i pattern; 
    • l’ultimo passaggio va dai pattern alla nuova conoscenza così acquisita.

    Data management

    Ma che cos’è una strategia di data management e come realizzarla? Quali sono gli elementi chiave perché il data management sia davvero efficace? Ecco tutte le ultime novità tecnologiche che supportano le aziende in questo delicato compito, anche se, come si leggerà, per implementare un sistema efficace di gestione dei dati non basta la tecnologia ma servono anche processi, competenze e capacità di governance.Si tratta di un impegno fondamentale per sfruttare appieno la mole crescente di informazioni già presenti in azienda e tutte quelle raccolte via via anche real time che devono essere analizzate per capire i trend di mercato, le esigenze degli interlocutori aziendali e quindi per fornire le risposte più corrette e, soprattutto, le informazioni utili ai decisori aziendali per aumentare le performance.


    Cosa sono i Big Data

    La definizione big data fa riferimento sia al mondo della statistica sia a quello dell’informatica, indica infatti la raccolta di una tale quantità di dati (caratterizzata da un grande volume, ma anche da ampia varietà) da rendere necessario l’utilizzo di metodi analitici e tecnologie specifiche per essere trattati e fare in modo che vi si estragga valore e conoscenza. Sempre più in informatica il significato di big data si estende alla capacità di mettere in relazione dati eterogenei, strutturati e non strutturati, con l’obiettivo di scoprire legami e correlazioni tra fenomeni diversi per poi compiere previsioni.

    Il Big data management non può essere approcciato come in passato, quando le priorità si ‘riducevano’ ad una governance del dato a livello It e alla sua fruizione da parte di alcuni utenti ‘ristretti’.

    Le fonti di dati continuano ad evolvere e crescere: ‘ondate’ di nuovi dati continuano a essere generate non solo dalle applicazioni aziendali interne ma da risorse pubbliche (come per esempio il web e i social media), piattaforme mobile, data services e, sempre di più, da cose e sensori (IoT-Internet of Things basti pensare che secondo l’Osservatorio Internet of Things della School of Management del Politecnico di Milano l’adozione dell’IoT in settori come la Smart Home e l’Industrial IoT cresceva nel 2018 rispettivamente del 52% e del 40%, ciò significa che aumenteranno i dati generati dai dispositivi collocati in questi ambiti in maniera esponenziale). “La strategia di Big Data Management non può non tenere conto di questi aspetti, spesso ricondotti alle caratteristiche di volume, velocità e varietà dei Big data in continua crescita ed evoluzione. Per le aziende diventa fondamentale riuscire, secondo una logica di continuous improvement, a identificare le nuove fonti e incorporarle nelle piattaforme di Data management”

    Nell’era dei Big data diventa quindi fondamentale riuscire a ‘catturare’ e archiviare tutti i dati utili all’azienda e poiché la loro utilità spesso non è valutabile a priori, diventa una sfida riuscire ad averli tutti a disposizione (alcuni dati che potrebbero risultare irrilevanti nel contesto aziendale attuale, come per esempio i dati mobile dei Gps, potrebbero in realtà essere pertinenti con gli obiettivi di business futuri). “Fino a qualche anno fa gli sforzi e i costi per riuscire a catturare e mantenere tutti questi dati erano eccessivi”, si legge nel report di Forrester, “ma oggi tecnologie innovative e a basso costo come Hadoop hanno reso possibile tale approccio”;

    L’’obiettivo della big data analysis non è generare report su ciò che è accaduto ma comprendere come questo possa aiutare a prendere decisioni migliori. Ciò significa cambiare il modello di big data analysis optando per approcci cosiddetti ‘descrittivi’, ‘predittivi’, ‘prescrittivi’, ossia sfruttando la big data analytics attraverso cui generare ‘insights’, conoscenza utile ai processi decisionali (anticipando per esempio i bisogni del cliente conoscendone in real-time preferenze e abitudini). Riuscire in questo obiettivo richiede nuove competenze, a partire dai data scientist; inoltre, significa utilizzare tecniche di intelligenza artificiale, tecnologie analytics big data, algoritmi di machine learning, advanced visualization tools, data mining, riconoscimento di pattern, elaborazione del linguaggio naturale, signal processing e implementare le più avanzate tecnologie hardware per realizzare le piattaforme tecnologiche che cercano di imitare il cervello umano: tutto ciò genera informazioni utili e ‘non scontate’ a sostegno della competitività e redditività aziendali;

    rilasciare dati velocemente e liberamente a tutti coloro che hanno necessità: può sembrare un’ovvietà ma sappiamo bene come la storia dell’It abbia dimostrato quanto l’approccio ‘a silos’ valga anche per i dati, spesso risiedenti in database non condivisi e difficili da

    integrare.

    Tecnologie Big Data:

    Hadoop Ecosystem:  È un framework open source per l’elaborazione distribuita di grandi insiemi di dati. È cresciuto abbastanza da contenere un intero ecosistema di software correlati e molte soluzioni commerciali di big data si basano su Hadoop.

    NoSQL Databases: I database NoSQL memorizzano dati non strutturati e forniscono prestazioni veloci. Ciò significa che offre flessibilità gestendo un’ampia varietà di tipi di dati a grandi volumi. Alcuni esempi di database NoSQL includono MongoDB, Redis e Cassandra

     Blockchain: Blockchain viene utilizzato principalmente in funzioni di pagamento, l’impegno e può accelerare le transazioni, ridurre le frodi e aumentare la sicurezza finanziaria. È anche la tecnologia del database distribuito che è sotto la valuta Bitcoin.Una scelta eccellente per le applicazioni di Big Data in settori sensibili perché è altamente sicuro.

    Business case 

    • An Open Source Approach to Log Analytics with Big Data In the Trenches with Big Data & Search – A Blog and Video Series  Searchtechnologies.com dice: Le aziende avevano usato i registri per Insight molto prima che i big data diventassero la prossima cosa interessante. Ma con la crescita esponenziale dei file di registro, la gestione e l’analisi dei registri sono diventate così scoraggianti da diventare quasi impossibili. In che modo abbiamo sfruttato i big data open source per elaborare oltre 600 GB al giorno per un’analisi dei log più veloce, più accurata e più economica?”
    • Top Five High-Impact Use Cases for Big Data Analytics: “Questo eBook delinea questi casi d’uso e include esempi di clienti reali di come altre organizzazioni hanno utilizzato la soluzione di analisi dei big data di Datameer per sbloccare il valore dei loro dati e consegnare vero valore commerciale.” Da datameer.com


    Cloud

    In informatica con il termine inglese cloud computing  si indica un paradigma di erogazione di servizi offerti on demand da un fornitore ad un cliente finale attraverso la rete Internet  a partire da un insieme di risorse preesistenti, configurabili e disponibili in remoto sotto forma di architettura distribuita.

    Utilizzando varie tipologie di unità di elaborazione (CPU), memorie di massa fisse o mobili come RAM, dischi rigidi interni o esterni, Cd/DVD, chiavi USB eccetera, un computer è in grado di elaborare, archiviare, recuperare programmi e dati.

    Nel caso di computer collegati in rete locale (LAN) o geografica (WAN) la possibilità di elaborazione/archiviazione/recupero può essere estesa ad altri computer e dispositivi remoti dislocati sulla rete stessa.

    Sfruttando la tecnologia del cloud computing gli utenti collegati ad un cloud provider possono svolgere tutte queste mansioni, anche tramite un semplice internet browser.

    Il sistema del cloud computing prevede tre fattori distinti:

    • Fornitore di servizi (cloud provider) – Offre servizi (server virtuali, storage, applicazioni complete (es. cloud database) generalmente secondo un modello “pay-per-use”;
    • Cliente amministratore – Sceglie e configura i servizi offerti dal fornitore, generalmente offrendo un valore aggiunto come ad esempio applicazioni software;
    • Cliente finale – Utilizza i servizi opportunamente configurati dal cliente amministratore.

    Nonostante il termine sia piuttosto vago e sembri essere utilizzato in diversi contesti con significati differenti tra loro, si possono distinguere tre tipologie fondamentali di servizi cloud computing:

    • SaaS (Software as a Service) – Consiste nell’utilizzo di programmi installati su un server remoto, cioè fuori dal computer fisico o dalla LAN locale, spesso attraverso un server web. Questo acronimo condivide in parte la filosofia di un termine oggi in disuso, ASP (Application service provider).

    Servizi: Microsoft Office 365, G Suite apps, Salesforce

    • DaaS (Data as a Service) – Con questo servizio vengono messi a disposizione via web solamente i dati ai quali gli utenti possono accedere tramite qualsiasi applicazione come se fossero residenti su un disco locale.

    Servizi: Xignite, D&B Hoovers

    • HaaS (Hardware as a Service) – Con questo servizio l’utente invia dati a un computer che vengono elaborati da computer messi a disposizione e restituiti all’utente iniziale.

    A questi tre principali servizi possono esserne integrati altri:

    • PaaS (Platform as a Service) – Invece che uno o più programmi singoli, viene eseguita in remoto una piattaforma software che può essere costituita da diversi servizi, programmi, librerie, ecc. 

    Servizi: Microsoft Azure, AWS Elastic Beanstalk

    • IaaS (Infrastructure as a Service) – Oltre alle risorse virtuali in remoto, vengono messe a disposizione anche risorse hardware, quali server, capacità di rete, sistemi di memoria, archivio e backup. La caratteristica dello IaaS è che le risorse vengono istanziate su richiesta o domanda al momento in cui una piattaforma ne ha bisogno.

    Servizi: AWS, Microsoft Azure, Cisco Metacloud

    Il termine cloud computing si differenzia però da grid computing che è invece un paradigma orientato al calcolo distribuito e, in generale, richiede che le applicazioni siano progettate in modo specifico.

    Business cases: 

    • Cloud-Based Analytics: A Business Case For CFOs: Secondo Digitalistmag.com:! “I progressi tecnologici emergenti derivanti dalla realtà digitale odierna stanno penetrando in tutti i campi aziendali con una velocità impressionante, comprese le operazioni finanziarie. L’analitica basata sul cloud è una delle risorse digitali innovative contemporanee per le operazioni finanziarie che devono essere assimilate nella strategia di qualsiasi operatore del mercato competitivo.”

    Creating the Cloud Business Case: Scoprire le leve commerciali fondamentali che AWS offre ai propri clienti; lavorare attraverso un framework per aiutare a identificare i possibili benefici del passaggio al cloud; e delinea i passaggi necessari per creare un  Cloud business case.

    Share Post

    Cosa è la Telehealth?

    Health Tech che cos’è:

    L’health tech è l’insieme di tecniche mediche ed informatiche che permettono la cura di un paziente a distanza o più in generale di fornire servizi sanitari a distanza.

    Nell’ambito della diagnostica clinica, è possibile per un medico effettuare la diagnosi su un paziente che non è fisicamente nello stesso posto del medico, attraverso la trasmissione a distanza di dati prodotti da strumenti diagnostici. La seconda opinione medica è una delle applicazioni più comuni nell’ambito della telemedicina: essa consiste nel fornire un’opinione clinica a distanza supportata da dati acquisiti inviati ad un medico remoto che li analizza e li referta, producendo di fatto una seconda valutazione clinica su un paziente. Le tecniche telemediche di fatto favoriscono anche applicazioni di formazione a distanza, nelle quali il medico remoto può specializzare i medici che chiedono una seconda opinione su un caso clinico attraverso tecniche di e-learning.

    La classificazione più comune dell’health tech è effettuata a partire dal settore medico al quale viene applicata:

    • telepatologia: branca della telemedicina che prevede il trasferimento di immagini digitali macroscopiche e microscopiche a scopo diagnostico o educativo mediante la tecnologia informatica;
    • teleradiologia
    • telecardiologia: trasmissione e refertazione a distanza di un elettrocardiogramma;
    • teledermatologia
    • teleneurologia
    • teleriabilitazione: erogazione di servizi riabilitativi attraverso le reti di telecomunicazione ed internet;
    • teleconsulto: visite tra medico curante e paziente mediante sistemi di video-conferenza.

    L’health tech non sostituisce la medicina tradizionale, ma la affianca e la integra con nuovi canali di comunicazione e tecnologie innovative, con l’obiettivo di migliorare l’assistenza sanitaria e aiutare i cittadini ad accedere ed ottenere le migliori cure possibili. La telemedicina può essere considerata una delle componenti chiave per il miglioramento della salute dei cittadini.

    Come funziona:

    L’health tech prevede l’utilizzo delle telecomunicazioni e delle tecnologie virtuali per fornire assistenza sanitaria al di fuori delle strutture sanitarie tradizionali. La telehealth, che richiede solo l’accesso alle telecomunicazioni, è il componente più semplice dell’eHealth, che utilizza una più ampia gamma di tecnologie di informazione e di comunicazione (ICTs).

    Gli esempi di health tech comprendono l’assistenza sanitaria virtuale a casa, dove pazienti come i malati cronici o gli anziani possono ricevere sostegno in determinate procedure, rimanendo a casa. La telehealth ha inoltre agevolato la comunicazione tra operatori sanitari in ambienti remoti e professionisti per ottenere indicazioni nelle diagnosi, cure e nel trasferimento di pazienti. Talvolta anche la formazione può essere conseguita tramite programmi di health tech o con tecnologie ad esso associate come eHealth, che utilizzano il computer e internet.

    I sistemi di health tech adeguatamente progettati possono migliorare l’accesso e i risultati dell’assistenza sanitaria, in particolare per il trattamento di malattie croniche e per i gruppi vulnerabili. Non solo riducono la richiesta di assistenza in strutture già affollate, ma favoriscono un risparmio delle spese e rendono il sistema sanitario più flessibile.

    Elimina le barriere geografiche

    Ottenere la migliore diagnosi e cura è un diritto di tutte le persone indipendentemente da dove vivono. L’health tech viene in soccorso soprattutto alla popolazione che vive in aree remote, come per esempio in alta montagna, sulle isole o in aree con scarsa copertura ospedaliera, ai connazionali che vivono all’estero o che si trovano all’estero per viaggio, alle persone che lavorano sulle navi o sulle piattaforme petrolifere, e a tutte le persone che per motivi fisici, familiari o lavorativi non possono spostarsi dalla propria città di residenza.

    Indipendentemente dalle distanze l’health tech  può essere un ottimo strumento per accelerare il processo di diagnosi e cura, ridurre lo stress e il disagio, là dove è possibile, senza doversi recare nelle strutture sanitarie.

    L’health tech  accorcia le distanze e porta virtualmente la prestazione sanitaria a casa propria e consente ai pazienti di poter chiedere un parere specialistico anche ai medici che operano in altre regioni o nazioni, senza dover affrontare alcun viaggio.

    L’health tech è dinamica, veloce, accessibile anche in zone dislocate, riduce i tempi di attesa, consente il confronto multidisciplinare, evita gli spostamenti, è usufruibile comodamente da casa, fa risparmiare tempo, evita le lunghe attese nelle sale di aspetto, garantisce equità di accesso, il medico può usufruirne ovunque si trovi e in qualsiasi momento, lo spazio e il tempo non sono più un limite. Facilita ed agevola anche l’interazione di diversi specialisti su un unico caso, indipendentemente dalla struttura o paese in cui operano.

    Share Post

    Quanto è importante il Design e UX per una mobile app

    L’esperienza visiva e pratica di navigazione è un fattore che ha molta presa sulle persone e che incide direttamente sulle possibilità di conversione. Per questo i siti dovrebbero curare sia la user experience che la user interface, per assicurare agli utenti un’esperienza di navigazione gradevole e intuitiva.

    Cos’è l’UX design

    L’UX Design (User Experience Design) comprende quei processi rivolti ad aumentare la soddisfazione degli utenti migliorando la facilità di navigazione e rendendo più intuitiva la consultazione delle pagine web.

    L’UX Design, dunque, “detta le regole” per la corretta implementazione delle funzioni e degli elementi che un sito o un’app dovrebbero avere per incontrare il gradimento del pubblico.

    L’UX Design è un aspetto molto importante, perché la prima impressione che l’accesso a un sito o a un’app suscita nello spettatore, incide sulle probabilità di portare a compimento le conversioni.

    La User Experience è fondamentale, per aiutare gli utilizzatori a trovare risposta nel più breve tempo possibile alle proprie esigenze, come nel trovare rapidamente i modelli dei prodotti, risolvere i problemi nel caricamento degli ordini, richiedere agevolmente informazioni ecc.

    Lo studio della User Experience contempla tutte le modifiche, a livello di grafica e di programmazione, per rendere un prodotto web piacevole e invitante per gli utilizzatori.

    Essa comprende varie discipline tra cui:

    • psicologia: i fattori psicologici che conducono ad apprezzare o a rifiutare un elemento
    • interaction design: intuitività nel modo con cui le persone interagiscono col prodotto/servizio

    La user experience è fondamentale nei processi di acquisto, per renderli più intuitivi e immediati. Grazie agli studi volti a migliorare l’usabilità, le attività vengono ottimizzate per diventare più semplici e rapide da completare.

    Cos’è l’UI design

    L’UI design (User Interface Design) è la “costola visual” dell’UX design e comprende il modo con cui il prodotto web si presenta, in primis l’interfaccia dal punto di vista visivo.

    L’UI design studia l’interazione tra uomo e dispositivo e ha lo scopo di rendere più invitante la navigazione, in accordo con lo stile e la comunicazione del brand.

    La UI comprende gli elementi che fungono da interfaccia tra l’uomo e il contenuto e ispira alla loro realizzazione in un’ottica coerente dal punto di vista dell’utente.

    Lo UI design spinge a prendere le scelte migliori a livello di linguaggio e di stile e a renderle coerenti all’identità del brand. Questa disciplina ci guida,  all’adozione di font e colori piacevoli ed efficaci per gli utenti, al collocare gli elementi nelle posizioni più facilmente individuabili e al rendere il reperimento delle informazioni rapido e intuitivo.

    Ecco i punti fondamentali:

    1 Architettura Informazioni: L’Architettura delle Informazioni si assicura che il core business dell’app sia effettivamente raggiunto: l’app può essere molto bella e molto responsiva, ma se non si presta allo scopo prefisso dall’azienda, non serve a niente.

    Interaction Design: La Progettazione delle Interazioni si occupa di curare come l’utente andrà ad utilizzare l’app, e di come guidarlo nell’utilizzo della stessa. È importante sottolineare che per “interazioni” non ci si riferisce solo a quelle che partono attivamente e passivamente dall’utente.

    3 L’Usabilità è quella caratteristica dell’app di essere user friendly. In generale, un’app è user friendly quando l’utente è in grado di capire in autonomia come utilizzare l’app , in ergonomia , con efficienza , e in modo memorabile. L’app deve risultare facile da navigare, le informazioni facili da interpretare, e in caso di errori questi devono essere intellegibili.

    4 Wireframing: Con il wireframing si testano quindi tutte le feature dell’app e in generale anche il look & feel, eccetto eventuali dettagli, rifiniture e contenuti grafico-contenustici. Laddove non siano presenti gli elementi contenutistici grafici, si usano per l’appunto i wireframe.

    5 Visual Design: Curare il Visual Design è come mettere la ciliegina sulla torta: in questa fase si finalizzano e si rifiniscono le animazioni e i feedback , per influenzare il comportamento dell’utente.

    6 Fideizzare i clienti: Le app più popolari hanno,  un numero di utenti molto alto. Applicazioni come Instagram, Facebook o Candy Crush, uno dei giochini più popolari per smartphone, hanno una UX eccezionale che ha attirato milioni di persone. È la soddisfazione per l’esperienza utente a renderli fedeli all’app, facendo sì che non la disinstallino nel giro di qualche giorno ma, al contrario, le dedichino un posticino costante sul loro telefonino.

    Software per UX/UI Design

    I software per UI/UX Design sono molti, oggi ne prenderemo in considerazione 3: 

    • Uno dei software più utilizzati per l’UI/UX Design è Sketch: con la sua interfaccia intuitiva si può creare e collaborare per far diventare reali le vostre idee, è un mix tra Photoshop ed Illustrator. L’unica pecca che potrebbe avere è che è solo per Mac
    • Un’altro software molto usato è Figma: A differenza del precedente è da Windows, anche questo ha un’interfaccia molto intuitiva e veloce da utilizzare. Questo software ha sia opzioni a pagamento che free.
    • L’ultimo software di cui voglio parlare oggi è probabilmente anche il più famoso, parlo di Adobe Illustrator: Uno dei migliori strumenti per creare loghi, grafiche, applicazioni, siti web etc…È disponibile sia su Mac che su Windows

    In Breve:

    • Usa elementi convenzionali, quindi no a font troppo complessi o ad icone che su altre app hanno un altro significato;
    • Mantieni una certa uniformità nell’interfaccia: grafica, cromatica, di spazi;
    • Non ostacolare l’efficienza dell’app con funzioni che non servono davvero e che rischiano di confondere l’utente o di spostarlo dal percorso di navigazione ideale;
    • Rendi il tuo applicativo più interattivo possibile;
    • Non complicare ciò che può essere semplificato.

    Share Post

    I più comuni rischi di Cyber Security che rappresentano un grande problema per le aziende nel 2020

    I rischi informatici aumentano con l’aumentare e la diffusione di sistemi legacy e data center, servizi di cloud pubblico e applicazioni SaaS.

    Nel 2020, i principali vettori di rischio cyber continueranno a essere le email e le applicazioni aperte a Internet. Secondo gli esperti, i virus informatici veicolati dall’email evolvono rapidamente e gli hacker trovano ogni giorno nuovi metodi per eludere le tradizionali soluzioni di sicurezza. Ogni impresa dovrà quindi munirsi dei sistemi di protezione più avanzati in linea con l’evolversi dei rischi informatici e degli attacchi cyber, ed essere anche seguita da professionisti esterni in grado di offrire una consulenza per l’implementazione delle misure di tutela dei sistemi informativi.

    Cloud, applicazioni SaaS, attacchi brute force

    La minaccia più grave che ci si aspetta è in parte nuova. Sempre più aziende adottano piattaforme senza server per ridurre i costi e integrare le applicazioni cloud, che utilizzano spazio di archiviazione accessibile ovunque. Si tratta delle ormai diffuse applicazioni SaaS.

    Passare al “serverless” non risolve i problemi di sicurezza. La sicurezza delle applicazioni web è spesso trascurata perché la maggior parte delle organizzazioni non possiede le competenze e le risorse necessarie per gestire queste soluzioni. Molte imprese presumono che la necessaria protezione sia fornita dal loro servizio di hosting, che però difficilmente offre una copertura adeguata.

    Per queste criticità che non vengono colmate, i software di collaborazione e produzione basati su cloud sono tra gli obiettivi preferiti dagli hacker. Date le frequenti campagne di phishing, l’attenzione resta rivolta alla compromissione di account utilizzabili per gli attacchi futuri. Anche i tradizionali attacchi brute force su servizi cloud, che guadagnano l’accesso a un account autorizzato per craccare dati criptati e rubare informazioni per scopi di frode, continueranno nel 2020.

    Phishing via Email

    Intercettazione delle conversazioni, contraffazione della voce delle persone e attacchi altamente mirati renderanno ancora più convincenti gli attacchi BEC. Lo spear phishing trarrà in inganno facilmente, visto che punta ad una sola persona, più del cosiddetto spray phishing, attacco di massa che cerca di coinvolgere quante più vittime possibile ed è meno personale e credibile.

    Un esempio di pishing sono le false email da Netflix, in cui dicono che l’account è stato bloccato a causa di un mancato pagamento.

    Processi di infezione complessi

    Nel 2019 gli attacchi via mail è stata fatta trmite URL pericolosi per distribuire malware. Gli utenti vengono messi in guardia dall’aprire documenti ricevuti da mittenti sconosciuti, ma il crescente utilizzo di applicazioni e storage cloud li ha abituati a fare click su vari link per vedere, condividere una moltitudine di contenuti e a interagire. I criminali cyber sfrutteranno queste evoluzioni perché gli URL possono mascherare processi di infezione ancora più difficili da rilevare.

    Le email possono sembrare dei semplici messaggi da colleghi che vogliono condividere dei documenti, ma possono nascondere un grave pericolo. Un esempio si può leggere in questo articolo, in cui una collega di nome Pam invia una mail con un file condiviso su Dropbox, il sito sembra legittimo, ma quando si inseriscono i propri dati esce un messaggio di errore, e quando Pam nega di aver mai mandato quella mail si capisce che l’hacker ha già tutti i dati che gli servono. 

    Ransomware

    I ransoware mirano soprattutto a operazioni dal riscatto elevato per sbloccare server ed endpoint, ma hanno un ruolo secondario rispetto alle infezioni che utilizzano Trojan e RAT rendendo fondamentale la prevenzione e la difesa. Le imprese che saranno colpite dal ransomware saranno già state compromesse da una serie di malware che creano vulnerabilità future ed espongono al rischio di perdita dei dati e delle proprietà intellettuali.

    Privacy e compliance al GDPR

    Nel 2020, i responsabili della sicurezza informatica in azienda, dovranno essere pienamente consapevoli della proliferazione di leggi sulla privacy e sulla compliance che vengono implementate in tutto il mondo. Il GDPR è solo l’inizio: occorre essere pronti ad adattarsi all’introduzione di regolamenti analoghi, con implicazioni enormi e sempre più complesse soprattutto per le aziende che operano su scala internazionale. Un numero sempre maggiore di imprese si appoggiano a infrastrutture e soluzioni di cloud pubblico, è anche vero che l’errore umano continuerà a essere la prima causa di violazioni, soprattutto per configurazioni errate o vulnerabilità irrisolte.

    La formazione deve essere un asset centrale

    I sistemi automatizzati possono proteggere le caselle di posta da molte minacce, ma sono gli utenti la linea di difesa finale, soprattutto per quanto riguarda il phishing vocale e via SMS. Di conseguenza, la formazione è una componente essenziale della sicurezza. Spesso anche nei casi in cui venga organizzata, le organizzazioni sono molto selettive sugli utenti da coinvolgere, a causa delle limitate risorse destinate alla formazione dei dipendenti.

    Un rischio cyber esteso

    Riassumendo le più grandi minacce alla cyber security arriveranno dalla continua proliferazione della rete, dal passaggio ai sistemi in cloud e dall’estensione alle infrastrutture critiche e ai sistemi di controllo industriale.

    In un mondo interconnesso, un attacco a danno di un’azienda si estende presto a tutta la filiera. Le vulnerabilità della supply chain sono state le protagoniste degli attacchi ai principali retailer già negli anni 2013 e 2014. Gli aggressori cibernetici hanno approfittato della supply chain per ogni tipologia di attività, dal furto di credenziali di carte di credito al business email compromise e le tecniche di attacco diventeranno ancora più sofisticate nel corso dell’anno. Le aziende devono selezionare più attentamente i partner ai quali affidarsi, anche in base al loro sistema di protezione delle email, per evitare rischi di compromissione e sfruttamento delle vulnerabilità. Il diffondersi della rete 5G consentirà agli aggressori di sottrarre dati da dispositivi compromessi. Gestire il problema in maniera non adeguata rischia di avere impatti eccessivi sulla continuità operativa e sui profitti aziendali.

    Share Post

    Perché Pyhton e’ diventata una lingua così popolare

    Python a cosa serve

    Python è un linguaggio per il machine learning. La maggior parte dei corsi machine learning sono stati scritti usando il linguaggio Python e l’educazione alla codifica nel suo insieme ha adottato Python come la lingua da imparare, con ampio uso nei corsi dedicati a small computer come Raspberry Pi (AMD) o su altri core.

    Instagram è il sito più grande che esegue Django, che è un framework web di Python: un back-end.

    Django è un framework robusto ed elegante, e quindi il problema non sta nelle sue carenze intese come mancanze di feature.

    Pygame è la risorsa principale per l’apprendimento di Python e delle meccaniche di gioco. Alcuni buoni giochi sono stati scritti in Python.

    Grazie alla sua natura altamente leggibile e alla sintassi intuitiva, molti trovano più facile imparare Python.

    Python per l’intelligenza artificiale

    Python è un linguaggio-collante per applicazioni che richiamano moduli di machine learning adatti a realizzare sistemi cosiddetti di AI. Anzi, per il machine learning e deep learning, Python offre, pur essendo un linguaggio di programmazione interpretato (lento), alcuni vantaggi:

    • Python può accedere a molte librerie esterne (moduli) con funzioni utili per il calcolo scientifico. Si evita così di doverle sviluppare ex novo. Le librerie esterne del Python sono spesso sviluppate con altri linguaggi compilati di alto livello come il linguaggio C e Fortran. Pertanto, sono molto veloci nell’esecuzione.
    • Il linguaggio Python è simile al linguaggio naturale (lingua inglese).
    • È molto più facile da usare rispetto agli altri linguaggi di programmazione come C o Java

    Python e le librerie principali per il machine learning

    Python è un linguaggio di programmazione ad alto livello, orientato agli oggetti, adatta a sviluppare applicazioni distribuite, scripting, computazione numerica e system testing. Fu ideato da Guido van Rossum all’inizio degli anni novanta. Il nome fu scelto per via della passione di van Rossum per i Monty Python e per la loro serie televisiva Monty Python’s Flying Circus.

    Le caratteristiche più immediatamente riconoscibili di Python sono le variabili non tipizzate e l’uso dell’indentazione per la definizione delle specifiche. Altre caratteristiche distintive sono l’overloading di operatori e funzioni tramite delegation, la presenza di un ricco assortimento di tipi e funzioni di base e librerie standard, sintassi avanzate quali slicing e list comprehension.

    Sebbene Python venga in genere considerato un linguaggio interpretato, in realtà il codice sorgente non viene convertito direttamente in linguaggio macchina. Infatti passa prima da una fase di pre-compilazione in bytecode, che viene quasi sempre riutilizzato dopo la prima esecuzione del programma, evitando così di reinterpretare ogni volta il sorgente e incrementando le prestazioni. Inoltre è possibile distribuire programmi Python direttamente in bytecode, saltando totalmente la fase di interpretazione da parte dell’utilizzatore finale e ottenendo programmi Python a sorgente chiuso.

    Questo è possibile anche grazie all’ampio set di librerie, ossia insiemi di routine e funzioni scritte che svolgono un determinato compito, che possiede e può richiamare a seconda delle necessità. Le librerie vengono spesso confuse con i termini framework e packages.

    Librerie

    Python ha una vasta libreria standard, il che lo rende adatto a molti impieghi. Oltre ai moduli della libreria standard se ne possono aggiungere altri scritti in C oppure Python per soddisfare le proprie esigenze particolari. Tra i moduli già disponibili ve ne sono per scrivere applicazioni web: sono supportati Mime, Http e tutti gli altri standard Internet. Sono anche disponibili moduli per creare applicazioni con interfaccia grafica, per connettersi a database relazionali, per usare le espressioni regolari. La libreria standard è uno dei punti forti di Python. Infatti essa è compatibile con tutte le piattaforme, a eccezione di poche funzioni, segnalate chiaramente nella documentazione come specifiche di una piattaforma particolare. La libreria può essere vista come un insieme di moduli dove ogni modulo contiene delle istruzioni e definizioni semplici. L’accorpamento di vari moduli, quindi di codice istruzioni, costituisce una libreria. Spesso i moduli sono già stati scritti da altri sviluppatori, e non c’è bisogno di ripartire da capo ogni volta. Il loro scopo è quello di semplificare le attività, aiutando gli sviluppatori a scrivere solo poche righe anziché una grande quantità di comandi. Il codice delle librerie richiama classi e metodi che normalmente definiscono operazioni specifiche in un’area del dominio. Ad esempio, ci sono alcune librerie di matematica che possono far sì che lo sviluppatore chiami semplicemente la funzione senza ripetere l’implementazione di come funziona un algoritmo.

    Packages

    Per capire cosa sono i packages si può immaginare la struttura delle directory dove i file vengono memorizzati sul disco del computer. Di solito non archiviamo tutti i nostri file nella stessa posizione. Utilizziamo una gerarchia di directory ben organizzata per un accesso più semplice. File simili sono tenuti nella stessa directory, ad esempio, potremmo conservare tutti i brani musicali nella directory “musica”. Analogamente a questo, Python ha packages per directory e moduli per i file. Dato che una directory può contenere sottodirectory e file, similmente, un pacchetto Python può avere sotto-pacchetti e moduli. Per fare in modo che Python consideri come un package una directory, questa deve contenere un file chiamato __init__.py . Questo file può essere lasciato vuoto ma generalmente il codice di inizializzazione per quel pacchetto viene inserito in questo file.

    Framework

    A differenza delle librerie, per framework si intende ”un’astrazione, in cui il software che fornisce funzionalità generiche può essere modificato selettivamente da un ulteriore codice scritto dall’utente, fornendo così un software specifico per l’applicazione“. Si può considerare il framework come uno strumento software che fornisce un modo per creare ed eseguire applicazioni web e per farlo si avvale spesso di librerie e packages. Utilizzando un framework web non è necessario scrivere codice per conto proprio e perdere tempo cercando possibili errori di calcolo e bug. All’inizio dello sviluppo web, tutte le applicazioni erano codificate a mano e solo lo sviluppatore di una determinata app poteva cambiarlo o distribuirlo. I framework web hanno introdotto un modo semplice per uscire da questa trappola. La loro varietà ora funziona bene sia per pagine web statiche che dinamiche. Possiamo avere due tipologie di Framework web:

    • Server-side: definito anche come framework back end, sono applicazioni software che facilitano la scrittura, la manutenzione e la scalabilità delle applicazioni web. Forniscono strumenti e librerie che semplificano le comuni attività di sviluppo Web, inclusi gli Url di routing ai gestori appropriati, l’interazione con i database, le sessioni di supporto e l’autorizzazione dell’utente, l’output di formattazione (ad esempio Html, Json, Xml) e il miglioramento della sicurezza dagli attacchi web.
    • Client-side: definito anche framework frontend, consiste in un pacchetto costituito da una struttura di file e cartelle di codice standard (Html, Css, documenti JS ecc.). Si occupa essenzialmente delle parti rivolte verso l’esterno di un sito o di un’applicazione web. In breve, ciò che un utente vede quando apre l’app.

    Esiste una terza situazione (definita Full-stack Framework) che è la combinazione di entrambe le estremità frontend e backend. Uno sviluppatore full stack è un tuttofare. Sono responsabili per tutti i livelli di sviluppo, da come il server è impostato per il CSS relativo alla progettazione. C’è da dire che è complesso gestire entrambe le parti. Se inoltre si vuole conoscere la lista dei web frameworks scritti in linguaggio Phyton si può vedere il seguente Link (uno dei più popolari è Django).

    Share Post

    Le app di più successo nella circular economy e nel clean tech

    Economia circolare, che cos’è

    La circular economy è un termine generico per definire un’economia pensata per potersi rigenerare da sola. In un’economia circolare i flussi di materiali sono di due tipi: quelli biologici, in grado di essere reintegrati nella biosfera, e quelli tecnici, destinati ad essere rivalorizzati senza entrare nella biosfera”. In pratica è un’economia a rifiuti zero, dove qualsiasi prodotto viene consumato e smaltito senza lasciar traccia.

    Le energie rinnovabili hanno molta importanza come la modularità e la versatilità degli oggetti, che possono e devono essere utilizzati in vari contesti per poter durare il più a lungo possibile.

    L’economia circolare presuppone un modo di pensare sistemico, che non si esaurisce nella progettazione di prodotti destinati a un unico scopo. È un’economia che non solo protegge l’ambiente e permette di risparmiare sui costi di produzione e di gestione, ma produce anche degli utili.

    La circular economy prevede lo sviluppo di una vera e propria economia da contrapporre a quella lineare che va dalla produzione di un prodotto al suo diventare rifiuto.

    Cradle to cradle. Questa teoria elimina il concetto di rifiuto, perché “rifiuto è nutrimento”; si basa esclusivamente sull’energia rinnovabile e rispetta l’uomo e l’ambiente, andando a preservare la salute degli ecosistemi e l’impatto sui luoghi.

    • Performance economy. Walter Stahel aggiunse alla teoria C2C l’approccio a “circuito chiuso” del processo produttivo che comprende quattro obiettivi principali: estendere il ciclo di vita dei prodotti, realizzare beni di valore duraturi, fare attività di rinnovamento dei prodotti ed evitare gli sprechi.

    • Biomimicry (imitazione della vita), ossia lo studio delle migliori idee della natura e l’imitazione di disegni e processi per risolvere i problemi degli esseri umani. Tre i princìpi più importanti: studiare ed emulare la natura; usare uno standard ecologico per giudicare la sostenibilità delle nostre innovazioni; valutare la natura non per capire cosa ricavarne ma cosa possiamo apprendere da essa.

    • Industrial ecology. L’industrial ecology, considerata anche la scienza della sostenibilità, è lo studio della materia e dei flussi di energia attraverso i sistemi industriali. 

    • Capitalismo naturale, che si riferisce a tutta la gamma degli asset naturali, compresi la terra, l’aria, l’acqua e tutte le cose viventi. Si basa su quattro pilastri: incrementare radicalmente la produttività delle risorse naturali; dotarsi di modelli e materiali di produzione ispirati alla biologia; un modello di business volto a garantire una sequenza di servizi; reinvestire sul capitale naturale.

    • Blue economy. Ovvero “usare le risorse disponibili in un sistema a cascata, dove il rifiuto di un prodotto diventa l’input per produrre una nuova cascata”.

    • Regenerative design, che è diventato la cornice della circular economy.

    Cleantech – 

    Il mondo, senza confini definiti, della clean technology (cleantech) comprende tutte le tecnologie che servono a ‘farlo pulito’ ossia a limitare (o addirittura ove possibile a eliminare) l’impatto ambientale di un determinato processo produttivo.

    A oggi l’uso di tecnologie pulite include pratiche come il riciclo di rifiuti, l’uso di fonti di energia rinnovabili (eolica, solare ecc), la razionalizzazione dei trasporti e delle fonti di illuminazione, la riduzione dei volumi di packaging e, in senso più ampio, tutte le scelte ambientali che mirano a ridurre drasticamente l’uso delle risorse naturali, e tagliare o eliminare le emissioni e rifiuti.

    Economia Circolare e sostenibilità in pochi anni sono diventati protagonisti assoluti della industria Tech sia in ambito B2C che B2B. In basso alcuni esempi dei progetti più interessanti a riguardo:

    – Agricolus: piattaforma italiana che opera nel settore del precision farming, offrendo diverse applicazioni in cloud ad agricoltori e agronomi, grazie alle quali questi professionisti potranno seguire il processo di produzione a 360° e prendere decisioni data-driven, riducendo i costi, migliorando e garantendo una maggiore qualità del prodotto agricolo, in un’ottica di sostenibilità.

    Junker: applicazione Mobile per smartphone che aiuta i cittadini a differenziare in maniera corretta e rapida i rifiuti domestici, contribuendo a ridurre la frazione di raccolta indifferenziata. È stata inserita nel libro bianco delle buone pratiche di economia circolare del Parlamento europeo.

    – FruitsApp: rmarketplace B2B mondiale per la compravendita di frutta e verdura. La piattaforma offre diversi strumenti per aiutare le parti a concludere affari: chat, sistemi di contrattazione, profilazione. E’ stata accelerata dal Startupbootcamp Foodtech Accelerator

    Timealy, questa applicazione permette che l’invenduto giornaliero di cibo fresco sia offerto a un prezzo irrisorio a residenti e pendolari. Al momento la piattaforma e’ in fase di lancio su Londra.

    La tecnologia ha un forte potenziale anche per lo sviluppo dell’economia circolare tra le aziende nel B2B. Ne è un esempio il robot Liam, che con i suoi 29 bracci riesce a smontare un iPhone scartato in 11 secondi, recuperando buona parte dei materiali riutilizzabili di cui è composto, evitando così enormi sprechi di valore. Ma anche la piattaforma Loop Rocks creata dall’azienda di costruzioni NCC, attraverso la quale sono messi a disposizione materiali edili secondari a basso costo tra cantieri, riducendo così costi di smaltimento, sprechi e costi per le aziende acquirenti.

    Share Post

    Capire le automazioni CRM

    team work

    CRM Automation 

    Customer Relation Management e Software, queste due parole apparentemente indipendenti con l’alba di Internet e l’ascesa del business online si intrecciano così incredibilmente che ogni volta che menzioniamo CRM, include quasi sempre Software. 

    Origini del CRM 

    Individuare quando è stato inventato esattamente il CRM è una sfida. Se parliamo dell’acronimo stesso, possiamo andare verso gli anni ’90. E più specificamente all’ex dipendente Oracle, Tom Siebel. Siebel, che non riuscì a convincere i suoi superiori a vendere il loro SFA (software di automazione Salesforce) come prodotto autonomo lasciò Oracle e fondò la sua società, Siebel Systems. 

    Siebel Systems divenne la principale soluzione SFA sul mercato e il suo sistema di gestione dei contatti assomigliava molto a quello delle moderne soluzioni CRM. Essendo un nuovo prodotto, non aveva ancora un nome autonomo, essendo indicato come CIS (Customer Information System), Enterprise Customer Management (ECM) e CRM. Alla fine CRM ha vinto. 

    La fine degli anni ’90 segna anche l’ascesa del primo primitivo SaaS (Salesforce), che è stato in gran parte lasciato ai propri dispositivi dagli altri fornitori. Quando la bolla “dot-com” ha colpito, l’industria del CRM ha subito un duro colpo prima di tornare in vigore nella seconda metà degli anni ’00. Microsoft ha introdotto Dynamics CRM e Oracle (ex datore di lavoro di Siebel) ha acquisito Siebel Systems. 

    Alla fine, nel 2007 nacque il moderno CRM quando Salesforce introdusse il suo Force.com basato su cloud, dimostrando che le soluzioni cloud potevano essere adattate alle varie esigenze. 

    Nell’articolo di oggi 

    Il valore di un adeguato sistema CRM è diventato quasi leggendario se stai cercando tassi di fidelizzazione dei clienti più elevati, un migliore tracciamento dei clienti e un’organizzazione dei dati che desideri software CRM. Con l’ascesa dell’AI e la prevalenza dell’automazione del marketing, c’è una nuova tendenza in aumento, l’automazione CRM. 

    Cosa scoprirai leggendo questo articolo:

    • Cos’è l’automazione CRM;
    • Il ruolo di Marketing Automation e;
    • Pro e contro dell’automazione CRM;  

    A seconda della natura della tua attività, potresti semplicemente iniziare con la tua ricerca di software CRM o potresti essere disposto a fare il passo successivo, lasciaci essere la tua guida. 

    Automazione CRM: cosa, come e perché? 

    L’automazione si riferisce in questo caso alla capacità di un determinato software CRM di essere in grado di eseguire attività manuali ripetitive senza il coinvolgimento continuo di un dipendente. Avere uno strumento CRM automatizzato consente alla tua azienda di risparmiare tempo nella gestione dei clienti e consente ai tuoi dipendenti di intrattenere relazioni più approfondite con i clienti potenziali ed esistenti. 

    Il software è spesso alimentato dall’intelligenza artificiale per garantire che possa automatizzare i suoi compiti. Nella maggior parte dei casi, richiede una configurazione precedente in modo da poter eseguire i suoi compiti. Ma scoprirai che molte soluzioni CRM automatizzano già molte attività per te. Ad esempio, se collegati al tuo account e-mail, seguiranno automaticamente le interazioni tra la tua forza vendita e i tuoi clienti, oltre ad aggiungere clienti direttamente nel tuo database. Scopri come Artecha può aiutarti con la tua automazione CRM. 

    L’automazione del tuo CRM ha l’ulteriore vantaggio di rimuovere semplicemente la seccatura di impegnarsi in continue attività banali per il tuo team. Tuttavia, ecco altri sei motivi per cui dovresti impegnarti nell’automazione CRM.  

    Il caso di CRM e automazione del marketing

    Un grande esempio di un’azienda che automatizza sia il suo CRM che il marketing è Sephora. Sephora è rinomata per i suoi prodotti di bellezza e gode di un’ottima reputazione per quanto riguarda il servizio clienti. Un acquirente Sephora spende un importo medio di $ 33,17 per i prodotti per la cura della pelle, questi sono per lo più clienti ricorrenti che fanno parte del programma di fidelizzazione di Sephora Beauty Insiders. Dal momento che sfoggia oltre 17 milioni di membri, deve fare affidamento sull’automazione per fornire ai propri clienti fedeli i loro premi. La ciliegina sulla torta qui è il fatto che l’80% delle vendite proviene dai membri del suo programma di fidelizzazione. 

    L’automazione in quanto tale viene utilizzata per il mantenimento di relazioni continue con il cliente tra l’azienda e il cliente. Doverlo fare manualmente, sarebbe un compito che richiede molto tempo e richiederebbe più dipendenti, automatizzando Sephora non solo riduce le spese del personale ma mantiene anche relazioni migliori. 

    Nella maggior parte dei casi, il software CRM è sviluppato in un framework Web, come Ruby-on-Rails. Altre opzioni includono Python / Django e Node.js. Quando si sviluppa una soluzione CRM è importante comprendere la natura del business per cui è stata progettata. In Artecha siamo in grado di creare una soluzione CRM su misura per le specifiche della tua attività. Pianifica una chiamata con noi per parlare della tua attività e di come CRM Automation potrebbe trarne vantaggio.

    I punti chiave qui sono: 

    • I clienti ricorrenti valgono di più
    • Automatizzare il tuo CRM e il marketing porterà benefici a lungo termine 
    • programmi di fidelizzazione sono ottimi per l’automazione 

    Il ruolo dell’automazione del marketing 

    Cominciamo affermando un punto cruciale. L’automazione del marketing è l’automazione NON CRM. I due coesistono ed entrambi svolgono un ruolo vitale nella tua attività, ma non sono gli stessi. Detto questo, immergiamoci nelle differenze. 

    L’automazione del marketing si concentra principalmente nella parte superiore e centrale dell’imbuto di marketing (o imbuto di vendita), mentre l’automazione CRM si concentra quasi esclusivamente sul fondo dell’imbuto. In questo caso, l’automazione del marketing, ovviamente, fa per il marketing ciò che l’automazione CRM fa per le vendite. Automatizza compiti banali e ripetitivi. Oggi, tuttavia, l’automazione del marketing non è solo il processo di automazione delle campagne e-mail, ma si integra anche con i social media per aiutarti a pianificare i tuoi post e molto altro. Questo è, tuttavia, il suo aspetto chiave, le campagne. 

    Il marketing consiste ancora nella generazione di lead, a tale scopo è possibile eseguire varie campagne per trovare e acquisire tali lead, ma a un certo punto, sarà necessario spostarli ulteriormente lungo la canalizzazione – ed è qui che CRM Automation entra in vigore . 

    CRM Automation aiuta a prendere le informazioni dalle  campagne di  marketing automatizzate e inizia a qualificare i propri lead fornendo una valutazione. Più informazioni vengono inserite nel sistema CRM, più sarà in grado di valutare il valore di un potenziale lead ottenuto attraverso il processo di marketing automatizzato. 

    Ecco perché il miglior software di automazione CRM si integra con il miglior software di automazione del marketing.

    Vantaggi dell’automazione CRM 

    La quantità di valore che puoi ottenere dall’implementazione dell’automazione CRM nella tua azienda dipende da molti fattori, ma può essere sintetizzata in cinque punti coerenti.

    1. Risparmia tempo prezioso automatizzando attività ripetitive e dispendiose in termini di tempo
    2. Aiuta a qualificare e allargarsi a prospettive migliori 
    3. Migliora i tassi di conversione delle vendite 
    4. Incide positivamente sul tasso di soddisfazione generale dei clienti
    5. Aumenta i profitti dell’azienda 

    Come puoi vedere, i punti seguono un ordine cronologico e questo ha perfettamente senso . Poiché i vostri rappresentanti di vendita possono automatizzare le attività, possono concentrarsi sull’ottenimento di maggiori informazioni da potenziali clienti con il tempo che ottengono attraverso l’automazione. Ciò, a sua volta, consente al software automatizzato CRM di ottenere maggiori informazioni su tali prospettive, in grado di identificare quali prospettive hanno maggiori probabilità di conversione. Ciò aiuta a migliorare i tassi di conversione, aiutando anche il servizio clienti in una fase successiva. Tutto sommato aumenta i profitti della tua azienda! 

    Automazione B2B e CRM 

    Inoltre, l’automazione CRM non è solo per l’utilizzo in un ambiente B2C, quando si sviluppa il tuo CRM con Python, ad esempio, è applicabile anche nella sfera B2B. L’automazione della gestione dei clienti è valida in tutto il mondo degli affari. Ad esempio, Dell ha utilizzato l’automazione CRM per eseguire test per le proprie campagne e-mail e è riuscito ad aumentare il tasso di conversione in due modi. 

    Conclusione 

    “Sì”, hai bisogno dell’automazione CRM nella tua azienda. Almeno, questa è la risposta breve. Quando decidi se scegliere l’automazione CRM, considera la situazione all’interno della tua attività e prendi una decisione calcolata.

    Share Post

    L’intelligenza artificiale per ottimizzare la relazione con i clienti

    working on computer

    L’Intelligenza Artificiale non è più un qualcosa di remoto e fantascientifico, è entrato a far parte delle nostre vite e sarà sempre più uno strumento quotidiano sia in azienda che nella vita personale. 

    L’intelligenza artificiale in tempo reale è un modo di trasformare completamente l’esperienza cliente. Le interazioni altamente personalizzate con i clienti in teoria sono l’approccio ottimale. L’IA consente una migliore comprensione dei clienti in diversi contesti e canali, può infatti rilevare determinati segnali e comprendere l’intento unico di ogni cliente prima che agisca. Basata su dati in tempo reale, l’IA è in grado di fornire offerte personalizzate in modo automatico o guidare gli operatori del servizio clienti a proporre l’offerta più adatta al momento più opportuno. In settori altamente regolamentati, l’intelligenza artificiale può rappresentare un valido strumento per la trasparenza atto a dimostrare perché stai presentando una determinata offerta a specifici clienti.

    Affinché l’intelligenza artificiale porti risultati significativi, è utile chiarire il significato di customer experience come sequenza di interazioni brand-cliente attraverso diversi touch point lungo il percorso, durante tutto il suo ciclo di vita. Si tratta di gestire tutto al meglio in quanto l’impatto di queste interazioni sono determinanti per garantire una migliore esperienza, capace di generare clienti più fedeli e pronti a promuovere il brand all’esterno. 

    Il marketing può allineare i contenuti con le indicazioni che provengono dall’AI e innovare la strategia, grazie ai modelli basati sia sui dati aziendali e sia su informazioni esterne. Grazie alla conoscenza dei comportamenti dei clienti, è anche possibile realizzare analisi predittive e di target più efficaci per veicolare contenuti online più vicini agli interessi del cliente e campagne e-mail, messaggi su smartphone e advertising.

    Un dato che potrà stupire, i clienti preferiscono risolvere da soli i propri problemi. Nel 2012, una ricerca Forrester ha riportato che in quell’anno il 67% delle persone usava le guide FAQ online, nel 2015 Forrester ha ripetuto la ricerca e in soli 3 anni, la percentuale è aumentata a ben l’81%, ed è in continua crescita. Nell’era digitale, nessuno vuole rimanere ad aspettare una risposta attendendo al telefono e con le chatbot, voicebot ed assistenti virtuali è possibile evitare queste pessime esperienze legate all’attesa. 

    È possibile approdare sul sito internet del brand, aprire la chat e avere la risposta che si ricerca in automatico, lo stesso via chiamata con il voicebot. Non sono ancora perfetti, ma questi tool di supporto al cliente migliorano ogni giorno apprendendo dalle domande stratificate, dalle sfumature di stili di scrittura e dal tono di voce. 

    Contenuti e comunicazioni generiche non funzionano più, i consumatori oggi sono molto più selettivi di un tempo e cercano costantemente esperienze su misura per loro che rispondano perfettamente ai loro bisogni, alle loro preferenze e ai loro obiettivi. Una ricerca ha dimostrato che il 49% dei consumatori confessa di essere più propenso a comprare d’impulso se riceve un messaggio personalizzato dal brand. Le piattaforme con Intelligenza Artificiale non subiscono lo stress della vita quotidiana, possono essere programmate per essere sempre positive, anche quando si ha a che fare con un cliente molto esigente o nervoso. 

    Tenete bene a mente che l’82% dei consumatori sono disposti a lasciare su due piedi un brand se il servizio clienti non è soddisfacente, per questo gli investimenti sulle Intelligenze Artificiali sono indispensabili. Secondo una recente ricerca, il 52% dei consumatori ha ancora delle difficoltà a trovare il prodotto che cercano online, perciò il 68% sceglie la seconda scelta se la prima non fosse disponibile o non presente online. 

    La Customer Experience oggi deve abbracciare le nuove tecnologie e adottare strumenti di Intelligenza Artificiale significa rendere il processo del supporto ai clienti più semplice e snello. Questo garantisce di dare delle priorità e di rispondere efficacemente ai bisogni dei clienti. Allo stesso tempo gli acquirenti si sentono incoraggiati a connettersi con il tuo brand.

    Dall’analisi si ottengono insight che consentono di prevedere ciò che i clienti vorranno e si aspettano – e persino di prevenirli. Accenture ha riscontrato che l’89% dei clienti è frustrato perché costretto a ripetere i propri problemi a più agenti, quindi sapere in anticipo cosa desiderano i clienti è uno strumento potente. IA, analytics e automazione possono aiutare a offrire ai clienti questa esperienza, utilizzando l’engagement predittivo.

    Gli strumenti di engagement predittivo consentono di capire in anticipo cosa pensano i clienti, così da poter interagire con loro quando, dove e come vogliono – anche prima che siano loro a mettersi in contatto. Le analytics per esemoio possono far vedere che i clienti che hanno avuto uno specifico problema tendono ad avere anche un altro tipo di problema. 

    L’uso del coinvolgimento predittivo consente di fare domande e verificare il secondo problema nella stessa chiacchierata, riducendo le chiamate, migliorando l’efficacia del primo contatto e la soddisfazione generale del cliente.

    Il miglior servizio clienti è preventivo e si basa sul sapere cosa pensano i clienti. Analytics ed engagement predittivo riguardano la previsione del comportamento dei clienti, arrivando in anticipo quando è necessario e offrire supporto da parte dell’ agent ai clienti che navigano nel sito e migliorando l’esperienza complessiva identificando e interagendo con potenziali clienti e al momento e tramite i canali giusti. Circa il 67% dei clienti motiva il proprio abbandono con la scarsa customer experience, ma solo 1 cliente scontento su 26 si lamenta effettivamente: gli altri, semplicemente, se ne vanno. Pertanto, una buona esperienza del cliente è fondamentale per ridurre la perdita di clienti.

    Ecco perchè L’IA può aiutare moltissimo ad aumentare la soddisfazione del cliente e quindi anche il vostro fatturato.

    Share Post

    Il Machine Learning nuovo cervello della impresa

    software development

    Attualmente viviamo in un ‘era di dati, in cui una grande quantità viene raccolta e archiviata ogni giorno.

    Nel tempo in cui questo articolo è stato scritto:

    • Ci sono 4.156.513.325 utenti su Internet, per contarli ci vorrebbero più di 128 anni.

    • 1.755.606.975 siti Web su Internet.

    • 168.673.726.872 e-mail inviate solo oggi.

    • 4.723.747.823 ricerche Google solo oggi

    • 4.033.234 post di blog solo oggi.

    • 4.553.543.234 visualizzazioni di video su YouTube solo oggi.

    Questi sono tanti dati da gestire, anche per i computer. 

    Machine Learning in italiano definito apprendimento automatico è una branca dell’Intelligenza Artificiale (AI) che offre ai computer la possibilità di apprendere senza essere esplicitamente programmati 

    Nell’ambito dell’informatica, l’apprendimento automatico è una variante alla programmazione tradizionale nella quale si predispone in una macchina l’abilità di apprendere qualcosa dai dati in maniera autonoma, senza ricevere istruzioni esplicite a riguardo, in sostanza apprende dall’esperienza.

    ML è un campo di studio che sfrutta i principi dell’informatica, della automazione e della statistica per creare modelli statistici e per migliorare sempre di più la performance di un algoritmo nell’identificare pattern nei dati.


    Questi modelli sono generalmente usati per fare due cose: 

    1. Previsione: fare previsioni sul futuro in base ai dati sul passato 

    2. Inferenza: scopri schemi nei dati

    Differnza tra ML e AI: non esiste un accordo universale sulla distinzione tra ML e intelligenza artificiale (AI). L’intelligenza artificiale di solito si concentra sulla programmazione dei computer per prendere decisioni (sulla base di modelli ML e serie di regole logiche), mentre ML si concentra maggiormente sulla previsione del futuro.

    Sono campi altamente interconnessi e, per la maggior parte degli scopi non tecnici, sono gli stessi.

    L’algoritmo rudimentale con cui inizia ogni appassionato di Machine Learning è un algoritmo di regressione lineare.

    La regressione è un metodo per modellare un valore target basato su predittori indipendenti. Questo metodo viene utilizzato principalmente per la previsione e la ricerca della relazione di causa ed effetto tra le variabili. Le tecniche di regressione differiscono principalmente in base al numero di variabili indipendenti e al tipo di relazione tra le variabili indipendenti e dipendenti.

    Le nuove tecnologie hanno costretto le aziende a cambiare il modo in cui interagiscono con i loro clienti.

    L’apprendimento automatico viene anche utilizzato per avere dati molto dettagliati sui propri clienti, in modo da riuscire a soddisfare le loro esigenze nel modo migliore possibile.

    Uno dei modi per utilizzare il machine learning è quello di migliorare l’esperienza di acquisto online, personalizzandola il più possibile.

    I processi di vendita possono essere facilmente automatizzati attraverso chatbot che agiscono come se fossero esseri umani, guidando il cliente e dando consigli.

    Un esempio è Netflix, che consiglia serie tv e film basandosi su quello che è già stato visto, oppure l’utizzo di chatbots che interagiscono con il potenziale cliente come se fossero esseri umani.

    Le persone di diverse discipline stanno cercando di applicare l’IA per rendere i loro compiti molto più semplici. Ad esempio, gli economisti usano l’IA per prevedere i futuri prezzi di mercato per realizzare un profitto, i medici usano l’IA per classificare se un tumore è maligno o benigno, i meteorologi usano l’IA per prevedere il tempo, i reclutatori delle risorse umane usano l’IA per controllare il curriculum dei candidati per verificare se il richiedente soddisfa i criteri minimi per il lavoro, eccetera.

    Un’altro vantaggio nell’utilizzo del machine learning è anche quello di poter avere informazioni sempre più aggiornate sui già clienti e sui potenziali. Con il machine learning sarà sempre più facile avere una lista di potenziali clienti sapendo già come interagire con loro, in quanto si avranno già tutti i dati necessari.

    Sanità

    Le applicazioni per l’IA possono fornire letture mediche e radiografiche personalizzate. Gli assistenti sanitari personali possono fungere da life coach, ricordandovi di prendere le pillole, fare esercizio fisico o mangiare in modo più sano.

    Manifatturiero

    L’IA è in grado di analizzare i dati IoT aziendali durante lo streaming dalle apparecchiature collegate per prevedere il carico e la domanda previsti utilizzando le reti ricorrenti, un tipo specifico di rete di deep learning utilizzata con i dati di sequenza.

    Retail

    L’IA offre funzionalità di shopping virtuale che offrono consigli personalizzati o presentano le diverse opzioni di acquisto al consumatore. Anche le tecnologie per la gestione delle scorte di magazzino e di configurazione dei siti saranno migliorate con l’IA.

    Sport

    In questo campo l’IA può essere utilizzata per catturare e analizzare le immagini di gioco, fornire agli allenatori rapporti su come organizzare meglio una squadra, ad esempio, compresa l’ottimizzazione delle posizioni in campo e la strategia.

    Se ci si vuole avvicinare al machine learning, si possono iniziare a studiare alcuni linguaggi e framework molto comunemente usati in questo contesto, tra cui Python (di cui è disponibile una guida molto completa su HTML.it) ed R (di cui, nella guida di HTML.it

    Come si può vedere il machine learning può avere molteplici utilizzi e può essere molto utile se unito ad una stragegia che punta ad ottimizzare l’azienda su tutti i livelli.

    Share Post

    Best development languages in 2019

    laptop software development

    Dart and Flutter ranked #1 and #2 for the fastest-growing language and open source projects.

    Over the past year, worldwide developers collaborated in more than 370 primary languages on GitHub.  Among the top 10 programming languages, C#, Python and Shell climbed the list this year, while Ruby and Java fell in popularity. That’s according to the code repository’s annual Octoverse report, which also reveals a massive increase in the use of Flutter.

    Flutter was launched by Google in December 2018. Version 1.12 was released at the Flutter Interactive event in December 2019.  Over the last year Flutter has been the second-fastest growing project on GitHub. Contributions rose 279 percent over and Flutter is now the third largest project by contributors, with over 13,000 contributors. While it’s relatively new, more than one million developers are using Flutter at beginning of 2020.

    Flutter is a free, open-source Software Development Kit (SDK) for crafting interactive, natively compiled applications for mobile, web, and desktop from a single codebase. It is a cross-platform framework that enables developers to write native mobile apps in Dart a programming language, created by Google. It benefits from Dart and can be compiled into native code and communicates with the target platform without bridge and context switching. For some developers, Dart is similar to Ruby, while others find the resemblance to Java.

    What’s new?

    While releasing version 1.12 Google announced that Flutter was the first UI platform designed for ambient computing.  Ambient computing is a term that incorporates several distinct concepts. It is a combination of hardware, software, user experience, and machine/human interaction and learning. The idea is that developers need to code their apps just once using Google’s Dart programming language and have them run flawlessly across all of those platforms, without needing to change the code for each version.

    What Is Exceptionally Good about Flutter Framework?

    Flutter has proprietary UI components of Flutter UI builder, already adapted to native mobile operating systems. For iOS, it’s a Cupertino widget set, while for Android, it’s Material Design widgets. Moreover, everything from classes to layout structure is a widget. Without traditional WebViews, developers can code much faster and obtain fully-customizable designs by changing each element in whatever way possible. By implementing a widget once, it will work just the same on different devices, which gives programmers more confidence in their products.

    The other unique feature that sets Flutter apart from the rest is that:

    • Flutter has a thin layer of C/C++ code, and it implements most of its operations (compositing, gestures, animation, framework, widgets, etc.) in Dart
    • Flutter can be compiled to JavaScript and can be executed by browsers.
    • Dart allows code reuse between mobile apps and web apps.  App Store demands applications to be dynamic and Dart perfectly deals with the task using Ahead-Of-Time (AOT) compilation strategy. It is also capable of using a Just-In-Time compilation in the course of the development process. Stateful hot reload (necessarily in debug mode) gives a programmer the ability to make changes and see the result on the emulator in under a second. AOT compilation allows the applications written on Dart to launch faster, take up less space, and save battery life.

    With Flutter Google is paving the way to the future of cross platform development. Developers often need to compromise between productivity and quality. They choose to develop separate apps for iOS and Android or turn to a cross-platform solution that fails to deliver native experiences. Flutter was designed to bridge this gap.

    Share Post

    3 steps to Cyber Security for your business

    steps to cybersecurity

    Every year the Internet is being used by more people and with the IoT, Machine Learning and RPA uprising businesses are more eager to innovate and digitize in order to remain competitive. At the same time companies face the risk of cyber attacks to their own Intellectual Properties and Sensitive Data. Developing a cyber security strategy and a control framework to mitigate any operational and IT risks is crucial in today’s markets. Companies need to improve enterprise’s IT security system so that sensitive data does not leak. Thinking about the safety of an enterprise in advance by involving employees and training them is crucial. We have prepared our set of steps to cybersecurity.

    Request Estimate

    What does security really mean?

    steps to cybersecurity for business

    What do we understand today under «security» and «informational security»? Security is a state without any threat. Information security is the practical protection of information. If an enterprise has a customer database, it is considered very sensitive information, that needs to be protected.

    Here are 3 aspects of informational security:

    • Confidentiality – no one has access to the data from the outside, no one who does not work at your enterprise and to whom such access is not provided;
    • Immunity – no one could discreetly change the existing data in the system;
    • Availability – so that employees and authorized clients can access the necessary information at any time;

    On the way to implementing cybersecurity strategy there are some steps to follow:

    First step: understand the structure of the information system of an enterprise and identify the most effective ways to improve it. This will take time, but it will contribute to the further successful development of the enterprise. It is important to pay attention to information assets. They always have to be highly protected from external attacks by hackers. For small and medium-sized enterprises, the three most important information assets are as follows – customer data, various lists, and contracts. This sensitive information must be carefully protected, as dishonest competitors may try to hack into the customer database.

    Second step: risk assessment test. It will help to understand which data is sensitive within the enterprise. What measures should be taken to protect them? Such an assessment will also lead to a deeper understanding of cybersecurity issues among staff and management. Any company, before starting cooperation with any third party, is always recommended to conduct a risk assessment test. For example, an enterprise attracts a supplier, whose task is to develop a mobile application. In order to realize the task, the enterprise must give the supplier access to its IT system, and this creates a certain risk zone.

    Third step: regular employee training. An important role is also played by employee training, so that potential attacks on the IT systems of an enterprise can be timely prevented. Training for employees can be carried out with the help of the IT department and attracting IT consultants. Recently, it has become popular to organize so-called «hackathons». These are intensive 48-hour technology marathons devoted to security and IT topics. While shaping the internal culture of a start-up enterprise, the support of management is very important. If security is important for the leader, it will be important for employees.

    Conclusion

    In order to create an effective culture of cybersecurity at the enterprise, you need to constantly think about risks and talk about them with employees. The founder of a new enterprise must act consistently and thoughtfully. If there is not enough attention paid to the risks, at some point the data leak may take place. Being vigilant, investing into security and shape an enterprise culture in which cybersecurity is a value is a way to cybersecurity.

    Artecha team with help you implement the right cybersecurity strategy.

    Share Post

    The difference between Fintech & Techfin

    FinTech and TechFin difference

    The banking industry is evolving at an increasing pace. For the past few years, banks and financial organizations have gone through drastic changes. Recently financial institutions and FinTech startups initiated their cooperation that will bring them to some economic growth. At the same time, dozens of Tech companies are offering various financial solutions that are helping the financial industry to grow. Let’s discover difference between FinTech and TechFin companies.

    Giant financial corporations implement an innovative approach and become customer-oriented companies, with modern technologies in use. At the same time, we have traditional institutions, that obtain enough resources and financing. According to the World FinTech Report 2019, an open ecosystem is setting the course for the future of the financial industry, as well as a new partnership between classical banks and FinTech startups.

    «The traditional bank must progressively move from a position of ‘universal bank’ to a position of ‘universal partner’ to support customers beyond strictly banking products. Indeed, financial services are at the crossroads of customer journeys. This is an orientation towards a more useful but less visible bank.»
    Laurent Darmon
    CEO, La Fabrique by Crédit Agricole


    The bottom line is the difference between FinTech and TechFin. Between a company based on financial technology and a company that uses technology in its financial activities. The traditional bank is a TechFin company: it sees technology and tries to fit it into existing structures and processes

    FinTech Companies – create new digital processes that, in the analog world, function partially or not at all. TechFin companies – digitize processes in accordance with the capabilities of technology, that can function both in the analog world and in the digital one. The traditional bank, which acquired the application, simply added it to its old systems.

    A digital bank is being built from scratch and actively uses modern technologies. It functions in a completely different way. Perhaps the best example would be a large bank. A bank like this has branches, staff, history. It notices a new technology and tries to integrate it into its complex structure. A digital startup bank starts from scratch and poses the question differently: «How do we rebuild our financial services based on new technologies?»

    Difference between FinTech and TechFin

    FinTech and TechFin difference

    We need to consider the difference between a company based on financial technology and a company that uses technology in its financial activities.

    A traditional bank is a TechFin company: it sees technology and tries to fit it into existing structures and processes. A startup is a FinTech company: takes technology and on its basis creates products for financial markets and structures. The first continues to focus on a physically distributed organization, that exists in the form of many departments, where employees work. At the same time is trying to insert all this technology above all the existing processes.

    The second starts with the digital distribution of data on the Internet. Then determines whether it needs offices and employees for work. This is a completely different approach to the problem, and it is inaccessible to most banks since they don’t have anyone from their management, who could make such bold decisions.

    So here we have :

    As a result, it turns out that FinTech companies think on the basis of existing technologies, revises the structure, and build both – old financial services and new ones. And alongside create disruptive innovations.

    TechFin companies think the opposite, how can technology be used in an existing company and service structure. During this process, they create supporting innovations.

    In conclusion, both FinTech and TechFin institutions make sure to satisfy the overall winner – the customer. Overall it doesn’t matter what customer chooses – a more traditional or innovative approach. But we c cannot deny the fact the industry keeps changing and most likely technology implementation will be inevitable. Artecha team will gladly let you know about more details.

    Share Post

    Problems and opportunities for banks in the digital era

    bank digitalization

    Today we live in a global era when the banking system is already starting to fail. Banks are local, and the network is global. This requires a certain digital step from the banking industry. Digitalization means rethinking the bank in the realities of the Internet era. It is changing the business model and corporate culture of the bank, which are now built on the basis of digital platforms.

    Think about this for a moment

    Since mainly bankers are at the head of banks, this could be a problem for bank innovation. The top management of most banks does not have an engineer in their team. This has to be a person with a digital technology background. A person in charge of digital on-boarding. Therefore, the leadership of such banks believes that digitalization is a project. In each business area, some digital project is created, a leader is assigned and the task of the digital reform is set. This person gathers a team, receives a budget, completes his project, and everything returns back to normal. This has nothing to do with real digitalization and is nothing more than patching holes.

    bank digitalization

    Re-build financial services

    Digitalization requires a total rethinking of the bank in the realities of the Internet era. It is changing the business model and corporate culture of the bank, which are now built based on digital platforms. It requires re-imagining how banks will provide high-tech financial services. Bankers see the situation exactly the opposite. They ponder how to apply technology to an existing financial services structure. Why is that? Because bank executives are knowledgeable about risks, government regulations, compliance, accounting, postings, and money. What they don’t understand is technology and the future of banking technology.

    Technology expertise

    How can a bank be re-built technologically, if no one is aware of technology from the top management? This is a matter of principle, which is why there are many digital projects and no company leaders from this area. This should be at least a member of the board of directors. Almost everyone, who is involved in digitalization is subordinate to the operating director or IT director, but not the leader in digitalization. Again, in this case, banks underestimate the need for digital transformation and a person responsible for such reforms. The director of digitalization should be the only top manager directly reporting to the CEO. It can be even the CEO himself if the company is seriously counting on the success of the digital transformation.

    At least a quarter of the Top management should be taken by people, who have made a career in digital technology. Today, in senior management, almost 90% of banks do not have a single professional in this industry. This is the path to disaster, especially considering that the banks have no more than five years reserved for structural transformation. Taking into account the EAEU digitalization agenda until 2025.

    Advanced in Fintech

    If the management team of the bank remains the same, and the employee sincerely believes that the future is behind digital technologies, severe changes need to be made to the work processes of any bank. These can be banks or start-ups led by technologically advanced specialists. Digital vision will not arise where there are no leaders who understand digitalization. Most of the top managers in banks try not to change the ABS because they do not have a common vision. As long as the ground beneath their feet does not burn, you can evade them. Most IT directors have no time to explain things to management. All their resources are used to ensure that the bank continues to function (80% of the budget is spent exactly on this).

    Therefore, who will form the concept of digital technologies in the bank if there are only bankers on the board of directors and there is no one to object to them? Key to success is to implement FinTech resources and let the bank industry transform digitally. Artecha expertise allows us to implement these technologies to life and help financial organization digitalize smoothly. Let us know if need any additional information and let you financial company lead the fitter market of banking industry.

    Share Post

    Key Project Management Methods for software development

    project management for software development

    The success of any serious project depends on the methods used to manage it. All projects are unique, and there is no universal project management methodology yet. Each software development team has its own approach to project management. And there are no methods that are suitable for any team. However, over a long time that project management has existed, specialists have created quite a few standards and approaches, and we will introduce you to some of them. By comparing key project management methodologies we will help you decide which of them are most suitable for your needs and how you can organize your software development process.

    Project management methodologies overview:

    Scrum

    A very flexible method. It is recognized by the Agile family as the most structured one. According to Agile principles, in Scrum, the project is divided into parts. It is suitable for instant use by the customer in order to get backlogs of products. Subsequently, the received parts are assigned according to their priority.

    The most important parts are first selected for execution in the sprint (sprints in Scrum are iterations, that last from 2 to 4 weeks). As a result of the sprint, the customer receives the working increment of the product, i.e. ready to use parts. Once one sprint is completed, the project team starts the next sprint. The duration of sprints is always the same, but the team always sets it itself, evaluating its performance and project features.

    Advantages of Scrum:

    • Suitable for projects, that require quick results;
    • Easily adapts to changes;
    • Suitable for use by teams, where there are employees with little experience since all team members actively interact with each other;
    • Allows you to make “quick mistakes”, i.e. receive almost instant feedback from ongoing actions thanks to sprints;
    • It allows you to quickly correct errors and improve the efficiency of your software.

    Disadvantages of Scrum:

    • High demands on the project team (it requires a team of 5-9 people, and all team members must have needed competencies. This will secure a smooth software development process);
    • All employees must be able and willing to work in a team, be capable of self-organization and actively take responsibility;
    • Not suitable for all organizations and teams.

    Lean

    According to Agile, the project should be broken down into small sub-projects and work packages, but it’s not clear how to develop these sub-projects and work packages. The Lean method complements the principles of Agile with its workflow scheme for the high-quality execution of each iteration.

    At Lean, work is broken down into small work packages, which are then implemented independently of each other. But unlike Scrum, each package has its workflow with stages. Such stages are planning, supply, testing, development. The main thing is that these stages are important for the high-quality implementation of the project.

    Advantages of Lean:

    • Suitable for projects requiring clear execution and even quality, since it has all the appropriate tools;
    • Combines structuredness and flexibility.

    Disadvantages of Lean:

    • It involves a detailed and rigorous study of all the tasks and stages of the project. This includes head-to-toe guidelines from the customer.
    • There is no clear workflow for the implementation of individual parts of the project, which negatively affects the speed of the entire project (this problem can be solved thanks to clear communications management within the team).
    • Like Agile, Lean is not so much a method as a way of thinking and a concept with which you can independently create a project management system that will satisfy all your requirements.

    Kanban

    If the “Lean” method seems somewhat abstract, combined with Kanban, it becomes an excellent tool for building an effective project management system. The Kanban method involves transferring the product increment from stage to stage, as a result of which the finished product appears at the output.

    Kanban allows you to suspend the execution of one task at any stage if other urgent tasks have appeared or the priority of the current one has changed. Incomplete edition, suspended dates, indefinite part of the function – for the Kanban method this is the norm.

    Advantages of Kanban:

    • Ideal for cohesive teams with established communication;
    • Missing Deadlines;
    • Significantly saves resources and allows you to comply with the budget and deadlines, because involves an accurate calculation of the burden on the performers, the correct placement of restrictions and focus on continuous improvement.

    Disadvantages of Kanban

    • It is more suitable for teams, whose members have overlapping skills, otherwise, the effectiveness of the method will significantly decrease;
    • Not very suitable for implementing projects with hard deadlines;
    • In cases where you have to deal with clearly defined deadlines, it is best to use the Scrum method.

    Conclusion

    Project management is a science, but not the most accurate one. There are no universal solutions in this area. If you manage to find a method, ideally suited to your project – you can consider yourself lucky, because less successful managers have to make efforts to create and configure their project management systems. Here in Artecha we can easily adapt to your needs and offer you the best project management approach. Being business-oriented, we are interested in the successful completion of any software development project we deal with.

    Let us know what is your idea to grow your business and we will bring it to life using the best approach.

    Share Post

    Natural Language Processing changing Healthcare industry

    Natural Language Processing

    As a technology, natural language processing has developed and came into life with products such as Siri, Alexa and Google’s voice search. Employment of NLP helped to understand and respond to user requests.

    Today’s natural language processing systems can analyze unlimited amounts of text-based data without fatigue. And make the industry more efficient in a consistent and unbiased manner. NLP is an attractive way to provide the necessary clinical information. Thanks to the voice recognition system physicians will be able to dictate their reports in a usual way. Natural language processor, in it’s turn, will translate the textual report into a structured encoded form. The coded NLP system could be stored in real-time along with the original text in a clinical repository. This would enormously increase the functionality of the voice recognition system. Moreover, further advance the healthcare IT market.

    natural language processing

    The Healthcare IT Market is expected to be $390.7 Billion by 2024 and is growing at a faster rate than the GDP of most countries.

    Thanks to NLP Processes we will have more information about the treatment of the patient. This will be crucial to attract more patients and reduce costs for hospitals. Artecha has been actively involved in providing software solutions to the health care market to further advance the research.

    NLP as an Attitude

    Uses a keen sense of curiosity about people and approach to others. It also considers each experience as a rare and unprecedented opportunity to learn.

    NLP as methodology

    is based on a way of interacting with people, that reveals a startling and revolutionary premise. Behavior, communication, and change have a structure, as does every human endeavor. In particular, a structure that we can be model, learn and teach.

    NLP as a technology

    with innovative, reliable and proven techniques, that allow one to organize the perceptions and behavior to get an extraordinary and ecological result.

    At Artecha we curate, implement and develop sophisticated text mining applications. They help to further advance the research within the medical field. We are also actively involved in providing software solutions to the health care market. Our aim is to further advance the research process with specialized clinics and boutique dental practices in the UK.

    Artecha now is more and more in the healthcare industry, so If you have any question, will help your inquiry.

    Share Post

    Agile methodology: Advantages and Disadvantages

    agile methodology

    Agile, which appeared as a method of software development in a small team 10-15 years ago. Today it is becoming a new cultural management system for companies. Agile methodology is an innovative rethinking approach to creating a new product or service. It is based on a very simple idea: each participant of the process, each employee should be involved in the process of rethinking their tasks. Also everyone can make rational suggestions.

    When comprehending Agile, it is important to know both the positive and negative aspects of this methodology. Let’s start with the pros.

    Advantages

    First of all, it is worth noting that Agile management is very flexible. The traditional methodology indicates specific stages of work. Agile, in it’s turn, easily adapts to the consumer of the final product and customer requirements. Therefore, the number of defects in the final product is minimized. All this is done due to a thorough quality control, which is carried out at the end of each stage.

    In addition, Agile launches quickly, responds easily to changes, and allows the development team and customers to keep in touch in real time. The advantages are obvious, but let’s also talk about the cons.

    Disadvantages

    The disadvantages of the methodology are that, first of all, constant feedback can lead to the fact that the deadline of the project will be transferred all the time, thereby creating a threat of infinitely ongoing work. If the customer sees, for example, only the results, but has no idea of ​​the efforts required to achieve them, he will always demand improvements.

    The second drawback is the need to adapt the project documentation to the changing conditions of the project. If the team is not properly informed of changes or additional functions, documents with functional requirements or architecture may not be relevant at the current time.

    The third significant disadvantage of Agile is the need for frequent meetings. Of course, they contribute to increase work efficiency. Nevertheless the constant distraction of team members can affect the process negatively. Mainly because people’s attention is systematically moving away from the tasks being solved.

    In conclusion, theory and practice are two different things. The Agile methodology involves the participation of the whole team in the software development process, leaving participants with familiar competencies. Such an approach will allow to understand that they all work for the same ultimate goal – a quality product for their customer. New methods and technologies and their implementation is a kind of challenge to the team. And how to come to greater efficiency is always an individual matter. Agile is not a panacea or a guarantee of success, but it allows you to set the right course and find landmarks on the way.

    Share Post

    Best approaches how to monitor software development projects

    team work

    Knowing how to correctly evaluate the duration of the project will help to maintain a stable development process. On the stage of the formation of the project framework and analysis of requirements, this knowledge will be very helpful. Let’s take a closer look at best approaches for time-management. They will help you monitor your software development project.

    Progressive JPEG method

    Your project is ready for preview at any time. This means that the tab of the basic minimum functionality (draft with basic buttons) is developed at the very beginning, and then refinement only takes place. This approach performs well when the customer wants to see some work progress in three weeks. He saw your draft, thought it over and talked to you. Therefore it turned out that half of the functionality, agreed upon earlier, was no longer needed at all.

    CPM (Critical Path Method)

    The purpose of the method is to search within the project for such work sites, that cannot be performed simultaneously. For instance – a comparison of two pictures (the original and the processed one) can occur only after the comparison logic works. There is little use for a finished page in a browser with a container for pictures, a header and a block for social networks. It is these places in the project, that affect its execution time. The calculation of the cost of segments executed in parallel will allow you to understand how much resources are required for optimal work on tasks, and get an approximate project duration.

    Expert Judgement


    The method consists in attracting third-party specialists to derive the required values. Experts in the right field issue their verdict on the topic of cost or time frame. After that, you can average all the proposals, or you can try to come to a common solution during the discussion. The involvement of experts in the discussion of options is certainly more effective and will give a more accurate, reasoned and tested assessment.

    Three Point Estimation

    software development project
analogous estimation

    One of the most common and simple methods. In it’s framework optimistic (O = Optimistic), pessimistic (P = Pessimistic) and realistic average (M = Middle) estimates are first determined. The values ​​of P, M and O are determined expertly (in hours, days, $), for example, during a discussion within the project team. Further, the obtained values ​​of P, M, and O are substituted in the formula:

    (O + 4 M + P) / 6

    The result of the calculation gives an average estimate. Such a formula makes it possible to take into account possible positive and negative scenarios on the one hand. On the other hand to “smooth out” their influence and obtain a more realistic value of the assessment.

    Analogous Estimation

    Here, completed projects or experience in evaluating large works will play into your hands. Firstly, you need to remember what you did similar to the current project, what nuances there were. Seconfly, how much it cost per unit of time, how similar tasks were solved. To evaluate a large project, it is necessary to break it into smaller parts, using the principle of decomposition.

    In conclusion, knowing all these approaches and implementing one of them in practice will help you monitor your software development project. Organize processes smoothly and reach all the desired outcomes. Do you use any of these approaches and what are the results?

    Share Post

    Customer interaction in the software development process

    customer interaction

    Every aspect of business requires customers to make use of services to survive. Customer involvement is considered as one of the key factors for successful software development projects. Customers interact by giving precise requests, giving constant feedback to developers and testing each software release. Being an agile software development agency, we understand the importance of customer participation in each stage of the software development process. By looking through the key stages of an agile-based project we will see a customer’s direct impact on each part of the process.

    Requirement Gathering

    During this stage customer will be sharing with the team and developers, in particular, their vision for the project, expectation, and functionality. All the user requirements are gathered in user stories. This makes it easier to understand and maintain the value of the business throughout the whole development process. After all the requirements are gathered, the team moves on to the next stage and comes up with working prototypes.

    Iterations conduction

    By this stage, there are all the necessary materials gathered, and the problem to be solved is defined clearly. During this stage, the idea starts to be brought to life. First of all, everything has to be planned and then, again, agreed with the customer. Once agreed, developers implement all the features that were listed during the planning process. Customer will need to assess the product and initiate changes that will need to be implemented during the next step of the iteration. This process takes time since it will also require a lot of testing to be conducted. Again, without the customer’s participation, it will not be possible. Everyone needs to make sure that the customer will get working software with all the features initially requested.

    Product delivery

    Once all the QA (Quality Assurance) testing, internal and external training and documentation development are finished, the project finally can be released. A software product can also see a few releases before the final version. This helps the customer to see how the product will work after all the development part is finished. After every release customer needs to pay a lot of attention to the product, make sure all the requirements are included, and everything works smoothly.

    Conclusion

    Despite all the challenges and time-consuming processes, customer interaction in the software development process helps the development team to understand better all the needs of a customer, and deliver high-performing software. Implementation of agile methodology helps getting desired customer participation throughout the whole cycle. It also leads to a release of a decent software product, that meets all the initial requirements and has all the needed features.

    Share Post

    Internet of Skills: a new vision of remote communication.

    Internet of Skills

    With the introduction of 5G technology, everyone is now talking about the Internet of Things, Internet of Information. One of the other branches, where 5G can be of great use is the Internet of Skills. Projected to be a key component of the future digitalized world, Internet of Skills will enable human beings to teach, be taught and execute any actions remotely.

    Internet of Skills enables you to transmit your expertise in real-time, by using robotics and haptic feedback. Modern technologies can recreate a sense of touch, by applying certain forces, vibrations to the user. For instance they can trick our skin into thinking that what we touch in a virtual world is real.

    How is it currently used?

    Currently, implementation examples include remote interactive teaching and remote repair services. For the Internet of Skills to become a fully integrated reality, a combination of machine interaction methods and extended communication capabilities is required. Both industry and consumers certainly show a great interest in using capabilities, that Internet of Skills can bring.

    What makes the Internet of Skills work?

    Short latency capabilities of 5G are essential to make the Internet of Skills work, by providing instant action-reaction. The response times on 5G are 400X faster than a blink of an eye (1 millisecond). Without the availability of 5G technology globally, this system will lack audio, visual and haptic technologies. According to Mischa Dohler, a professor of wireless communications at King’s College London, it will take another 10 years for the Internet of Skills to be fully implemented in reality.

    Future of IoS

    In conclusion, Internet of Skills will be an essential tool in our digitalized world. By enabling remote skill delivery it will democratize labor globally, essentially the same way as the Internet has made knowledge public to any user in the world. In the future, 5G technology in combination with sensors, tactile gloves, and virtual reality technologies will allow us to “digitize” and transmit physical skills of experienced specialists over long distances. It is projected that by 2023 there will be more than 1 billion 5G connections in the world. Therefore, we can safely prepare for the fact that the “Internet of Skills” will become the same everyday thing as the familiar Internet of Things.

    Share Post

    Top 5 technologies in the software development world

    software development

    New technologies and gadgets are spread at a terrifying pace. But not always it has been like this. Today we would like to talk more about what technologies, that are shaping the software development industry. Emerged technologies revolutionized the industry in the last decade, and here are our Top 5 technologies:

    JavaScript

    Being the only programming language to run in web browsers, it keeps improving over time. JavaScript is a provider of a path for front-end developers, that helps them to become full-stack developers. Mainly JavaScript is improved by developers, who load its applications with more capabilities and interactions than before. JavaScript has a great advantage – it has reliable execution environment. This is what makes this technology widely used, and constantly improved.

    Python


    According to the TIOBE Programming Community Index, Python is one of the top programming languages in 2019 and is not going to lose its positions. Python is used for desktop GUI applications, website and web applications. By having quite simple syntax rules, Python makes it easier to keep the code readable and the application maintainable.

    ReactJS


    ReactJS is considered as one of the best JavaScript framework candidates. Its main strength is to offer help in building software that operates at scale. ReactJS helps teams of developers to clarify how they can work together and build some reusable components, and make them easier to maintain.

    Security


    The more data appears in the tech world, the more vulnerable it may get. Cyberattacks have managed to bring down companies and destroy careers. One of the key tasks of any software developer to make sure the product, they create is secure and protected from any malicious attacks. This is why all the security measures are treated seriously and companies are investing actively to protect their data.

    IoT


    Internet of Things is one of the important technologies, that are shaping our future now. Today, IoT devices are Wi-Fi-powered, programmable, not at a high cost, and useful. Developing this technology can help us solve our customers’ problems, and be implemented in UX/UI designs to make them up-to-date.

    There is still a lot to be discovered among new, emerging technologies, that are constantly changing the software development industry. Here, in Artecha, we keep learning new ways how to provide our customers with best and modern solutions.

    For more information contact us!

    Share Post

    Next-generation. What 5G Technology is bringing to us?

    future with 5g technology

    The modern mobile network now is way more than making phone calls or sending SMS. 5G network is the next generation of mobile internet connectivity, offering faster speeds and more reliable connections on mobile devices and desktops than ever before.

    5G networks are already starting to appear and are expected to be launched globally by 2020. Recently it’s speed has reached a record number of 15 Gbps in Sweden. With its low latency feature, 5G allows transmitting data in real-time without any delays. This technology is bringing vast changes to every industry. Let’s see how some of them will change.

    • Industry. 5G will increase the speed of industrial robots and will unify the whole infrastructure, that will increase overall performance.
    • Agriculture. 5G will enable remote control of the agricultural machinery and will help to monitor fields and herds.
    • Education. 5G will enable learning through VR-broadcast of the process from master’s/teacher’s point of view.
    • Medicine. 5G will let doctors from all over the world carry out remote real-time operations and gather consultation to come up with a solution for treatment.
    • Communication. With the implementation of 5G people will be able to use interactive virtual reality. Users will be able to interact remotely as if they were together in reality.
    • Entertainment. Possibility of fast wireless transmission of ultra-high-definition video ( 4k, 8k ), translations of the various events with the implementation of VR technology.

    First trial 5G network was launched on 23rd of April 2018 in metropolis Chongqing, China. Since then 5G technology is being implemented in various metropolises all over the world. It is projected that by 2035 the infrastructure of 5G network will be supporting 22 mills. workplaces all over the globe.

    Share Post

    Content Marketing: What Strategy is Effective Now?

    Potential customers usually look at several articles, infographics, or videos before deciding to become a buyer. Content marketing is a powerful force in persuading people to try a new brand or to deepen their existing relationship with one.  

    Strategies evolve with content marketing. What worked a few years ago isn’t always successful today. Here are some suggestions about what to try now. 

    Add Video Creation to Your Repertoire

    Video is growing in usage every year. It used to double annually in the average minutes viewed but now viewing figures are galloping away. 

    Companies need to differentiate between content that will work best as a blog versus being best presented in a visual medium. There are also blog posts that additionally benefit from the inclusion of a company-produced video.

    Also, it’s worth looking at the different video types such as explainer, product demos, and interviews. This can help to vary what’s used to match the preferences of different segments of the audience. Also, sometimes one type will be more visually impactful to get a marketing message across to the viewer; companies must be mindful of this rather than stick to a single presentational style.  

    Focus on Value Concepts

    Dig deep into the value that potential customers would like to receive.

    For instance, work with an agency that can connect the benefits of products or services to the marketing message. While features are useful to know, people want to be persuaded that a product or service will solve a problem or make their life easier.

    Technically minded companies may love what they produce but struggle to create a compelling story around it. An agency can help to overcome such difficulties. 

    Authority Matters More Now

    Demonstrating authority within the content is important too. With the myriad of available content, authority separates you from the pack. 

    For instance, health sites now include peer-reviewed articles that an M.D. has reviewed. Similarly, it’s possible to have employees that oversee content for accuracy and relevance, even when it’s outsourced to external writers. Readers can then see that they’ve reviewed the content, even if they didn’t write it. 

    Re-using Content Across Multiple Platforms

    Content that can be broken down into new parts for distribution across multiple platforms or additional channels is useful. 

    Turning a long-form article into a summarized version for Facebook encourages readers to click-through to the full article. Also, an infographic included within a blog post can be shared widely and attract new views.

    Broad content may be divided up into smaller parts for easier digestion on a mobile device. It may even be re-written for use elsewhere.

    Less is Sometimes More

    Less is sometimes more through quality and customization. 

    Consumers and business owners only have so much time to consume content each day. Therefore, content producers need to aim for quality and relevance to the target audience over gaining a broader appeal.

    Furthermore, sharable content due to being high quality and highly focused allows it to reach a larger audience. This also avoids your content being read today and forgotten by tomorrow.

    Content marketing continues to change, shift, and evolve. It’s up to companies to adjust to new realities so they can use this type of marketing more effectively.

    Share Post

    Main web development Trends in 2020

    working on computer

    Technologies do not stand still and are constantly evolving, and what was used several years ago may already be irrelevant today, or what they could not do several years ago has already become a reality. There are more modern tools that help you create web and mobile applications faster and better. Let’s look at the latest web development trends.

    PWA (Progressive Web Applications)

    Progressive Web Applications combine the best from browsers, websites and mobile applications. Most brands that have switched from websites to progressive web applications and have significantly improved conversions. Therefore, PWA has every reason to remain the leading trend in 2019.

    Augmented data analytics

    Augmented analytics –  area of augmented intelligence which uses machine learning to automatically analyze large amounts of data, get new information from them and visualize it. Software using augmented analytics will be embedded in existing business applications of enterprises and will soon begin to help in optimizing solutions.

    Push notifications

    Thanks to the tremendous success they have brought to countless mobile applications, push notifications have become extremely important components of most websites. Push notifications are rapidly replacing mailing lists, as they are easier to manage for both users and developers.

    Cyber Security 

    IT professionals are most concerned about data leaks, data privacy breaches and privacy breaches. Most organizations are preparing to defend against an unprecedented wave of cyber attacks. As a result, cybersecurity should remain the dominant trend in web development in the near future.

    Single Page Applications (SPA)

    As the name implies, a single-page application is a long web page, free from complex menus and navigation. Since it is easy to work with them, they look ready to increase their popularity. With the simplicity of their design and download speed, they are gaining an increasing number of users.

    Chat bots

    The popularity of chat bots has increased significantly. Some bots are designed to answer basic questions, but there are others that can easily answer complex ones. Integrating the bot with the site will help generate more user traffic and make the resource attractive.

    Sure enough, all these leading trends are designed to  provide more opportunities for web developers, as well as for companies and the end users. Contact Artecha (Art & Tech) to implement the latest web trends for your idea or business. 

    Share Post

    Progressive Web Apps: Why does your business need it right now

    holding mobile phone

    It’s amazing how quickly technology changes. Yesterday, everyone was amazed at the rapid development of native mobile applications, and today we are witnessing a new evolution.
    Let`s talk about Progressive Web App technology which was announced by Google in 2015, but becoming a popular trend nowadays.

    This is a technology that adds application functionality to the site. In the desktop browser, the progressive web app. And when it comes to a mobile browser, it’s PWA turns into a mobile browser.

    Progressive Web App is very easy to detect, just like a regular website – just google it, click on the link to open it, and everything, you have an application on your device, ready to be shown.
    The user enters the site and gets an offer to add it to the main screen. If the user accepts the offer, the site icon instantly appears on the screen of the mobile device.
    After installation, PWA creates a site cache. This solves two problems: it increases download speed and makes the site available offline. That is, thanks to PWA technology, the site can be used even without an internet connection.

    Important: the functionality of a progressive web application does not interfere with using the site in the usual way.

    The advantage of PWAs over mobile apps is that they consume much less data. While native apps reside in the user’s phone, PWAs are only accessed when users go to the website—the only time when data is used.
    Another advantage of Progressive Web App is that any page or screen on your PWA can have its own shareable direct link.
    The feature of pushing notifications allow users to get timely updates from sites they love, enabling you to effectively re-engage users with customized content.

    Why should business use progressive web apps?

    This technology benefits both customers and users. Such an application can be developed several times cheaper and faster than the native one, which opens up many new opportunities for small companies.

    PWA helps businesses:

    • Get to the user’s mobile device bypassing Google Play and other app stores. 
    • Make the site available offline. This even works for online stores, but information about executed deals “flies” into the store when the user has an internet connection. 
    • Increase website loading speed on mobile devices. 
    • Send notifications to users. 

    Implementing PWA gives measurable results

    Here are some examples: 
    The Pinterest.com image search platform uses PWA. The results were spectacular: the number of active users increased by 103% over the week, the number of new subscribers increased by 843%.

    Thanks to technology, Tinder has reduced page load times from 11.9 seconds to 4.69 seconds. PWA Tinder is 90% easier than their native application. 

    PWA Uber weighs almost nothing and loads in 3 seconds even in 2G networks.

    And there are many such examples. Soon, the presence of PWA will be simply necessary for any serious business, and the absence will be perceived as a significant drawback. Contact Artecha (Art & Tech) in order to create your Progressive Web App and help your business to keep up with tech trends.








    Share Post

    Shaping Software into a Piece of Art

    blue big data

    A lot of people seem surprised that someone interested in computers would also be interested in art. People seem to think that software development and artists are very different kinds of work, that development is cold, precise, and methodical, whilst art is the hectic expression of some primal urge.
    Both of these images are wrong. Developers and artists are most alike. What developers and artists have in common is that they’re both makers. Along with composers, architects, and writers, what developers and artists are trying to do is make good things.

    Abstract thinking

    Artists can take a blank canvas and use their creativity to draw something from scratch. It requires lots of abstract thinking, trying to connect things and creating something with their minds and hands.

    Developers often do something similar, for instance when it comes to working with a start-up. They take an abstract problem, come up with a solution and portray it through code.

    Fine-Tuning

    Paintings are often created by gradual refinement. They usually begin with a sketch and gradually the details are filled in.

    Developing a piece of software often starts out with a sketch on a whiteboard, iterating on the idea, developing the concept, backtracking when it goes down the wrong route, identifying the features and ultimately ending into a prototype.

    Inspiring and taking inspiration

    Many famous artists have been deeply influenced by work done before their time. The ideas artists are exposed to through other people and media inevitably influence them.

    Van Gogh studied the works of many artists including Rembrandt, and his Rest from Work was clearly inspired by Millet’s Noonday Rest.

    Developers are inspired through work done by others, as well. People Google-search to see if a problem they’re trying solving has been solved before and reuse it, often saving days or weeks of work. Most developers use and contribute to open source projects in GitHub or they get ideas from fellow developers on Stack Overflow. This is a common practice in the software development community.

    Focus

    There’s a reason why developers wear headphones. Coding often requires deep concentration and focus. It’s often when they are at their most productive. Developers are moving codes around trying to get a piece of software into perfect shape or design, very similar to sculpting a piece of art using clay with their hands.  Time passes and brilliant solutions appear, complex code with numerous pieces that interact are created and it all just flows out automatically.

    Artists are also known for getting in the zone, often spending hours or even days working continuously on a project looking for the perception.

    Perseverance

    Great pieces of work often take weeks or months, whether it’s creating a painting or coding a software system.  Some artists are lucky and create that great piece of work quickly, but for most others, it takes perseverance and a long time. It supposedly took Michelangelo more than 25 years to create the Sistine Chapel.

    Creating a great piece of software can often take weeks or even months until getting to the final product. Like an artist, developers might get stuck, however, unlike a piece of art that is unveiled in the gallery, the software is best when it is first launched as an MVP and then followed up with many subsequent releases.

    Forever young

    Pieces of art decay over time. That’s why there are art restorers. Software is known to decay over time too, first incurring technical debt and sometimes eventually turning into legacy code. Code that is not maintained, pruned or updated degrades over time. This is why developers refactor code, to keep it up to date and remove technical debt. Refactoring is the fine art restoration of the digital world.

    Many developers are artists

    Many developers are actually artists, literally.

    Leonardo da Vinci was a painter and sculptor. He was also an engineer, architect, mathematician, and inventor.

    The Ruby community is well-known for having many developers who are also artists and musicians. Jonathan Gillette, was a writer, cartoonist, artist, and computer programmer most notable for his work with the Ruby programming language.

    For many developers today, the line between programming and art has become increasingly blurred. Today’s web developers are required to have design skills, be able to use Photoshop, style pages and content, and understand web aesthetic and responsive web design.

    Artecha

    To conclude, Software Development can be perceived as being analytical, scientific, precise, but it’s some of that. Development requires inspiration, creativity and technical ability.

    Artecha (Art & Tech) was ideated with the mission of combining these skills and embed them within one team of specialists coming from different backgrounds with the common driver of developing digital solutions and launch them into the market same as a work of art.

    Share Post