{"name":"DevRequest","description":"Schede di problemi tecnici (software, database, integrazioni, app, sistemistica) con fasce orientative di tempi e costi.","home":"https://devrequest.it/","submit_request_url":"https://devrequest.it/pubblica-richiesta","language":"it","disclaimer":"Le fasce di prezzo e di tempo indicate sono orientative e dipendono da complessità, qualità del codice esistente, accessi disponibili, documentazione e requisiti effettivi. Non costituiscono preventivo.","generated_at":"2026-10-06T13:11:46+02:00","count":300,"items":[{"title":"Correggere errore 500 su applicazione PHP dopo aggiornamento del server","url":"https://devrequest.it/richieste/php/correggere-errore-500-su-applicazione-php-dopo-aggiornamento-del-server","category":"PHP","technologies":["Apache","MySQL","PHP"],"summary":"Dopo che l'hosting ha aggiornato la versione di PHP, il gestionale interno mostra una pagina bianca con errore 500 su quasi tutte le pagine. Il login funziona, ma l'elenco ordini e i report non si aprono più. Nessuno in azienda conosce il codice, scritto alcuni anni fa da un consulente esterno. Applicazione PHP procedurale con database MySQL su hosting condiviso. Accesso FTP e pannello di…","typical_approach":"Si parte dai log degli errori PHP (o si abilita temporaneamente il logging) per individuare le funzioni rimosse o deprecate nella nuova versione: tipicamente funzioni mysql_* sostituite da mysqli/PDO, parametri passati per riferimento, costrutti obsoleti. Si correggono i punti critici, si verifica ogni pagina principale e si lascia una nota sulle parti di codice da aggiornare in futuro.","preparation_checklist":["Accesso FTP/SSH e al pannello di hosting","Versione PHP precedente e attuale","Accesso ai log degli errori","Elenco delle pagine che non funzionano"],"indicative_cost_eur":{"min":80,"max":250},"indicative_hours":{"min":1,"max":4},"difficulty":"low","is_example":true,"published_at":"2026-10-04T09:00:00+02:00"},{"title":"Ricerca full-text su schede tecniche in SQL Server","url":"https://devrequest.it/richieste/sql-server/ricerca-full-text-su-schede-tecniche-in-sql-server","category":"SQL Server","technologies":["C#","SQL Server"],"summary":"Il nostro ufficio tecnico cerca nelle descrizioni e nelle note delle schede prodotto con LIKE e i risultati sono lenti e poco pertinenti. Vorremmo una ricerca che trovi anche le parole flesse e ordini i risultati per rilevanza. Circa 80.000 schede con descrizioni lunghe in italiano, applicativo .NET. Obiettivo: Ricerca veloce e con risultati pertinenti.","typical_approach":"Creazione di un catalogo full-text con lingua italiana sulle colonne testuali, uso di CONTAINSTABLE per ordinare per rilevanza e adeguamento della query nell'applicativo. Verifica dei tempi su ricerche reali.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":300,"max":750},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-10-03T09:00:00+02:00"},{"title":"Convertire un sito PHP statico in un piccolo CMS gestibile","url":"https://devrequest.it/richieste/php/convertire-un-sito-php-statico-in-un-piccolo-cms-gestibile","category":"PHP","technologies":["MySQL","PHP"],"summary":"Il nostro sito è fatto di pagine PHP con i testi scritti nel codice: per cambiare una news o un orario dobbiamo chiamare un programmatore. Vorremmo poter modificare testi, immagini e news da un pannello. Circa 25 pagine con grafica da mantenere. Obiettivo: Contenuti aggiornabili in autonomia.","typical_approach":"Pannello di gestione con editor per pagine e news, gestione immagini, anteprima prima della pubblicazione, mantenimento degli indirizzi attuali e dei metadati per i motori di ricerca.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del framework","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":500,"max":1300},"indicative_hours":{"min":10,"max":24},"difficulty":"medium","is_example":true,"published_at":"2026-10-02T09:00:00+02:00"},{"title":"Backup automatico di database e file su storage esterno","url":"https://devrequest.it/richieste/backup/backup-automatico-di-database-e-file-su-storage-esterno","category":"Backup","technologies":["Bash","Linux","PostgreSQL"],"summary":"Il nostro server ospita il database e i documenti caricati dai clienti, ma i backup vengono fatti a mano quando ci si ricorda. Vorremmo backup automatici giornalieri cifrati su uno storage esterno, con la possibilità di ripristinare facilmente. Server Linux con PostgreSQL e cartella documenti di circa 50 GB. Obiettivo: Backup giornalieri cifrati, retention definita e prova di ripristino…","typical_approach":"Script di backup del database e sincronizzazione incrementale dei documenti, cifratura e invio su storage esterno, retention giornaliera/settimanale/mensile, notifica in caso di errore e prova di ripristino su un ambiente separato con procedura scritta.","preparation_checklist":["Accesso SSH al server","Storage esterno disponibile","Tempo massimo accettabile di perdita dati"],"indicative_cost_eur":{"min":150,"max":400},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-09-30T09:00:00+02:00"},{"title":"Unire ogni mese i file CSV delle filiali in un unico riepilogo","url":"https://devrequest.it/richieste/excel-csv/unire-ogni-mese-i-file-csv-delle-filiali-in-un-unico-riepilogo","category":"Excel / CSV","technologies":["Excel","Python"],"summary":"Le nostre sei filiali inviano ogni mese un CSV con le vendite, ma ognuno ha colonne in ordine diverso e separatori differenti. Passiamo una giornata a sistemarli e unirli in un foglio per la direzione. File CSV inviati via email con formati leggermente diversi. Obiettivo: Riepilogo mensile pronto in pochi minuti.","typical_approach":"Script che riconosce colonne e separatori, normalizza date e importi e unisce i dati in un file Excel con totali per filiale. Elenco delle righe anomale da verificare invece di scartarle in silenzio.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":150,"max":400},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-09-29T09:00:00+02:00"},{"title":"Applicazione Python per l'etichettatura dei lotti in produzione","url":"https://devrequest.it/richieste/python/applicazione-python-per-l-etichettatura-dei-lotti-in-produzione","category":"Python","technologies":["Python","SQLite"],"summary":"In reparto stampiamo le etichette dei lotti con un programma di grafica, inserendo a mano data, lotto e scadenza. Vorremmo un piccolo programma che generi il lotto, calcoli la scadenza e stampi l'etichetta corretta. PC di reparto con stampante di etichette. Obiettivo: Etichette senza errori e lotti tracciati.","typical_approach":"Applicazione con interfaccia semplice per operatori, regole di calcolo per prodotto, stampa nel linguaggio della stampante, archivio dei lotti stampati e ristampa controllata.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":500,"max":1300},"indicative_hours":{"min":10,"max":24},"difficulty":"medium","is_example":true,"published_at":"2026-09-28T09:00:00+02:00"},{"title":"Aggiornare applicazione da PHP 7.4 a PHP 8.3","url":"https://devrequest.it/richieste/php/aggiornare-applicazione-da-php-7-4-a-php-8-3","category":"PHP","technologies":["Laravel","MySQL","PHP"],"summary":"Il nostro portale clienti gira ancora su PHP 7.4, non più supportato. Il fornitore di hosting ci ha comunicato che entro qualche mese la versione verrà dismessa. Vorremmo aggiornare a PHP 8.3 senza interrompere il servizio e senza riscrivere l'applicazione. Circa 40.000 righe di codice, parte con framework e parte procedurale, dipendenze gestite con Composer. Esiste un ambiente di test…","typical_approach":"Analisi statica del codice per individuare incompatibilità (tipi, funzioni deprecate, null passati a funzioni interne), aggiornamento progressivo delle dipendenze Composer, correzioni mirate e test sulle funzioni critiche in ambiente di staging. Il passaggio in produzione avviene solo dopo la verifica dei flussi principali, con possibilità di rollback.","preparation_checklist":["Accesso al repository del codice","Ambiente di test o staging","Elenco funzioni critiche da verificare","composer.json e composer.lock"],"indicative_cost_eur":{"min":900,"max":2400},"indicative_hours":{"min":16,"max":40},"difficulty":"high","is_example":true,"published_at":"2026-09-27T09:00:00+02:00"},{"title":"Partizionare la tabella dei log di produzione su SQL Server","url":"https://devrequest.it/richieste/sql-server/partizionare-la-tabella-dei-log-di-produzione-su-sql-server","category":"SQL Server","technologies":["SQL Server"],"summary":"La tabella che raccoglie i dati delle macchine di produzione ha superato i 300 milioni di righe. Le cancellazioni dei dati vecchi bloccano il database per ore e le interrogazioni sugli ultimi giorni sono sempre più lente. SQL Server Enterprise, inserimenti continui da sistemi di reparto. Obiettivo: Archiviazione dei dati vecchi rapida e query recenti veloci.","typical_approach":"Progettazione di una funzione di partizione per mese, migrazione dei dati esistenti in finestre programmate e procedura di switch per archiviare le partizioni vecchie. Test completo su copia prima della produzione.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":500,"max":1400},"indicative_hours":{"min":10,"max":24},"difficulty":"high","is_example":true,"published_at":"2026-09-26T09:00:00+02:00"},{"title":"Integrare il pagamento con link via SMS e WhatsApp","url":"https://devrequest.it/richieste/php/integrare-il-pagamento-con-link-via-sms-e-whatsapp","category":"PHP","technologies":["PHP","Stripe","Webhook"],"summary":"Molti nostri clienti ordinano al telefono. Vorremmo generare dal gestionale un link di pagamento per l'importo dell'ordine da inviare via SMS o WhatsApp, con conferma automatica quando viene pagato. Gestionale PHP, account presso un provider di pagamenti. Obiettivo: Incassi più rapidi per gli ordini telefonici.","typical_approach":"Creazione del link di pagamento tramite API con riferimento all'ordine, scadenza configurabile, notifica firmata del pagamento che aggiorna l'ordine e promemoria per i link non pagati.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del framework","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":250,"max":650},"indicative_hours":{"min":5,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-09-25T09:00:00+02:00"},{"title":"Migrare server gestionale su nuova macchina Windows Server","url":"https://devrequest.it/richieste/windows-server/migrare-server-gestionale-su-nuova-macchina-windows-server","category":"Windows Server","technologies":["SQL Server","Windows Server"],"summary":"Il server che ospita il gestionale e il database ha otto anni e il sistema operativo non è più supportato. Abbiamo acquistato una nuova macchina e vorremmo trasferire tutto con il minimo fermo, mantenendo condivisioni, stampanti e accessi. Vecchio server con gestionale, SQL Server e cartelle condivise; 15 postazioni. Obiettivo: Migrazione completata in un fine settimana senza perdita di dati.","typical_approach":"Inventario di servizi, database, condivisioni e permessi, installazione e preparazione del nuovo server, prova di migrazione con copia dei database, passaggio finale nel fine settimana con verifica sulle postazioni e mantenimento del vecchio server spento ma disponibile per qualche settimana.","preparation_checklist":["Elenco software installati e licenze","Accesso amministrativo ai server","Finestra di fermo disponibile"],"indicative_cost_eur":{"min":350,"max":900},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2026-09-23T09:00:00+02:00"},{"title":"Controllare la qualità dei dati anagrafici in un file Excel prima dell'import","url":"https://devrequest.it/richieste/excel-csv/controllare-la-qualita-dei-dati-anagrafici-in-un-file-excel-prima-dell-import","category":"Excel / CSV","technologies":["Excel","Python"],"summary":"Prima di caricare nuovi clienti nel gestionale riceviamo un Excel compilato dai commerciali. Codici fiscali sbagliati, CAP mancanti e province scritte in mille modi ci causano errori in fattura. Vorremmo un controllo automatico prima dell'importazione. File di qualche centinaio di righe a settimana. Obiettivo: Importare solo dati verificati.","typical_approach":"Validazione di partita IVA, codice fiscale, CAP e province con regole formali, normalizzazione dei campi più comuni e file di ritorno con le celle errate evidenziate e il motivo.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":150,"max":360},"indicative_hours":{"min":3,"max":7},"difficulty":"low","is_example":true,"published_at":"2026-09-22T09:00:00+02:00"},{"title":"Convertire script Python 2 ancora in uso a Python 3","url":"https://devrequest.it/richieste/python/convertire-script-python-2-ancora-in-uso-a-python-3","category":"Python","technologies":["Linux","Python"],"summary":"Sul server girano ancora una dozzina di script Python 2 per import ed esportazioni notturne. Il nuovo server non ha più Python 2 e dobbiamo convertirli senza cambiare i risultati. Script senza test, alcuni con librerie non più disponibili. Obiettivo: Script funzionanti su Python 3 con risultati identici.","typical_approach":"Raccolta di input e output di riferimento, conversione con gestione di testi e codifiche, sostituzione delle librerie obsolete, confronto automatico dei risultati e ambiente virtuale con dipendenze fissate.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":300,"max":850},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2026-09-21T09:00:00+02:00"},{"title":"Creare API REST per esporre il catalogo prodotti ai rivenditori","url":"https://devrequest.it/richieste/rest-api/creare-api-rest-per-esporre-il-catalogo-prodotti-ai-rivenditori","category":"REST API","technologies":["MySQL","PHP","REST API"],"summary":"Vorremmo permettere ai nostri rivenditori di leggere in automatico il catalogo prodotti, i prezzi riservati e la disponibilità di magazzino, invece di inviare ogni settimana un file Excel. Serve un'API sicura con credenziali diverse per ogni rivenditore. Gestionale PHP con database MySQL già contenente prodotti, listini per cliente e giacenze. Obiettivo: API REST documentata, autenticata con…","typical_approach":"Si definiscono gli endpoint (prodotti, prezzi, disponibilità), il formato JSON e la paginazione; si implementa l'autenticazione con token per rivenditore salvati in forma hash, il rate limiting e il logging delle chiamate. Si consegna una documentazione OpenAPI e un ambiente di prova.","preparation_checklist":["Struttura delle tabelle prodotti e listini","Elenco dei dati da esporre","Numero indicativo di rivenditori e chiamate","Server su cui pubblicare l'API"],"indicative_cost_eur":{"min":350,"max":900},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2026-09-20T09:00:00+02:00"},{"title":"Trigger di audit sulle modifiche alle anagrafiche clienti","url":"https://devrequest.it/richieste/sql-server/trigger-di-audit-sulle-modifiche-alle-anagrafiche-clienti","category":"SQL Server","technologies":["SQL Server"],"summary":"Ogni tanto troviamo condizioni di pagamento o indirizzi cambiati sulle anagrafiche e nessuno sa chi li abbia modificati. Vorremmo registrare chi ha cambiato cosa e quando, senza toccare il gestionale che non possiamo modificare. Gestionale di terze parti su SQL Server, utenti con login dedicati. Obiettivo: Storico consultabile delle modifiche alle anagrafiche.","typical_approach":"Trigger sulle tabelle anagrafiche che salvano valori precedenti e nuovi in una tabella di storico, oppure valutazione di temporal table se compatibili. Vista di consultazione semplice per l'amministrazione.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":150,"max":420},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-09-19T09:00:00+02:00"},{"title":"Eliminare i warning e deprecati dopo l'aggiornamento a PHP 8.3","url":"https://devrequest.it/richieste/php/eliminare-i-warning-e-deprecati-dopo-l-aggiornamento-a-php-8-3","category":"PHP","technologies":["PHP"],"summary":"Dopo l'aggiornamento a PHP 8.3 il nostro applicativo funziona, ma i log si riempiono di avvisi su funzioni deprecate, proprietà dinamiche e valori nulli. Vogliamo sistemarli prima che diventino errori. Log di alcuni gigabyte al giorno per gli avvisi. Obiettivo: Codice pulito e pronto per le prossime versioni.","typical_approach":"Raggruppamento degli avvisi per tipo e frequenza, analisi statica del codice, correzione per categoria partendo dai più frequenti, dichiarazione delle proprietà e controlli sui valori nulli.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del framework","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":300,"max":850},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2026-09-18T09:00:00+02:00"},{"title":"Sito e-commerce lento durante le promozioni","url":"https://devrequest.it/richieste/performance/sito-e-commerce-lento-durante-le-promozioni","category":"Performance","technologies":["MySQL","Nginx","PHP","Redis"],"summary":"Durante le campagne promozionali il nostro e-commerce diventa lentissimo e alcuni clienti abbandonano il carrello. Nei giorni normali va bene. Vorremmo capire dove si blocca e prepararci per la prossima promozione tra un mese. E-commerce in PHP con MySQL su server dedicato. Obiettivo: Tempi di risposta stabili con un traffico triplo rispetto al normale.","typical_approach":"Analisi dei log e test di carico per individuare il collo di bottiglia (database, PHP, sessioni, risorse esterne), introduzione di cache delle pagine e degli oggetti, ottimizzazione delle query più frequenti, configurazione di PHP-FPM adeguata alle risorse e verifica finale con un nuovo test di carico.","preparation_checklist":["Accesso al server e ai log","Dati di traffico delle ultime promozioni","Data della prossima campagna"],"indicative_cost_eur":{"min":350,"max":950},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2026-09-16T09:00:00+02:00"},{"title":"Generare in serie i certificati di partecipazione ai corsi in PDF","url":"https://devrequest.it/richieste/documenti-e-pdf/generare-in-serie-i-certificati-di-partecipazione-ai-corsi-in-pdf","category":"Documenti e PDF","technologies":["Excel","Python"],"summary":"Organizziamo corsi di formazione e a fine corso prepariamo a mano un attestato per ogni partecipante modificando un documento Word. Con corsi da cinquanta persone diventa lunghissimo e capitano errori nei nomi. Elenco partecipanti in Excel e modello grafico dell'attestato. Obiettivo: Attestati generati e nominati in automatico.","typical_approach":"Modello impaginato con campi variabili, generazione di un PDF per partecipante dai dati Excel e nomi file coerenti. Possibilità di invio per email in un secondo momento.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":150,"max":400},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-09-15T09:00:00+02:00"},{"title":"API in Python con FastAPI per servire i dati di produzione","url":"https://devrequest.it/richieste/python/api-in-python-con-fastapi-per-servire-i-dati-di-produzione","category":"Python","technologies":["PostgreSQL","Python","REST API"],"summary":"I dati delle macchine sono raccolti in un database PostgreSQL ma ogni reparto li estrae con query diverse. Vorremmo un'API unica che restituisca indicatori e storici per i cruscotti e per il gestionale. Database PostgreSQL con misure ogni minuto. Obiettivo: Dati coerenti per tutti i consumatori.","typical_approach":"API con endpoint documentati automaticamente, autenticazione con chiavi per applicazione, aggregazioni calcolate nel database, paginazione degli storici e test sugli indicatori principali.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":600,"max":1500},"indicative_hours":{"min":12,"max":28},"difficulty":"medium","is_example":true,"published_at":"2026-09-14T09:00:00+02:00"},{"title":"Sincronizzare ordini Shopify con il gestionale aziendale","url":"https://devrequest.it/richieste/e-commerce/sincronizzare-ordini-shopify-con-il-gestionale-aziendale","category":"E-commerce","technologies":["MySQL","PHP","REST API","Shopify"],"summary":"Ogni giorno un dipendente copia a mano gli ordini dello shop online nel gestionale per preparare le spedizioni. Vorremmo che gli ordini arrivassero in automatico, con cliente, righe e indirizzo, e che lo stato di evasione e il tracking tornassero sullo shop. Shop su Shopify, gestionale web in PHP con database MySQL sviluppato su misura. Obiettivo: Eliminare l'inserimento manuale e gli errori di…","typical_approach":"Integrazione tramite API Admin di Shopify con webhook sulla creazione ordine e job di riconciliazione periodico per non perdere eventi. Mappatura di clienti, prodotti (SKU) e metodi di spedizione, gestione degli errori con coda di ritentativi e un piccolo log consultabile. Aggiornamento dello stato di evasione verso Shopify quando l'ordine viene spedito.","preparation_checklist":["Accesso amministratore allo shop (app privata)","Struttura tabelle ordini e clienti del gestionale","Corrispondenza SKU tra shop e gestionale","Ambiente di test"],"indicative_cost_eur":{"min":450,"max":1200},"indicative_hours":{"min":8,"max":20},"difficulty":"medium","is_example":true,"published_at":"2026-09-13T09:00:00+02:00"},{"title":"Replica MariaDB master-slave per i report del gestionale","url":"https://devrequest.it/richieste/mysql-mariadb/replica-mariadb-master-slave-per-i-report-del-gestionale","category":"MySQL / MariaDB","technologies":["Linux","MariaDB"],"summary":"I report pesanti eseguiti dagli uffici rallentano il gestionale durante l'orario di lavoro. Abbiamo un secondo server Linux e vorremmo una replica in sola lettura del database su cui far girare reportistica ed esportazioni. MariaDB 10.6 su Linux, database di circa 40 GB. Obiettivo: Report separati dal carico operativo.","typical_approach":"Configurazione della replica con GTID, snapshot iniziale coerente e utente di replica dedicato. Monitoraggio del ritardo e istruzioni per ricostruire la replica in caso di interruzione.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":300,"max":800},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-09-12T09:00:00+02:00"},{"title":"Sistema di punti fedeltà per i clienti dell'e-commerce","url":"https://devrequest.it/richieste/php/sistema-di-punti-fedelta-per-i-clienti-dell-e-commerce","category":"PHP","technologies":["MySQL","PHP"],"summary":"Vorremmo premiare i clienti abituali con punti accumulati a ogni acquisto e convertibili in sconti, con regole speciali per compleanni e promozioni, visibili nell'area personale. E-commerce PHP su misura con area clienti. Obiettivo: Clienti incentivati a riacquistare.","typical_approach":"Registro dei movimenti punti non modificabile, regole di accumulo configurabili, conversione in buoni sconto con scadenza, storno in caso di reso e riepilogo nell'area cliente.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del framework","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":500,"max":1200},"indicative_hours":{"min":10,"max":22},"difficulty":"medium","is_example":true,"published_at":"2026-09-11T09:00:00+02:00"},{"title":"Calcolo totali errato nel carrello con sconti e IVA","url":"https://devrequest.it/richieste/bug-applicativi/calcolo-totali-errato-nel-carrello-con-sconti-e-iva","category":"Bug applicativi","technologies":["AJAX","JavaScript","PHP"],"summary":"Alcuni clienti ci segnalano che il totale del carrello cambia tra la pagina del carrello e il riepilogo dell'ordine, con differenze di qualche centesimo. Succede soprattutto con prodotti scontati e quantità maggiori di uno. Calcoli fatti in parte in JavaScript nella pagina e in parte in PHP alla conferma. Obiettivo: Totali identici in ogni passaggio e corretti fiscalmente.","typical_approach":"Unificazione del calcolo lato server come unica fonte di verità, uso di aritmetica su centesimi interi invece dei numeri decimali, regola di arrotondamento coerente per riga o per totale secondo le esigenze fiscali e test automatici sui casi segnalati.","preparation_checklist":["Esempi di ordini con differenze","Regole di sconto applicate","Accesso al codice del carrello"],"indicative_cost_eur":{"min":100,"max":320},"indicative_hours":{"min":2,"max":6},"difficulty":"low","is_example":true,"published_at":"2026-09-09T09:00:00+02:00"},{"title":"Estrarre le tabelle dai PDF dei listini fornitori","url":"https://devrequest.it/richieste/documenti-e-pdf/estrarre-le-tabelle-dai-pdf-dei-listini-fornitori","category":"Documenti e PDF","technologies":["Python"],"summary":"Alcuni fornitori ci mandano il listino solo in PDF, decine di pagine di tabelle. Copiare i dati a mano richiede giorni. Vorremmo estrarre codice, descrizione e prezzo in un formato da importare nel nostro database. PDF testuali generati da software, non scansioni. Obiettivo: Listini importabili senza ricopiatura.","typical_approach":"Estrazione delle tabelle con regole specifiche per ciascun formato di fornitore, pulizia di righe spezzate e intestazioni ripetute, esportazione in CSV. Controllo a campione e segnalazione delle pagine non interpretate.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":300,"max":720},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-09-08T09:00:00+02:00"},{"title":"Automatizzare il caricamento di documenti su un portale con Python","url":"https://devrequest.it/richieste/python/automatizzare-il-caricamento-di-documenti-su-un-portale-con-python","category":"Python","technologies":["Python"],"summary":"Ogni settimana carichiamo decine di certificati su un portale di un ente che non offre API, compilando gli stessi campi a mano. Vorremmo automatizzare il caricamento lasciando la conferma finale all'operatore. Portale web con login e moduli di caricamento. Obiettivo: Ore di lavoro ripetitivo risparmiate.","typical_approach":"Automazione del browser con compilazione dei campi dai metadati dei file, gestione degli errori e dei tempi di caricamento, conferma manuale prima dell'invio e registro dei documenti caricati.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":250,"max":650},"indicative_hours":{"min":5,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-09-07T09:00:00+02:00"},{"title":"Collegare WooCommerce al gestionale ERP per giacenze e listini","url":"https://devrequest.it/richieste/e-commerce/collegare-woocommerce-al-gestionale-erp-per-giacenze-e-listini","category":"E-commerce","technologies":["PHP","REST API","SQL Server","WooCommerce"],"summary":"Il sito e-commerce in WooCommerce mostra spesso disponibilità sbagliate perché le giacenze vengono aggiornate a mano una volta a settimana. Vorremmo sincronizzare automaticamente giacenze e prezzi dall'ERP e scaricare gli ordini nell'ERP. ERP gestionale con database SQL Server in sede, sito WooCommerce su hosting esterno. Circa 3.000 articoli. Obiettivo: Giacenze e prezzi aggiornati almeno ogni…","typical_approach":"Si realizza un connettore che legge le viste dell'ERP (giacenze, listini) e aggiorna WooCommerce tramite REST API a blocchi, solo per gli articoli modificati. Gli ordini vengono importati nell'ERP tramite tabelle di appoggio o procedure fornite dal produttore. Il connettore gira come servizio pianificato con log e notifiche in caso di errore.","preparation_checklist":["Documentazione o accesso in lettura alle tabelle ERP","Chiavi API WooCommerce","Regole su prezzi, sconti e IVA","Macchina dove eseguire il connettore"],"indicative_cost_eur":{"min":900,"max":2200},"indicative_hours":{"min":16,"max":36},"difficulty":"high","is_example":true,"published_at":"2026-09-06T09:00:00+02:00"},{"title":"Convertire tabelle MyISAM in InnoDB senza fermare il sito","url":"https://devrequest.it/richieste/mysql-mariadb/convertire-tabelle-myisam-in-innodb-senza-fermare-il-sito","category":"MySQL / MariaDB","technologies":["MySQL","PHP"],"summary":"Il database del nostro portale ha ancora molte tabelle MyISAM e durante le importazioni notturne il sito si blocca per i lock di tabella. Vorremmo passare a InnoDB, ma alcune tabelle sono grandi e temiamo lunghi tempi di fermo. MySQL 8 con una trentina di tabelle MyISAM, la più grande con 20 milioni di righe. Obiettivo: Tutte le tabelle in InnoDB con fermo minimo.","typical_approach":"Verifica delle dipendenze da funzioni specifiche di MyISAM, conversione delle tabelle piccole in finestra serale e uso di uno strumento di modifica online per quelle grandi. Ritaratura dei parametri InnoDB dopo la conversione.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":250,"max":650},"indicative_hours":{"min":5,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-09-05T09:00:00+02:00"},{"title":"Rendere il portale PHP installabile su Docker per gli sviluppatori","url":"https://devrequest.it/richieste/php/rendere-il-portale-php-installabile-su-docker-per-gli-sviluppatori","category":"PHP","technologies":["Docker","MySQL","PHP"],"summary":"Ogni nuovo sviluppatore impiega giorni a configurare il nostro portale PHP in locale, tra versioni di PHP, estensioni e database. Vorremmo un ambiente Docker pronto da avviare con un comando. Applicazione PHP con MySQL, Redis e invio email. Obiettivo: Ambiente di sviluppo pronto in pochi minuti.","typical_approach":"Composizione di container con versioni allineate alla produzione, dati di esempio caricati all'avvio, catcher per le email di test, documentazione dei comandi e configurazione per il debug.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del framework","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":200,"max":550},"indicative_hours":{"min":4,"max":10},"difficulty":"low","is_example":true,"published_at":"2026-09-04T09:00:00+02:00"},{"title":"App B4A per raccolta ordini degli agenti con lavoro offline","url":"https://devrequest.it/richieste/b4x/app-b4a-per-raccolta-ordini-degli-agenti-con-lavoro-offline","category":"B4X","technologies":["B4A","B4X","REST API","SQLite"],"summary":"I nostri agenti raccolgono ordini su moduli cartacei e li dettano in ufficio la sera. Vorremmo un'app Android in B4A con catalogo, listini cliente e ordini che funzioni anche senza copertura e si sincronizzi al rientro in rete. Gestionale con API REST già esposte per articoli e clienti. Obiettivo: Ordini registrati in visita e inviati in automatico.","typical_approach":"Database SQLite locale con catalogo e clienti, sincronizzazione incrementale per data di modifica, coda degli ordini da inviare con ripresa in caso di errore, firma del cliente e PDF di riepilogo.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":1600,"max":4000},"indicative_hours":{"min":30,"max":70},"difficulty":"high","is_example":true,"published_at":"2026-09-02T09:00:00+02:00"},{"title":"Unire e numerare i documenti di una pratica in un unico PDF","url":"https://devrequest.it/richieste/documenti-e-pdf/unire-e-numerare-i-documenti-di-una-pratica-in-un-unico-pdf","category":"Documenti e PDF","technologies":["MySQL","PHP"],"summary":"Per ogni pratica dobbiamo consegnare all'ente un fascicolo unico con copertina, indice e pagine numerate, mettendo insieme PDF, immagini e documenti generati dal sistema. Oggi lo componiamo a mano con un programma desktop. Allegati delle pratiche salvati dal portale PHP. Obiettivo: Fascicolo pronto con un clic.","typical_approach":"Conversione degli allegati in PDF, unione nell'ordine definito con copertina e indice generati, numerazione delle pagine e controllo delle dimensioni del file finale.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":200,"max":480},"indicative_hours":{"min":4,"max":9},"difficulty":"low","is_example":true,"published_at":"2026-09-01T09:00:00+02:00"},{"title":"Analisi dei log del gestionale per trovare errori ricorrenti","url":"https://devrequest.it/richieste/python/analisi-dei-log-del-gestionale-per-trovare-errori-ricorrenti","category":"Python","technologies":["Python"],"summary":"Il gestionale scrive log molto voluminosi e quando un utente segnala un problema non riusciamo a capire se è un caso isolato. Vorremmo uno strumento che riassuma gli errori più frequenti per giorno e per modulo. File di log testuali di alcuni gigabyte al mese. Obiettivo: Visione chiara degli errori ricorrenti.","typical_approach":"Parsing dei log con raggruppamento degli errori simili, conteggi per giorno e modulo, report HTML o Excel con andamento e primi casi di esempio, esecuzione pianificata.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":150,"max":450},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-08-31T09:00:00+02:00"},{"title":"Integrare pagamenti Stripe in un portale PHP esistente","url":"https://devrequest.it/richieste/pagamenti/integrare-pagamenti-stripe-in-un-portale-php-esistente","category":"Pagamenti","technologies":["PHP","Stripe","Webhook"],"summary":"Abbiamo un portale dove i clienti acquistano pacchetti di ore di assistenza. Oggi pagano con bonifico e noi verifichiamo a mano. Vorremmo aggiungere il pagamento con carta e l'attivazione automatica del pacchetto dopo il pagamento. Portale in PHP con area clienti già funzionante e database MySQL. Obiettivo: Pagamento con carta, ricevuta via email e attivazione automatica del servizio.","typical_approach":"Integrazione con Stripe Checkout per non gestire dati di carta sul proprio server, webhook firmato per confermare il pagamento in modo affidabile, aggiornamento dell'ordine e attivazione del pacchetto. Gestione di pagamenti falliti, rimborsi e test completo in modalità sandbox prima del passaggio in produzione.","preparation_checklist":["Account Stripe aziendale","Elenco prodotti e prezzi","Accesso al codice del portale","Testi per email di conferma"],"indicative_cost_eur":{"min":350,"max":850},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-08-30T09:00:00+02:00"},{"title":"Query MySQL per classifica prodotti più venduti per stagione","url":"https://devrequest.it/richieste/mysql-mariadb/query-mysql-per-classifica-prodotti-piu-venduti-per-stagione","category":"MySQL / MariaDB","technologies":["MySQL"],"summary":"Ci serve una query che, partendo dagli ordini, restituisca per ogni stagione degli ultimi tre anni i venti prodotti più venduti per quantità e per fatturato, con la posizione in classifica e la variazione rispetto alla stagione precedente. MySQL 8 con tabelle ordini, righe ordine e prodotti. Obiettivo: Classifica stagionale pronta da usare nei report.","typical_approach":"Query con funzioni finestra per calcolare rango e confronto con il periodo precedente, raggruppamento per stagione definita sulle date. Consegna della query commentata e di una vista per riutilizzarla.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":100,"max":280},"indicative_hours":{"min":2,"max":5},"difficulty":"low","is_example":true,"published_at":"2026-08-29T09:00:00+02:00"},{"title":"Sviluppare un plugin WordPress per il catalogo tecnico","url":"https://devrequest.it/richieste/php/sviluppare-un-plugin-wordpress-per-il-catalogo-tecnico","category":"PHP","technologies":["MySQL","PHP"],"summary":"Il nostro sito è in WordPress e vorremmo pubblicare il catalogo tecnico con schede, schede tecniche scaricabili e filtri per caratteristiche, importandolo periodicamente dal gestionale aziendale. Circa 1.500 articoli esportabili in CSV dal gestionale. Obiettivo: Catalogo aggiornato senza inserimento manuale.","typical_approach":"Plugin con tipo di contenuto e tassonomie dedicate, import pianificato con aggiornamento incrementale, filtri per caratteristiche, documenti allegati e template coerenti con il tema esistente.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del framework","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":500,"max":1300},"indicative_hours":{"min":10,"max":24},"difficulty":"medium","is_example":true,"published_at":"2026-08-28T09:00:00+02:00"},{"title":"Stampare ricevute su stampante termica Bluetooth da B4A","url":"https://devrequest.it/richieste/b4x/stampare-ricevute-su-stampante-termica-bluetooth-da-b4a","category":"B4X","technologies":["Android","B4A","B4X"],"summary":"La nostra app B4A deve stampare ricevute e scontrini non fiscali su una stampante termica portatile Bluetooth da 58 mm. Con alcune stampanti escono caratteri strani e le lettere accentate non vengono stampate. App B4A usata da operatori sul campo con tre modelli di stampante. Obiettivo: Stampa affidabile e leggibile su tutti i modelli.","typical_approach":"Connessione Bluetooth seriale gestita con riconnessione, comandi ESC/POS per formattazione e tabella caratteri corretta, logo convertito in bitmap monocromatica e prova su ciascun modello.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":300,"max":800},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-08-26T09:00:00+02:00"},{"title":"Leggere le email degli ordini e creare le righe nel gestionale","url":"https://devrequest.it/richieste/email/leggere-le-email-degli-ordini-e-creare-le-righe-nel-gestionale","category":"Email","technologies":["Python","SQL Server"],"summary":"Diversi clienti ordinano ancora con email testuali che seguono più o meno sempre lo stesso schema, oppure allegano un Excel. Vorremmo leggere in automatico la casella ordini e preparare le bozze nel gestionale da far solo verificare. Casella condivisa con circa 40 ordini al giorno. Obiettivo: Meno digitazione e meno errori sugli ordini.","typical_approach":"Lettura della casella via IMAP, riconoscimento del cliente dal mittente, estrazione delle righe da testo o allegato e creazione della bozza d'ordine. Le email non interpretate restano in una cartella dedicata per la gestione manuale.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":400,"max":850},"indicative_hours":{"min":8,"max":16},"difficulty":"medium","is_example":true,"published_at":"2026-08-25T09:00:00+02:00"},{"title":"Programma Python per calcolare i turni del personale","url":"https://devrequest.it/richieste/python/programma-python-per-calcolare-i-turni-del-personale","category":"Python","technologies":["Python"],"summary":"Organizziamo i turni di 35 operatori su tre fasce orarie con vincoli di riposo, ferie e competenze. Oggi ci vuole un giorno intero ogni mese e spesso ci sono errori. Vorremmo una proposta automatica modificabile. Vincoli contrattuali e preferenze raccolti in un foglio. Obiettivo: Turni equi generati in pochi minuti.","typical_approach":"Modellazione dei vincoli come problema di ottimizzazione con un risolutore apposito, priorità tra vincoli obbligatori e preferenze, proposta modificabile manualmente e export del calendario.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":850,"max":2200},"indicative_hours":{"min":16,"max":40},"difficulty":"high","is_example":true,"published_at":"2026-08-24T09:00:00+02:00"},{"title":"Aggiungere login aziendale SSO con OAuth2 alla intranet","url":"https://devrequest.it/richieste/autenticazione-e-sso/aggiungere-login-aziendale-sso-con-oauth2-alla-intranet","category":"Autenticazione e SSO","technologies":["OAuth 2.0","PHP"],"summary":"La nostra intranet ha utenti e password separati da quelli aziendali e i dipendenti dimenticano continuamente le credenziali. Vorremmo permettere l'accesso con l'account aziendale già usato per la posta, mantenendo i ruoli definiti nella intranet. Intranet PHP con gestione utenti propria. L'azienda usa un provider di identità compatibile OpenID Connect. Obiettivo: Accesso unico, disattivazione…","typical_approach":"Implementazione del flusso Authorization Code con PKCE verso il provider OpenID Connect, associazione degli account esistenti tramite email verificata, mantenimento dei ruoli locali e gestione sicura di sessione e logout. Resta disponibile un accesso di emergenza per l'amministratore.","preparation_checklist":["Accesso amministrativo al provider di identità","URL della intranet (test e produzione)","Regole di mappatura dei ruoli","Elenco utenti attuali"],"indicative_cost_eur":{"min":350,"max":950},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2026-08-23T09:00:00+02:00"},{"title":"Ripulire anagrafiche clienti duplicate nel database MySQL","url":"https://devrequest.it/richieste/mysql-mariadb/ripulire-anagrafiche-clienti-duplicate-nel-database-mysql","category":"MySQL / MariaDB","technologies":["MySQL","PHP"],"summary":"Negli anni lo stesso cliente è stato inserito più volte con nomi scritti in modo diverso, partite IVA con spazi o indirizzi abbreviati. Vorremmo individuare i doppioni, unirli mantenendo lo storico degli ordini e impedire che si ripresentino. Circa 25.000 anagrafiche, ordini collegati tramite ID cliente. Obiettivo: Anagrafiche uniche con storico ordini integro.","typical_approach":"Normalizzazione di partita IVA, codice fiscale e indirizzi, individuazione dei possibili doppioni con regole condivise e revisione manuale dei casi dubbi. Unione con riassegnazione degli ordini e vincolo di unicità finale.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":300,"max":750},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-08-22T09:00:00+02:00"},{"title":"Generare fatture in PDF dal gestionale PHP con logo e numerazione","url":"https://devrequest.it/richieste/php/generare-fatture-in-pdf-dal-gestionale-php-con-logo-e-numerazione","category":"PHP","technologies":["MySQL","PHP"],"summary":"Le fatture proforma vengono ancora compilate in un foglio di calcolo e salvate in PDF a mano. Vorremmo generarle dal gestionale PHP con logo, dati cliente, righe, IVA e numerazione progressiva per anno. Gestionale PHP con anagrafiche e articoli su MySQL. Obiettivo: PDF coerenti e archiviati senza passaggi manuali.","typical_approach":"Template HTML/CSS stampabile convertito in PDF lato server, numerazione gestita in transazione per evitare duplicati, totali calcolati dal sistema e archiviazione del file generato collegata al documento.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":250,"max":650},"indicative_hours":{"min":5,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-08-21T09:00:00+02:00"},{"title":"Leggere codici a barre con la fotocamera in un'app B4A","url":"https://devrequest.it/richieste/b4x/leggere-codici-a-barre-con-la-fotocamera-in-un-app-b4a","category":"B4X","technologies":["B4A","B4X"],"summary":"Il magazzino usa un'app B4A per l'inventario ma i codici vanno digitati a mano. Vorremmo leggere codici EAN e QR con la fotocamera del telefono in modo rapido, anche con poca luce. App B4A esistente con lista articoli su SQLite. Obiettivo: Inventario più veloce e senza errori di digitazione.","typical_approach":"Integrazione di una libreria di scansione con anteprima fotocamera, attivazione della torcia, conferma sonora e vibrazione, ricerca immediata dell'articolo e gestione dei codici non trovati.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":250,"max":650},"indicative_hours":{"min":5,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-08-19T09:00:00+02:00"},{"title":"Inviare solleciti automatici per le fatture scadute","url":"https://devrequest.it/richieste/email/inviare-solleciti-automatici-per-le-fatture-scadute","category":"Email","technologies":["MySQL","Python"],"summary":"L'amministrazione dedica ore ogni settimana a scrivere solleciti per le fatture non pagate. Vorremmo un invio automatico a scadenze prestabilite, con testo diverso al primo e al secondo sollecito, escludendo i clienti con accordi particolari. Scadenzario esportabile dal gestionale su MySQL. Obiettivo: Solleciti puntuali senza lavoro manuale.","typical_approach":"Job giornaliero che individua le scadenze, applica le esclusioni e invia email personalizzate tramite SMTP autenticato. Registro degli invii consultabile e copia all'amministrazione.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":200,"max":460},"indicative_hours":{"min":4,"max":9},"difficulty":"low","is_example":true,"published_at":"2026-08-18T09:00:00+02:00"},{"title":"Dashboard interna in Python per indicatori di vendita","url":"https://devrequest.it/richieste/python/dashboard-interna-in-python-per-indicatori-di-vendita","category":"Python","technologies":["Python","SQL Server"],"summary":"La direzione vuole vedere ogni giorno fatturato, ordini aperti e margini per agente senza aspettare i report mensili. I dati sono nel gestionale su SQL Server. Database gestionale accessibile in sola lettura. Obiettivo: Indicatori aggiornati consultabili dal browser.","typical_approach":"Query di estrazione ottimizzate su utente in sola lettura, applicazione web interna con grafici e filtri per periodo e agente, cache dei risultati e accesso riservato agli utenti autorizzati.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":500,"max":1300},"indicative_hours":{"min":10,"max":24},"difficulty":"medium","is_example":true,"published_at":"2026-08-17T09:00:00+02:00"},{"title":"Ricevere webhook dal CRM e creare attività nel gestionale","url":"https://devrequest.it/richieste/webhook/ricevere-webhook-dal-crm-e-creare-attivita-nel-gestionale","category":"Webhook","technologies":["Node.js","REST API","Webhook"],"summary":"Quando un commerciale chiude una trattativa nel CRM vorremmo che nel gestionale venisse creata automaticamente la commessa con i dati del cliente, senza doverla ricopiare. Il CRM permette di inviare webhook, ma non sappiamo come riceverli in modo affidabile. CRM in cloud con webhook configurabili, gestionale con API REST interna. Obiettivo: Creazione automatica della commessa entro pochi secondi…","typical_approach":"Un piccolo servizio riceve il webhook, verifica la firma, salva l'evento e lo elabora in modo asincrono con ritentativi, così un errore temporaneo del gestionale non fa perdere dati. Si gestiscono duplicati (idempotenza) e si invia una notifica in caso di errore persistente.","preparation_checklist":["Documentazione webhook del CRM","Documentazione API del gestionale","Mappatura dei campi","Server o servizio cloud dove ospitare il ricevitore"],"indicative_cost_eur":{"min":150,"max":450},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-08-16T09:00:00+02:00"},{"title":"Errori di charset utf8mb4 con emoji nei commenti dei clienti","url":"https://devrequest.it/richieste/mysql-mariadb/errori-di-charset-utf8mb4-con-emoji-nei-commenti-dei-clienti","category":"MySQL / MariaDB","technologies":["MySQL","PHP"],"summary":"Quando un cliente inserisce un'emoji nel modulo di contatto il salvataggio fallisce con un errore di valore stringa non valido. Abbiamo provato a cambiare la codifica della tabella ma il problema rimane in alcune pagine. MySQL 5.7 con tabelle in utf8 e connessione PHP non configurata. Obiettivo: Testi con emoji salvati e mostrati correttamente.","typical_approach":"Allineamento a utf8mb4 di database, tabelle, colonne e connessione, con verifica della lunghezza massima degli indici. Test su tutti i moduli che scrivono testo libero.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":100,"max":320},"indicative_hours":{"min":2,"max":6},"difficulty":"low","is_example":true,"published_at":"2026-08-15T09:00:00+02:00"},{"title":"Area riservata clienti per scaricare documenti e fatture","url":"https://devrequest.it/richieste/php/area-riservata-clienti-per-scaricare-documenti-e-fatture","category":"PHP","technologies":["MySQL","PHP"],"summary":"I clienti ci chiedono continuamente via email copie di fatture, DDT e certificati. Vorremmo un'area riservata sul sito dove ciascun cliente accede e scarica solo i propri documenti, con notifica quando ne arriva uno nuovo. Documenti generati dal gestionale e salvati su cartella di rete. Obiettivo: Ridurre le richieste di documenti via email.","typical_approach":"Autenticazione con email e password robusta, collegamento dei documenti al codice cliente, download protetti senza URL indovinabili, notifiche email e log degli accessi per eventuali verifiche.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":600,"max":1600},"indicative_hours":{"min":12,"max":28},"difficulty":"medium","is_example":true,"published_at":"2026-08-14T09:00:00+02:00"},{"title":"Convertire un'app B4A esistente anche per iPhone con B4i","url":"https://devrequest.it/richieste/b4x/convertire-un-app-b4a-esistente-anche-per-iphone-con-b4i","category":"B4X","technologies":["B4A","B4i","B4X","iOS"],"summary":"Abbiamo un'app Android scritta in B4A che funziona bene, ma molti clienti usano iPhone. Vorremmo portarla su iOS con B4i riutilizzando il più possibile il codice e mantenendo un solo progetto. App B4A con circa 15 activity e librerie specifiche di Android. Obiettivo: App disponibile su entrambe le piattaforme.","typical_approach":"Analisi del codice condivisibile, riorganizzazione in progetto B4X multipiattaforma con B4XPages, sostituzione delle librerie solo Android con equivalenti, adattamento interfaccia e preparazione alla pubblicazione.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":1300,"max":3400},"indicative_hours":{"min":24,"max":60},"difficulty":"high","is_example":true,"published_at":"2026-08-12T09:00:00+02:00"},{"title":"Report settimanale degli ordini inviato in automatico alla direzione","url":"https://devrequest.it/richieste/email/report-settimanale-degli-ordini-inviato-in-automatico-alla-direzione","category":"Email","technologies":["Excel","PostgreSQL","Python"],"summary":"Ogni lunedì un collega estrae i dati degli ordini, prepara un foglio con alcuni grafici e lo invia ai responsabili. Vorremmo che lo stesso report arrivasse da solo, con gli stessi indicatori e il confronto con la settimana precedente. Dati ordini su PostgreSQL, server Linux disponibile. Obiettivo: Report puntuale ogni settimana senza interventi.","typical_approach":"Script pianificato che esegue le query concordate, genera un Excel con riepiloghi e grafici e lo invia ai destinatari configurati. Notifica all'amministratore in caso di errore nell'estrazione.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":150,"max":360},"indicative_hours":{"min":3,"max":7},"difficulty":"low","is_example":true,"published_at":"2026-08-11T09:00:00+02:00"},{"title":"Aggiornare un'applicazione WinForms da .NET Framework a .NET 8","url":"https://devrequest.it/richieste/c-sharp-e-net/aggiornare-un-applicazione-winforms-da-net-framework-a-net-8","category":"C# e .NET","technologies":["C#",".NET"],"summary":"Il nostro software gestionale desktop è scritto in C# WinForms su .NET Framework 4. Vorremmo portarlo su .NET 8 per avere prestazioni migliori, supporto a lungo termine e installazione più semplice. Soluzione con 6 progetti e alcuni componenti grafici di terze parti. Obiettivo: Applicazione su piattaforma supportata.","typical_approach":"Analisi di compatibilità delle librerie, migrazione dei progetti al nuovo formato, sostituzione dei componenti non supportati, test delle funzioni principali e nuovo pacchetto di installazione.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":1000,"max":2800},"indicative_hours":{"min":20,"max":50},"difficulty":"high","is_example":true,"published_at":"2026-08-10T09:00:00+02:00"},{"title":"Esporre come API REST un vecchio servizio SOAP","url":"https://devrequest.it/richieste/api-rest-e-soap/esporre-come-api-rest-un-vecchio-servizio-soap","category":"API REST e SOAP","technologies":["C#",".NET","REST API","SOAP"],"summary":"Un fornitore ci mette a disposizione solo un servizio SOAP per verificare disponibilità e prezzi. Le nostre nuove applicazioni lavorano in REST/JSON e lo sviluppatore dell'app mobile non vuole gestire XML. Ci serve un livello intermedio che traduca le chiamate. Servizio SOAP con WSDL disponibile e ambiente di test del fornitore. Obiettivo: API REST semplice e documentata che usa internamente il…","typical_approach":"Generazione del client dal WSDL, creazione di endpoint REST con modelli JSON puliti, gestione degli errori SOAP tradotti in codici HTTP chiari, cache delle risposte frequenti e timeout. Documentazione OpenAPI per gli sviluppatori che useranno il servizio.","preparation_checklist":["WSDL e credenziali di test","Elenco operazioni necessarie","Volumi di chiamate attesi","Dove ospitare il servizio"],"indicative_cost_eur":{"min":450,"max":1200},"indicative_hours":{"min":8,"max":20},"difficulty":"medium","is_example":true,"published_at":"2026-08-09T09:00:00+02:00"},{"title":"Colonne JSON in MySQL per gli attributi variabili dei prodotti","url":"https://devrequest.it/richieste/mysql-mariadb/colonne-json-in-mysql-per-gli-attributi-variabili-dei-prodotti","category":"MySQL / MariaDB","technologies":["Laravel","MySQL"],"summary":"I nostri prodotti hanno attributi molto diversi tra loro (taglie, materiali, potenze, dimensioni) e oggi abbiamo una tabella con decine di colonne quasi sempre vuote. Vorremmo passare a una struttura più flessibile, mantenendo la possibilità di filtrare. Applicazione Laravel su MySQL 8 con circa 12.000 prodotti. Obiettivo: Attributi flessibili e filtri ancora veloci.","typical_approach":"Migrazione degli attributi in una colonna JSON con validazione applicativa, colonne generate indicizzate per i filtri più usati e adeguamento delle query del catalogo. Script di migrazione reversibile.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":400,"max":950},"indicative_hours":{"min":8,"max":18},"difficulty":"medium","is_example":true,"published_at":"2026-08-08T09:00:00+02:00"},{"title":"Recupero password non funzionante nel portale PHP","url":"https://devrequest.it/richieste/php/recupero-password-non-funzionante-nel-portale-php","category":"PHP","technologies":["PHP"],"summary":"La funzione \"password dimenticata\" del nostro portale non invia più l'email, oppure il link ricevuto risulta scaduto. Diversi utenti restano bloccati e dobbiamo reimpostare le password a mano. Portale PHP con invio email tramite funzione mail() del server. Obiettivo: Recupero password sicuro e funzionante.","typical_approach":"Verifica dell'invio (passaggio a SMTP autenticato), token monouso con scadenza breve salvati in forma hash, messaggi che non rivelano se un'email è registrata e invalidazione delle sessioni dopo il cambio password.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":100,"max":300},"indicative_hours":{"min":2,"max":5},"difficulty":"low","is_example":true,"published_at":"2026-08-07T09:00:00+02:00"},{"title":"Migrare un progetto B4A dalle Activity a B4XPages","url":"https://devrequest.it/richieste/b4x/migrare-un-progetto-b4a-dalle-activity-a-b4xpages","category":"B4X","technologies":["B4A","B4X"],"summary":"La nostra app B4A ha molte Activity e diventa difficile da mantenere: lo stato si perde ruotando il telefono e il codice è duplicato. Vorremmo passare a B4XPages come base per i prossimi sviluppi. App con 12 Activity e logica mescolata all'interfaccia. Obiettivo: Codice più ordinato e base pronta per iOS.","typical_approach":"Creazione della struttura B4XPages, migrazione progressiva delle schermate con gestione dello stato, spostamento della logica in classi riutilizzabili e test di regressione schermata per schermata.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":650,"max":1700},"indicative_hours":{"min":12,"max":30},"difficulty":"medium","is_example":true,"published_at":"2026-08-05T09:00:00+02:00"},{"title":"Leggere con OCR le bolle di consegna scansionate","url":"https://devrequest.it/richieste/ai-e-ocr/leggere-con-ocr-le-bolle-di-consegna-scansionate","category":"AI e OCR","technologies":["OCR","Python"],"summary":"Il magazzino scansiona ogni giorno decine di DDT dei fornitori e poi un operatore ricopia numero documento, data e righe nel gestionale. Vorremmo estrarre questi dati in automatico lasciando all'operatore solo la verifica. Scansioni da multifunzione, formati diversi per fornitore. Obiettivo: Ridurre il tempo di registrazione delle bolle.","typical_approach":"Riconoscimento del testo con OCR, estrazione dei campi tramite regole per fornitore e controlli di coerenza su date e quantità. Schermata di verifica con i valori proposti e i campi a bassa affidabilità evidenziati.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":500,"max":1100},"indicative_hours":{"min":10,"max":22},"difficulty":"medium","is_example":true,"published_at":"2026-08-04T09:00:00+02:00"},{"title":"Servizio Windows in C# che sincronizza due database","url":"https://devrequest.it/richieste/c-sharp-e-net/servizio-windows-in-c-sharp-che-sincronizza-due-database","category":"C# e .NET","technologies":["C#","MySQL",".NET","SQL Server"],"summary":"Il gestionale è su SQL Server e il sito di vendita su MySQL. Oggi copiamo giacenze e prezzi con un'esportazione manuale. Vorremmo un servizio che giri sul server e li allinei ogni pochi minuti. Server Windows aziendale con accesso a entrambi i database. Obiettivo: Giacenze e prezzi allineati in automatico.","typical_approach":"Servizio Windows con sincronizzazione incrementale per data di modifica, gestione delle transazioni e dei riavvii, log consultabile e avviso via email in caso di errori ripetuti.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":500,"max":1300},"indicative_hours":{"min":10,"max":24},"difficulty":"medium","is_example":true,"published_at":"2026-08-03T09:00:00+02:00"},{"title":"Integrare il gestionale con un servizio di fatturazione elettronica","url":"https://devrequest.it/richieste/crm-erp/integrare-il-gestionale-con-un-servizio-di-fatturazione-elettronica","category":"CRM / ERP","technologies":["Fatturazione elettronica SDI","Python","REST API"],"summary":"Emettiamo circa 300 fatture al mese dal nostro gestionale e oggi le carichiamo a mano sul portale del provider di fatturazione elettronica. Vorremmo inviare le fatture automaticamente e ricevere nel gestionale lo stato (consegnata, scartata) e le fatture passive. Gestionale su misura con database relazionale; il provider offre API REST documentate. Obiettivo: Invio automatico delle fatture e…","typical_approach":"Generazione del file XML conforme al tracciato a partire dai dati del gestionale, validazione prima dell'invio, trasmissione tramite API del provider e polling o webhook per gli esiti. Le fatture passive vengono scaricate e registrate in una tabella di appoggio. Ogni passaggio è tracciato per eventuali verifiche.","preparation_checklist":["Documentazione API del provider","Esempi di fatture attuali","Struttura dati del gestionale","Ambiente di test del provider"],"indicative_cost_eur":{"min":600,"max":1500},"indicative_hours":{"min":10,"max":24},"difficulty":"medium","is_example":true,"published_at":"2026-08-02T09:00:00+02:00"},{"title":"Backup MariaDB a caldo con mariabackup e verifica del ripristino","url":"https://devrequest.it/richieste/mysql-mariadb/backup-mariadb-a-caldo-con-mariabackup-e-verifica-del-ripristino","category":"MySQL / MariaDB","technologies":["Bash","Linux","MariaDB"],"summary":"Oggi il backup del database viene fatto con un dump notturno che dura ore e blocca alcune tabelle. Non abbiamo mai provato a ripristinarlo. Vorremmo backup a caldo, conservati per un mese, e una prova periodica che funzionino davvero. Server Linux con MariaDB 10.11, database di circa 60 GB. Obiettivo: Backup affidabili e ripristino provato.","typical_approach":"Script con backup completo settimanale e incrementali giornalieri, rotazione e copia su storage esterno. Procedura di ripristino su server di prova eseguita periodicamente con esito registrato.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":200,"max":550},"indicative_hours":{"min":4,"max":10},"difficulty":"medium","is_example":true,"published_at":"2026-08-01T09:00:00+02:00"},{"title":"Migrare le query dalla vecchia estensione mysql a PDO","url":"https://devrequest.it/richieste/php/migrare-le-query-dalla-vecchia-estensione-mysql-a-pdo","category":"PHP","technologies":["MySQL","PHP"],"summary":"Il nostro applicativo usa ancora le funzioni mysql_query e concatena i parametri nelle query. Vogliamo passare a PDO con prepared statements per poter aggiornare PHP e chiudere i rischi di SQL injection. Circa 150 file PHP procedurali con query sparse nel codice. Obiettivo: Codice compatibile con PHP 8 e query parametrizzate.","typical_approach":"Censimento delle query, introduzione di un piccolo strato di accesso ai dati con PDO, conversione progressiva per modulo con prepared statements e test sulle funzioni principali dopo ogni blocco.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":400,"max":1300},"indicative_hours":{"min":8,"max":24},"difficulty":"medium","is_example":true,"published_at":"2026-07-31T09:00:00+02:00"},{"title":"App B4J desktop per gestire il magazzino su Windows","url":"https://devrequest.it/richieste/b4x/app-b4j-desktop-per-gestire-il-magazzino-su-windows","category":"B4X","technologies":["B4J","B4X","MySQL"],"summary":"Usiamo un vecchio programma Access per carichi, scarichi e inventario e vorremmo sostituirlo con un'applicazione desktop B4J che lavori su un database MySQL condiviso tra tre postazioni. Database Access con circa 20 tabelle e alcuni report. Obiettivo: Applicazione desktop moderna e multiutente.","typical_approach":"Migrazione dei dati su MySQL, applicazione B4J con interfaccia a schede, gestione concorrenza tra postazioni, report stampabili ed esportazione, pacchetto di installazione per Windows.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":1500,"max":3800},"indicative_hours":{"min":30,"max":70},"difficulty":"high","is_example":true,"published_at":"2026-07-29T09:00:00+02:00"},{"title":"Riassumere i verbali delle riunioni con un modello linguistico","url":"https://devrequest.it/richieste/ai-e-ocr/riassumere-i-verbali-delle-riunioni-con-un-modello-linguistico","category":"AI e OCR","technologies":["LLM / AI generativa","Python"],"summary":"Registriamo e trascriviamo le riunioni di progetto, ma nessuno ha tempo di leggere trascrizioni da venti pagine. Vorremmo ottenere un riassunto con decisioni prese, attività assegnate e scadenze, nello stesso formato ogni volta. Trascrizioni testuali salvate in una cartella condivisa. Obiettivo: Verbali sintetici e coerenti in pochi minuti.","typical_approach":"Elaborazione delle trascrizioni con un modello linguistico tramite istruzioni strutturate e suddivisione dei testi lunghi. Output in un modello fisso da rivedere prima della diffusione, con attenzione alla riservatezza dei contenuti inviati.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":300,"max":720},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-07-28T09:00:00+02:00"},{"title":"API ASP.NET Core per l'app dei clienti","url":"https://devrequest.it/richieste/c-sharp-e-net/api-asp-net-core-per-l-app-dei-clienti","category":"C# e .NET","technologies":["C#",".NET","REST API","SQL Server"],"summary":"Vogliamo offrire ai clienti un'app per consultare ordini, documenti e scadenze. I dati sono in SQL Server e il reparto IT conosce .NET. Serve un'API sicura e documentata da cui l'app possa leggere i dati. Database gestionale SQL Server, hosting su Windows o container. Obiettivo: API stabile e pronta per l'app.","typical_approach":"API ASP.NET Core con autenticazione a token, separazione dei dati per cliente, query ottimizzate, documentazione OpenAPI, limitazione delle richieste e pipeline di rilascio.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":1200,"max":3200},"indicative_hours":{"min":24,"max":56},"difficulty":"high","is_example":true,"published_at":"2026-07-27T09:00:00+02:00"},{"title":"Sviluppare un portale clienti per lo stato delle pratiche","url":"https://devrequest.it/richieste/web-application/sviluppare-un-portale-clienti-per-lo-stato-delle-pratiche","category":"Web application","technologies":["JavaScript","MySQL","PHP"],"summary":"Siamo uno studio professionale e riceviamo ogni giorno telefonate di clienti che chiedono a che punto è la loro pratica. Vorremmo un'area riservata dove ogni cliente vede lo stato, scarica i documenti e carica quelli richiesti. Le pratiche sono gestite oggi con un foglio Excel condiviso e cartelle di rete. Obiettivo: Ridurre le richieste telefoniche e lo scambio di documenti via email.","typical_approach":"Analisi dei tipi di pratica e degli stati, progettazione di un database dedicato, area riservata con accesso sicuro, upload/download documenti con permessi per cliente, notifiche email ai cambi di stato e pannello interno per lo studio. Si consiglia una prima versione essenziale da estendere dopo l'uso reale.","preparation_checklist":["Elenco tipi di pratica e stati","Numero indicativo di clienti","Esempio del foglio Excel attuale","Requisiti di conservazione dei documenti"],"indicative_cost_eur":{"min":2200,"max":5000},"indicative_hours":{"min":40,"max":90},"difficulty":"high","is_example":true,"published_at":"2026-07-26T09:00:00+02:00"},{"title":"Analizzare lo slow query log di MySQL dopo il lancio del nuovo sito","url":"https://devrequest.it/richieste/mysql-mariadb/analizzare-lo-slow-query-log-di-mysql-dopo-il-lancio-del-nuovo-sito","category":"MySQL / MariaDB","technologies":["MySQL","WooCommerce"],"summary":"Dopo la messa online del nuovo negozio WooCommerce il server del database lavora sempre al massimo e le pagine prodotto rallentano. Abbiamo attivato lo slow query log ma non sappiamo leggerlo né capire quali plugin causano il problema. WooCommerce con circa 8.000 prodotti e MySQL su server dedicato. Obiettivo: Individuare e ridurre le query più pesanti.","typical_approach":"Aggregazione del log per tipo di query, individuazione delle query più costose e del plugin di origine. Indici mirati sulle tabelle dei metadati, cache degli oggetti e verifica del carico dopo le modifiche.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":200,"max":550},"indicative_hours":{"min":4,"max":10},"difficulty":"medium","is_example":true,"published_at":"2026-07-25T09:00:00+02:00"},{"title":"Correggere caratteri accentati strani dopo il cambio server","url":"https://devrequest.it/richieste/php/correggere-caratteri-accentati-strani-dopo-il-cambio-server","category":"PHP","technologies":["MySQL","PHP"],"summary":"Dopo lo spostamento su un nuovo hosting le lettere accentate compaiono come simboli strani in alcune pagine e nei PDF esportati. I dati inseriti dopo il trasloco sembrano corretti, quelli vecchi no. Database MySQL con tabelle in latin1 e applicazione che dichiara UTF-8. Obiettivo: Testi corretti ovunque, vecchi e nuovi.","typical_approach":"Verifica della codifica a ogni livello (tabelle, connessione, pagine), conversione controllata dei dati in utf8mb4 su copia, allineamento della connessione e verifica a campione sui testi storici.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":100,"max":350},"indicative_hours":{"min":2,"max":6},"difficulty":"low","is_example":true,"published_at":"2026-07-24T09:00:00+02:00"},{"title":"Server B4J che espone API REST per le app B4A","url":"https://devrequest.it/richieste/b4x/server-b4j-che-espone-api-rest-per-le-app-b4a","category":"B4X","technologies":["B4J","B4X","MySQL","REST API"],"summary":"Le nostre app B4A accedono direttamente al database MySQL con credenziali salvate nell'app. Vorremmo un server B4J intermedio con API REST autenticate per non esporre più il database. Tre app B4A che leggono e scrivono le stesse tabelle. Obiettivo: Database non più raggiungibile dalle app.","typical_approach":"Server B4J con handler per le operazioni necessarie, autenticazione con token per utente, query parametrizzate e pool di connessioni, aggiornamento delle app e chiusura dell'accesso diretto al database.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":600,"max":1500},"indicative_hours":{"min":12,"max":28},"difficulty":"medium","is_example":true,"published_at":"2026-07-22T09:00:00+02:00"},{"title":"Estrarre i dati chiave dai contratti di fornitura con l'AI","url":"https://devrequest.it/richieste/ai-e-ocr/estrarre-i-dati-chiave-dai-contratti-di-fornitura-con-l-ai","category":"AI e OCR","technologies":["LLM / AI generativa","OCR","Python"],"summary":"Abbiamo centinaia di contratti di fornitura in PDF, alcuni scansionati. Vorremmo una tabella con fornitore, durata, scadenza, rinnovo tacito e penali, per non perdere più le date di disdetta. Archivio di circa 400 contratti in formati diversi. Obiettivo: Scadenze contrattuali sotto controllo.","typical_approach":"OCR per i documenti scansionati, estrazione dei campi con un modello linguistico e indicazione del passaggio di testo da cui proviene ogni valore. Revisione umana dei casi incerti e esportazione in un foglio con le scadenze ordinate.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":700,"max":1600},"indicative_hours":{"min":14,"max":30},"difficulty":"high","is_example":true,"published_at":"2026-07-21T09:00:00+02:00"},{"title":"Correggere crash casuali in un'applicazione WPF","url":"https://devrequest.it/richieste/c-sharp-e-net/correggere-crash-casuali-in-un-applicazione-wpf","category":"C# e .NET","technologies":["C#",".NET"],"summary":"La nostra applicazione WPF si chiude all'improvviso alcune volte al giorno, senza messaggi. Succede soprattutto quando si aprono più finestre di dettaglio contemporaneamente. Applicazione usata da 15 operatori, nessun log degli errori. Obiettivo: Causa individuata e crash eliminati.","typical_approach":"Gestione globale delle eccezioni con log dettagliato, analisi dei dump di memoria, verifica degli accessi all'interfaccia da thread secondari e delle risorse non rilasciate, correzione e periodo di osservazione.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":300,"max":850},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2026-07-20T09:00:00+02:00"},{"title":"Sistemare upload file che fallisce oltre i 2 MB","url":"https://devrequest.it/richieste/php/sistemare-upload-file-che-fallisce-oltre-i-2-mb","category":"PHP","technologies":["MySQL","PHP"],"summary":"Nel nostro gestionale i tecnici caricano le foto degli interventi. Da qualche tempo le foto scattate con i nuovi telefoni non vengono caricate: il modulo si ricarica senza errori ma il file non c'è. Con immagini piccole funziona. Applicazione PHP su server Linux gestito da noi, web server Apache. Obiettivo: Caricamento affidabile di foto fino a 15 MB con messaggio chiaro in caso di errore.","typical_approach":"Verifica dei limiti di PHP (upload_max_filesize, post_max_size), del web server e del codice; aggiunta della gestione esplicita degli errori di upload, controllo del tipo di file sul contenuto reale e ridimensionamento lato server per non riempire il disco.","preparation_checklist":["Accesso SSH al server","Esempio di file che non si carica","Percorso della cartella di upload"],"indicative_cost_eur":{"min":100,"max":350},"indicative_hours":{"min":2,"max":6},"difficulty":"low","is_example":true,"published_at":"2026-07-19T09:00:00+02:00"},{"title":"Progettare lo schema MySQL per un gestionale di noleggio attrezzature","url":"https://devrequest.it/richieste/mysql-mariadb/progettare-lo-schema-mysql-per-un-gestionale-di-noleggio-attrezzature","category":"MySQL / MariaDB","technologies":["MySQL"],"summary":"Stiamo per far sviluppare un piccolo gestionale per il noleggio di attrezzature edili e vorremmo partire da uno schema dati solido: articoli con matricola, contratti, uscite e rientri parziali, danni e fatturazione a giorni. Progetto nuovo, oggi tutto gestito su fogli di calcolo. Obiettivo: Schema dati documentato e pronto per lo sviluppo.","typical_approach":"Raccolta dei casi d'uso principali, modello entità-relazioni con vincoli per evitare doppie assegnazioni della stessa matricola e gestione dello storico. Consegna dello script di creazione e di un documento descrittivo.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":300,"max":750},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-07-18T09:00:00+02:00"},{"title":"Invio newsletter dal gestionale con disiscrizione e statistiche","url":"https://devrequest.it/richieste/php/invio-newsletter-dal-gestionale-con-disiscrizione-e-statistiche","category":"PHP","technologies":["MySQL","PHP"],"summary":"Vorremmo inviare comunicazioni periodiche ai clienti direttamente dal gestionale, rispettando i consensi registrati, con link di disiscrizione funzionante e un riepilogo di aperture ed errori di consegna. Circa 6.000 contatti con consenso marketing registrato nel gestionale. Obiettivo: Invii conformi e misurabili senza esportare liste.","typical_approach":"Integrazione con un servizio di invio transazionale, coda di spedizione a velocità controllata, gestione automatica di disiscrizioni e rimbalzi, statistiche sintetiche per campagna.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":400,"max":1000},"indicative_hours":{"min":8,"max":20},"difficulty":"medium","is_example":true,"published_at":"2026-07-17T09:00:00+02:00"},{"title":"Notifiche push con Firebase in un'app B4A e B4i","url":"https://devrequest.it/richieste/b4x/notifiche-push-con-firebase-in-un-app-b4a-e-b4i","category":"B4X","technologies":["B4A","B4i","B4X","Firebase"],"summary":"Vorremmo avvisare gli utenti della nostra app quando arriva un nuovo documento o cambia lo stato di una pratica. L'app è in B4X per Android e iPhone e il backend è in PHP. Backend PHP con eventi già registrati nel database. Obiettivo: Notifiche affidabili su entrambe le piattaforme.","typical_approach":"Configurazione Firebase Cloud Messaging per Android e iOS, registrazione dei token dispositivo sul backend, invio dal server con le API aggiornate, apertura della schermata corretta al tocco della notifica.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":300,"max":800},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-07-15T09:00:00+02:00"},{"title":"App Android in Kotlin per check-list di manutenzione con foto","url":"https://devrequest.it/richieste/android/app-android-in-kotlin-per-check-list-di-manutenzione-con-foto","category":"Android","technologies":["Android","Kotlin","REST API","SQLite"],"summary":"I nostri tecnici compilano ancora moduli cartacei durante le manutenzioni presso i clienti e poi li ricopiano in ufficio. Vorremmo un'app Android con check-list per tipo di impianto, foto allegate, firma del cliente e invio al gestionale anche quando la connessione torna disponibile. Circa 15 tecnici con smartphone Android aziendali. Obiettivo: Rapportini digitali completi e inviati in giornata.","typical_approach":"App nativa in Kotlin con salvataggio locale su database e coda di invio verso le API del gestionale. Le check-list vengono scaricate dal server per tipo di impianto, le foto compresse prima dell'upload.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":1200,"max":2600},"indicative_hours":{"min":24,"max":50},"difficulty":"medium","is_example":true,"published_at":"2026-07-14T09:00:00+02:00"},{"title":"Generare documenti Word da modelli in un programma C#","url":"https://devrequest.it/richieste/c-sharp-e-net/generare-documenti-word-da-modelli-in-un-programma-c-sharp","category":"C# e .NET","technologies":["C#",".NET"],"summary":"Compiliamo contratti e lettere copiando i dati dal gestionale in modelli Word. Vorremmo che il nostro programma C# compilasse automaticamente i modelli con i dati della pratica e salvasse anche il PDF. Modelli Word mantenuti dall'ufficio legale. Obiettivo: Documenti compilati senza copia manuale.","typical_approach":"Segnaposto nei modelli gestibili dall'ufficio, compilazione tramite libreria per documenti Office senza installare Word sul server, tabelle ripetute, conversione in PDF e archiviazione nella pratica.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":200,"max":550},"indicative_hours":{"min":4,"max":10},"difficulty":"low","is_example":true,"published_at":"2026-07-13T09:00:00+02:00"},{"title":"Rendere responsive e più veloce un gestionale web datato","url":"https://devrequest.it/richieste/frontend/rendere-responsive-e-piu-veloce-un-gestionale-web-datato","category":"Frontend","technologies":["AJAX","HTML/CSS","JavaScript"],"summary":"Il gestionale che usiamo in magazzino è stato pensato per monitor da ufficio: sui tablet i pulsanti sono minuscoli e le tabelle escono dallo schermo. Inoltre alcune pagine impiegano diversi secondi a caricarsi. Non vogliamo rifarlo da zero. Interfaccia HTML con tabelle, jQuery e chiamate AJAX verso un backend PHP. Obiettivo: Uso comodo da tablet nelle 10 schermate più usate e tempi di caricamento…","typical_approach":"Revisione del CSS con layout responsive, tabelle adattive e pulsanti adatti al touch sulle schermate prioritarie; analisi dei tempi di caricamento per ridurre script e richieste inutili e introdurre caricamento progressivo dei dati. Si interviene per gradi senza cambiare il funzionamento.","preparation_checklist":["Elenco schermate prioritarie","Modelli di tablet usati","Accesso a un ambiente di test"],"indicative_cost_eur":{"min":400,"max":1100},"indicative_hours":{"min":8,"max":20},"difficulty":"medium","is_example":true,"published_at":"2026-07-12T09:00:00+02:00"},{"title":"Ricerca full-text in italiano su PostgreSQL per il catalogo","url":"https://devrequest.it/richieste/postgresql/ricerca-full-text-in-italiano-su-postgresql-per-il-catalogo","category":"PostgreSQL","technologies":["PostgreSQL","Python"],"summary":"Il motore di ricerca interno del nostro catalogo trova solo le parole scritte esattamente come nel testo. Vorremmo che cercando \"tubi\" si trovasse anche \"tubo\" e che i risultati fossero ordinati per pertinenza, senza aggiungere un motore esterno. Applicazione Python su PostgreSQL 15 con circa 50.000 articoli. Obiettivo: Ricerca tollerante e ordinata per rilevanza.","typical_approach":"Colonna tsvector generata con configurazione italiana e pesi diversi per titolo e descrizione, indice GIN e ordinamento con ts_rank. Valutazione di pg_trgm per gli errori di battitura.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":300,"max":750},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-07-11T09:00:00+02:00"},{"title":"Ottimizzare un sito PHP lento nel caricamento delle pagine","url":"https://devrequest.it/richieste/php/ottimizzare-un-sito-php-lento-nel-caricamento-delle-pagine","category":"PHP","technologies":["MySQL","PHP","Redis"],"summary":"Le pagine del catalogo impiegano 4-5 secondi a caricarsi, soprattutto le categorie con molti prodotti. Il problema peggiora quando ci sono più visitatori contemporanei e influisce anche sul posizionamento. Sito PHP con catalogo di circa 15.000 prodotti su MySQL. Obiettivo: Tempi di risposta sotto il secondo nelle pagine principali.","typical_approach":"Profilazione delle richieste per individuare query ripetute e calcoli costosi, indici mirati, cache dei frammenti più richiesti, ottimizzazione delle immagini e verifica con misure prima/dopo.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":300,"max":900},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2026-07-10T09:00:00+02:00"},{"title":"Crash all'avvio dell'app B4A su Android 14","url":"https://devrequest.it/richieste/b4x/crash-all-avvio-dell-app-b4a-su-android-14","category":"B4X","technologies":["Android","B4A","B4X"],"summary":"Dopo l'aggiornamento di alcuni telefoni ad Android 14 la nostra app B4A si chiude subito all'apertura. Sui telefoni più vecchi continua a funzionare. App compilata con targetSdk vecchio e servizi in background. Obiettivo: App funzionante sulle versioni recenti di Android.","typical_approach":"Analisi dei log con il dispositivo collegato, aggiornamento di targetSdk e del manifest, adeguamento di servizi in primo piano, permessi e intent impliciti alle nuove regole e test su più versioni.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":180,"max":550},"indicative_hours":{"min":3,"max":10},"difficulty":"medium","is_example":true,"published_at":"2026-07-08T09:00:00+02:00"},{"title":"Correggere crash Kotlin su Android 14 dopo aggiornamento librerie","url":"https://devrequest.it/richieste/android/correggere-crash-kotlin-su-android-14-dopo-aggiornamento-librerie","category":"Android","technologies":["Android","Kotlin"],"summary":"Dopo aver aggiornato le dipendenze e il target SDK della nostra app, alcuni utenti con Android 14 segnalano chiusure improvvise all'apertura della schermata ordini. Sui dispositivi più vecchi tutto funziona e non riusciamo a riprodurre il problema in emulatore. App Kotlin pubblicata sul Play Store, report di crash disponibili in console. Obiettivo: Eliminare i crash sulla versione più recente di…","typical_approach":"Analisi degli stack trace dalla console e riproduzione su dispositivo o emulatore con la stessa versione. Verifica delle modifiche di comportamento introdotte dal nuovo target SDK, come permessi e servizi in background.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":200,"max":650},"indicative_hours":{"min":4,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-07-07T09:00:00+02:00"},{"title":"Comunicazione con PLC da un'applicazione .NET","url":"https://devrequest.it/richieste/c-sharp-e-net/comunicazione-con-plc-da-un-applicazione-net","category":"C# e .NET","technologies":["C#",".NET"],"summary":"Vorremmo leggere contatori, stati e allarmi dalle macchine della linea tramite i PLC e registrarli in un database, per avere i dati di produzione senza schede compilate a mano dagli operatori. PLC di reparto raggiungibili in rete locale. Obiettivo: Dati di produzione acquisiti in automatico.","typical_approach":"Verifica dei protocolli disponibili sui PLC, servizio .NET con lettura ciclica tramite libreria dedicata, buffer in caso di interruzioni, scrittura su database e allarmi per macchina non raggiungibile.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":850,"max":2200},"indicative_hours":{"min":16,"max":40},"difficulty":"high","is_example":true,"published_at":"2026-07-06T09:00:00+02:00"},{"title":"Realizzare un MVP per la prenotazione di sale e risorse","url":"https://devrequest.it/richieste/full-stack/realizzare-un-mvp-per-la-prenotazione-di-sale-e-risorse","category":"Full stack","technologies":["Node.js","PostgreSQL","Vue.js"],"summary":"Siamo una startup e vogliamo validare un servizio di prenotazione di sale riunioni e attrezzature per coworking. Ci serve una prima versione funzionante con calendario, prenotazione, pagamento e pannello per i gestori degli spazi. Abbiamo mockup grafici e un elenco di funzioni prioritarie. Nessun codice esistente. Obiettivo: MVP utilizzabile da 3-5 coworking pilota per raccogliere feedback.","typical_approach":"Definizione del perimetro minimo (calendario, prenotazione, conflitti, notifiche, pagamento), architettura semplice e facilmente estendibile, sviluppo iterativo con rilasci frequenti e ambiente di test condiviso. Le funzioni non essenziali vengono rimandate alla fase successiva.","preparation_checklist":["Mockup o wireframe","Elenco funzioni in ordine di priorità","Modello di pagamento previsto","Tempistiche del pilota"],"indicative_cost_eur":{"min":3000,"max":7500},"indicative_hours":{"min":60,"max":140},"difficulty":"high","is_example":true,"published_at":"2026-07-05T09:00:00+02:00"},{"title":"Autovacuum e bloat sulle tabelle più aggiornate in PostgreSQL","url":"https://devrequest.it/richieste/postgresql/autovacuum-e-bloat-sulle-tabelle-piu-aggiornate-in-postgresql","category":"PostgreSQL","technologies":["Linux","PostgreSQL"],"summary":"Lo spazio occupato dal database cresce molto più dei dati reali e alcune query rallentano nel corso della settimana. Ci hanno detto che potrebbe essere un problema di autovacuum ma non sappiamo come verificarlo né come intervenire. PostgreSQL 14 su Linux, tabelle con molti aggiornamenti al minuto. Obiettivo: Spazio sotto controllo e prestazioni stabili.","typical_approach":"Misura del bloat su tabelle e indici, analisi delle statistiche di autovacuum e delle transazioni lunghe che lo bloccano. Taratura dei parametri per tabella e recupero dello spazio in finestra programmata.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":300,"max":750},"indicative_hours":{"min":5,"max":12},"difficulty":"high","is_example":true,"published_at":"2026-07-04T09:00:00+02:00"},{"title":"Integrare la firma elettronica dei contratti nel portale PHP","url":"https://devrequest.it/richieste/php/integrare-la-firma-elettronica-dei-contratti-nel-portale-php","category":"PHP","technologies":["PHP","REST API"],"summary":"Inviamo i contratti in PDF via email e aspettiamo che tornino firmati e scansionati. Vorremmo che il cliente firmasse online tramite un servizio di firma elettronica e che il documento firmato tornasse in automatico nella pratica. Portale PHP che genera già i PDF dei contratti. Obiettivo: Contratti firmati e archiviati in pochi minuti.","typical_approach":"Integrazione con le API del provider di firma: invio del documento, gestione dei firmatari, ricezione dell'esito tramite webhook, archiviazione del file firmato e dello stato nella pratica.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":500,"max":1400},"indicative_hours":{"min":10,"max":24},"difficulty":"medium","is_example":true,"published_at":"2026-07-03T09:00:00+02:00"},{"title":"Aggiornare il targetSdk dell'app B4A per il Play Store","url":"https://devrequest.it/richieste/b4x/aggiornare-il-targetsdk-dell-app-b4a-per-il-play-store","category":"B4X","technologies":["Android","B4A","B4X"],"summary":"Google Play ci avvisa che la nostra app non potrà più ricevere aggiornamenti se non aumentiamo il livello API di destinazione. L'app è scritta in B4A e non la tocchiamo da due anni. Progetto B4A con alcune librerie non più aggiornate. Obiettivo: App conforme ai requisiti del Play Store.","typical_approach":"Aggiornamento dell'IDE e dell'SDK Android, adeguamento del manifest e dei permessi a runtime, sostituzione delle librerie incompatibili, test funzionale e caricamento della nuova versione.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":150,"max":450},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-07-01T09:00:00+02:00"},{"title":"Lettore barcode integrato su terminali Android rugged per magazzino","url":"https://devrequest.it/richieste/android/lettore-barcode-integrato-su-terminali-android-rugged-per-magazzino","category":"Android","technologies":["Android","Kotlin","REST API"],"summary":"Abbiamo acquistato terminali Android con scanner laser integrato e vorremmo che la nostra app di picking leggesse i codici direttamente dallo scanner, senza usare la fotocamera. Oggi gli operatori devono digitare il codice a mano quando la fotocamera non mette a fuoco. App Kotlin di picking già esistente, terminali con SDK del produttore. Obiettivo: Lettura immediata dei codici con il grilletto…","typical_approach":"Integrazione dell'SDK o degli intent di broadcast del produttore per ricevere le letture, gestione del focus sui campi corretti e feedback sonoro sull'esito. Fallback sulla fotocamera per i dispositivi senza scanner.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":500,"max":1300},"indicative_hours":{"min":10,"max":24},"difficulty":"medium","is_example":true,"published_at":"2026-06-30T09:00:00+02:00"},{"title":"Migrare un sito ASP.NET Web Forms verso ASP.NET Core","url":"https://devrequest.it/richieste/c-sharp-e-net/migrare-un-sito-asp-net-web-forms-verso-asp-net-core","category":"C# e .NET","technologies":["C#",".NET","SQL Server"],"summary":"Il nostro portale fornitori è in ASP.NET Web Forms e diventa difficile trovare chi lo mantenga. Vorremmo riscriverlo su ASP.NET Core mantenendo il database e le funzioni attuali. Circa 50 pagine, logica in parte nel code-behind. Obiettivo: Portale su tecnologia moderna e manutenibile.","typical_approach":"Censimento delle pagine e delle regole, estrazione della logica in servizi, nuove pagine con layout responsive, migrazione progressiva per sezioni con redirect dei vecchi indirizzi e test di accettazione.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":1500,"max":3800},"indicative_hours":{"min":30,"max":70},"difficulty":"high","is_example":true,"published_at":"2026-06-29T09:00:00+02:00"},{"title":"Gestire code e invio massivo di email senza bloccare il sito","url":"https://devrequest.it/richieste/backend/gestire-code-e-invio-massivo-di-email-senza-bloccare-il-sito","category":"Backend","technologies":["MySQL","PHP","Redis"],"summary":"Quando inviamo la newsletter mensile o le conferme di massa il nostro sito rallenta molto e a volte va in timeout, perché le email vengono inviate durante la richiesta web. Vorremmo spostare l'invio in background. Applicazione PHP con MySQL, circa 15.000 destinatari, invio tramite servizio SMTP esterno. Obiettivo: Invio in background con velocità controllata, sito sempre reattivo, report degli…","typical_approach":"Introduzione di una coda (su database o Redis) e di un worker eseguito da cron o supervisor che invia le email a lotti rispettando i limiti del provider, con ritentativi e registro di consegna. L'interfaccia mostra l'avanzamento dell'invio.","preparation_checklist":["Limiti di invio del provider SMTP","Accesso al server","Template email attuali"],"indicative_cost_eur":{"min":350,"max":950},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2026-06-28T09:00:00+02:00"},{"title":"Partizionamento dichiarativo per mese della tabella eventi PostgreSQL","url":"https://devrequest.it/richieste/postgresql/partizionamento-dichiarativo-per-mese-della-tabella-eventi-postgresql","category":"PostgreSQL","technologies":["PostgreSQL"],"summary":"La tabella degli eventi della nostra piattaforma IoT riceve milioni di righe al giorno. La cancellazione dei dati più vecchi di un anno è lentissima e le query sulle ultime ore iniziano a soffrire. Vorremmo partizionarla senza perdere dati. PostgreSQL 16, inserimenti continui da un servizio Node.js. Obiettivo: Archiviazione per mese e query recenti rapide.","typical_approach":"Creazione di una tabella partizionata per intervallo mensile, migrazione progressiva dei dati storici e creazione automatica delle partizioni future. Rimozione dei mesi scaduti tramite detach invece di DELETE.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":450,"max":1200},"indicative_hours":{"min":8,"max":20},"difficulty":"high","is_example":true,"published_at":"2026-06-27T09:00:00+02:00"},{"title":"Sistemare il carrello che perde i prodotti dopo il login","url":"https://devrequest.it/richieste/php/sistemare-il-carrello-che-perde-i-prodotti-dopo-il-login","category":"PHP","technologies":["JavaScript","PHP"],"summary":"Quando un cliente aggiunge prodotti al carrello senza essere registrato e poi effettua l'accesso, il carrello si svuota. Molti abbandonano l'acquisto proprio in quel momento. E-commerce PHP sviluppato su misura con sessioni su file. Obiettivo: Carrello conservato e unito dopo l'accesso.","typical_approach":"Analisi della gestione di sessione al login (rigenerazione dell'ID), unione del carrello anonimo con quello dell'utente, gestione dei prodotti duplicati e test sul percorso completo di acquisto.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":150,"max":450},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-06-26T09:00:00+02:00"},{"title":"Firma digitale del cliente sul tablet in app B4A","url":"https://devrequest.it/richieste/b4x/firma-digitale-del-cliente-sul-tablet-in-app-b4a","category":"B4X","technologies":["B4A","B4X"],"summary":"I nostri tecnici compilano il rapportino di intervento sul tablet ma il cliente deve ancora firmare un foglio. Vorremmo far firmare il cliente sullo schermo e allegare la firma al PDF del rapportino. App B4A per i tecnici con generazione PDF già presente. Obiettivo: Rapportini firmati senza carta.","typical_approach":"Area di firma con tracciamento fluido del tratto, pulsante cancella, salvataggio dell'immagine compressa, inserimento nel PDF con data e nome del firmatario e invio al gestionale.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":150,"max":450},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-06-24T09:00:00+02:00"},{"title":"Ridurre il consumo di batteria di un servizio di localizzazione Android","url":"https://devrequest.it/richieste/android/ridurre-il-consumo-di-batteria-di-un-servizio-di-localizzazione-android","category":"Android","technologies":["Android","Firebase","Kotlin"],"summary":"La nostra app per gli autisti invia la posizione ogni pochi secondi e a metà giornata la batteria è scarica. Alcuni autisti la disattivano e perdiamo il tracciamento delle consegne. Vorremmo mantenere una precisione sufficiente consumando molto meno. App Kotlin con servizio in primo piano e invio posizioni a Firebase. Obiettivo: Tracciamento affidabile per tutto il turno di lavoro.","typical_approach":"Misurazione del consumo attuale, intervalli adattivi in base a velocità e stato del veicolo, invio a blocchi invece che per singolo punto. Uso delle API di localizzazione con priorità bilanciata dove la precisione massima non serve.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":450,"max":1100},"indicative_hours":{"min":8,"max":20},"difficulty":"high","is_example":true,"published_at":"2026-06-23T09:00:00+02:00"},{"title":"Programma C# per stampare etichette su stampanti Zebra","url":"https://devrequest.it/richieste/c-sharp-e-net/programma-c-sharp-per-stampare-etichette-su-stampanti-zebra","category":"C# e .NET","technologies":["C#",".NET"],"summary":"Il magazzino deve stampare etichette con codice a barre, descrizione e ubicazione su stampanti Zebra di rete. Oggi usano un software separato e reinseriscono i dati. Gestionale interno in C#, tre stampanti di rete. Obiettivo: Etichette stampate direttamente dal gestionale.","typical_approach":"Modelli di etichetta nel linguaggio della stampante con campi variabili, invio diretto via rete, anteprima, gestione delle code e scelta della stampante per postazione.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":200,"max":550},"indicative_hours":{"min":4,"max":10},"difficulty":"low","is_example":true,"published_at":"2026-06-22T09:00:00+02:00"},{"title":"Generare automaticamente offerte commerciali in PDF","url":"https://devrequest.it/richieste/web-application/generare-automaticamente-offerte-commerciali-in-pdf","category":"Web application","technologies":["MySQL","PHP"],"summary":"I commerciali preparano le offerte copiando un modello Word e modificando a mano prezzi e condizioni, con frequenti errori. Vorremmo generare l'offerta in PDF direttamente dal gestionale con logo, righe articolo, sconti e condizioni standard. Gestionale PHP con anagrafiche clienti e articoli già presenti. Obiettivo: Offerta PDF coerente in pochi clic, numerata e archiviata.","typical_approach":"Creazione di un template HTML/CSS stampabile trasformato in PDF lato server, con numerazione progressiva, totali e IVA calcolati dal sistema e archiviazione del documento generato. Il modello resta modificabile senza toccare il codice.","preparation_checklist":["Modello di offerta attuale","Logo e testi standard","Regole di calcolo sconti e IVA"],"indicative_cost_eur":{"min":300,"max":800},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-06-21T09:00:00+02:00"},{"title":"Query PostgreSQL su colonne JSONB lente nei filtri del pannello","url":"https://devrequest.it/richieste/postgresql/query-postgresql-su-colonne-jsonb-lente-nei-filtri-del-pannello","category":"PostgreSQL","technologies":["Node.js","PostgreSQL"],"summary":"Salviamo le configurazioni dei dispositivi in una colonna JSONB e il pannello di amministrazione filtra su alcune chiavi interne. Con l'aumento dei record i filtri impiegano diversi secondi e a volte scadono. Backend Node.js su PostgreSQL con circa 2 milioni di record. Obiettivo: Filtri sul pannello sotto il secondo.","typical_approach":"Lettura dei piani di esecuzione, indici GIN o indici su espressioni per le chiavi più filtrate e riscrittura delle condizioni per sfruttarli. Valutazione dell'estrazione in colonne dedicate dei campi più usati.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":200,"max":550},"indicative_hours":{"min":4,"max":10},"difficulty":"medium","is_example":true,"published_at":"2026-06-20T09:00:00+02:00"},{"title":"Creare un pannello per gestire prenotazioni e calendario","url":"https://devrequest.it/richieste/php/creare-un-pannello-per-gestire-prenotazioni-e-calendario","category":"PHP","technologies":["JavaScript","MySQL","PHP"],"summary":"Gestiamo appuntamenti per tre sedi con un'agenda cartacea e telefonate. Vorremmo un calendario online dove i clienti prenotano gli slot liberi e lo staff vede, sposta o annulla gli appuntamenti. Nessun sistema esistente, sito istituzionale in PHP. Obiettivo: Prenotazioni online senza sovrapposizioni.","typical_approach":"Modello dati per sedi, risorse e slot, prevenzione delle doppie prenotazioni a livello di database, calendario per lo staff, email di conferma e promemoria, esportazione giornaliera.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":800,"max":2000},"indicative_hours":{"min":16,"max":36},"difficulty":"medium","is_example":true,"published_at":"2026-06-19T09:00:00+02:00"},{"title":"Tracciamento GPS dei mezzi con app B4A in background","url":"https://devrequest.it/richieste/b4x/tracciamento-gps-dei-mezzi-con-app-b4a-in-background","category":"B4X","technologies":["B4A","B4X","REST API"],"summary":"Vorremmo conoscere la posizione dei nostri furgoni durante le consegne tramite un'app installata sui telefoni degli autisti, senza consumare troppo la batteria e solo durante l'orario di lavoro. Telefoni Android aziendali, mappa da mostrare in ufficio. Obiettivo: Posizione aggiornata e storico dei percorsi.","typical_approach":"Servizio in primo piano con notifica visibile, campionamento adattivo in base al movimento, invio a blocchi con coda offline, rispetto degli orari e informativa privacy per i dipendenti.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":850,"max":2200},"indicative_hours":{"min":16,"max":40},"difficulty":"high","is_example":true,"published_at":"2026-06-17T09:00:00+02:00"},{"title":"App iOS in Swift per prenotare lezioni in palestra","url":"https://devrequest.it/richieste/ios/app-ios-in-swift-per-prenotare-lezioni-in-palestra","category":"iOS","technologies":["iOS","REST API","Swift"],"summary":"Gestiamo una palestra con corsi a numero chiuso e oggi le prenotazioni passano da un gruppo di messaggistica. Vorremmo un'app per iPhone dove gli iscritti vedono il calendario, prenotano o disdicono un posto e ricevono un promemoria prima della lezione. Gestionale web con API REST già disponibili per corsi e iscritti. Obiettivo: Prenotazioni ordinate senza gestione manuale dei posti.","typical_approach":"App nativa in Swift con interfaccia SwiftUI che consuma le API esistenti, autenticazione dell'iscritto e notifiche locali di promemoria. Controllo della disponibilità lato server per evitare prenotazioni oltre il limite.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":1500,"max":3200},"indicative_hours":{"min":30,"max":60},"difficulty":"medium","is_example":true,"published_at":"2026-06-16T09:00:00+02:00"},{"title":"Aggiornare l'installazione automatica di un software desktop .NET","url":"https://devrequest.it/richieste/c-sharp-e-net/aggiornare-l-installazione-automatica-di-un-software-desktop-net","category":"C# e .NET","technologies":["C#",".NET"],"summary":"Distribuiamo un software desktop a circa 200 clienti e ogni aggiornamento richiede l'invio di un nuovo installer. Vorremmo che il programma si aggiornasse da solo verificando la presenza di nuove versioni. Applicazione .NET con installer tradizionale. Obiettivo: Clienti sempre sull'ultima versione.","typical_approach":"Canale di aggiornamento con verifica della versione, pacchetti firmati digitalmente, download in background, installazione alla chiusura, possibilità di rimandare e di tornare alla versione precedente.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":250,"max":650},"indicative_hours":{"min":5,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-06-15T09:00:00+02:00"},{"title":"Correggere modulo di contatto che non invia più le richieste","url":"https://devrequest.it/richieste/javascript/correggere-modulo-di-contatto-che-non-invia-piu-le-richieste","category":"JavaScript","technologies":["HTML/CSS","JavaScript"],"summary":"Da circa due settimane non riceviamo più richieste dal modulo contatti del sito. Il modulo mostra il messaggio di conferma, ma le email non arrivano. Temiamo di aver perso diversi potenziali clienti. Sito vetrina con modulo in JavaScript che invia a uno script lato server. Obiettivo: Ricezione affidabile delle richieste e conferma reale dell'invio.","typical_approach":"Verifica della catena completa: script del modulo, endpoint lato server, configurazione di invio email (SPF/DKIM, mittente, provider). Si corregge l'errore, si aggiunge un salvataggio di sicurezza delle richieste e un messaggio di errore reale se l'invio fallisce.","preparation_checklist":["Accesso al sito e all'hosting","Indirizzo email di destinazione","Data approssimativa dell'ultimo messaggio ricevuto"],"indicative_cost_eur":{"min":100,"max":300},"indicative_hours":{"min":2,"max":6},"difficulty":"low","is_example":true,"published_at":"2026-06-14T09:00:00+02:00"},{"title":"Ruoli e permessi PostgreSQL separati per applicazione e analisti","url":"https://devrequest.it/richieste/postgresql/ruoli-e-permessi-postgresql-separati-per-applicazione-e-analisti","category":"PostgreSQL","technologies":["PostgreSQL"],"summary":"Oggi applicazione, sviluppatori e analisti si collegano al database con lo stesso utente amministratore. Vorremmo mettere ordine: utenti distinti, analisti in sola lettura e nessuno che possa cancellare tabelle per errore. Un database PostgreSQL con tre schemi applicativi. Obiettivo: Accessi separati con privilegi minimi.","typical_approach":"Definizione di ruoli di gruppo per lettura, scrittura e amministrazione, privilegi predefiniti sugli schemi e utenti nominativi associati. Revoca dell'uso dell'utente amministratore dalle applicazioni con passaggio graduale.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":150,"max":400},"indicative_hours":{"min":3,"max":7},"difficulty":"low","is_example":true,"published_at":"2026-06-13T09:00:00+02:00"},{"title":"Correggere errori di arrotondamento nei totali IVA","url":"https://devrequest.it/richieste/php/correggere-errori-di-arrotondamento-nei-totali-iva","category":"PHP","technologies":["MySQL","PHP"],"summary":"Il gestionale calcola totali IVA che differiscono di qualche centesimo da quelli del commercialista. La differenza compare soprattutto su documenti con molte righe e sconti percentuali. Calcoli fatti in PHP con numeri decimali in virgola mobile. Obiettivo: Totali corretti e coerenti con la normativa.","typical_approach":"Calcolo su importi interi in centesimi, regola di arrotondamento definita (per riga o per aliquota) concordata con l'amministrazione, test automatici sui casi segnalati e verifica sui documenti storici.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":150,"max":450},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-06-12T09:00:00+02:00"},{"title":"Comunicazione tra B4R su Arduino e app B4A via Bluetooth","url":"https://devrequest.it/richieste/b4x/comunicazione-tra-b4r-su-arduino-e-app-b4a-via-bluetooth","category":"B4X","technologies":["B4A","B4R","B4X"],"summary":"Abbiamo una scheda Arduino con sensori di temperatura scritta in B4R e vorremmo leggere i valori in tempo reale da un'app Android in B4A, con allarmi quando si superano le soglie. Scheda con modulo Bluetooth e firmware B4R di base. Obiettivo: Valori in tempo reale e allarmi sul telefono.","typical_approach":"Protocollo di messaggi semplice con controllo di integrità, gestione della connessione e della riconnessione su entrambi i lati, grafico dei valori nell'app e configurazione delle soglie salvata sulla scheda.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":500,"max":1300},"indicative_hours":{"min":10,"max":24},"difficulty":"medium","is_example":true,"published_at":"2026-06-10T09:00:00+02:00"},{"title":"Aggiornamento Swift rifiutato da App Store per permessi non motivati","url":"https://devrequest.it/richieste/ios/aggiornamento-swift-rifiutato-da-app-store-per-permessi-non-motivati","category":"iOS","technologies":["iOS","Swift"],"summary":"L'ultima versione della nostra app iOS è stata respinta in revisione perché chiede accesso a fotocamera e posizione senza spiegarne il motivo in modo chiaro. Dobbiamo pubblicare entro pochi giorni una correzione importante e non sappiamo cosa modificare esattamente. App Swift con progetto Xcode e account sviluppatore attivo. Obiettivo: Superare la revisione con la correzione in sospeso.","typical_approach":"Revisione delle chiavi di descrizione dei permessi nel file di configurazione, richiesta dei permessi solo nel momento in cui servono e rimozione di quelli non usati. Preparazione della risposta al team di revisione con le spiegazioni richieste.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":150,"max":420},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-06-09T09:00:00+02:00"},{"title":"Convertire un progetto VB.NET in C# mantenendo le funzioni","url":"https://devrequest.it/richieste/c-sharp-e-net/convertire-un-progetto-vb-net-in-c-sharp-mantenendo-le-funzioni","category":"C# e .NET","technologies":["C#",".NET","VB.NET"],"summary":"La nostra applicazione è scritta in VB.NET ma il nuovo team lavora in C#. Vorremmo convertirla per avere un unico linguaggio, senza cambiare il comportamento per gli utenti. Soluzione VB.NET con circa 80.000 righe di codice. Obiettivo: Codice in C# equivalente e verificato.","typical_approach":"Conversione assistita per progetti, revisione manuale delle parti con costrutti specifici del linguaggio, test di regressione sulle funzioni critiche e rilascio progressivo per moduli.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":1000,"max":2800},"indicative_hours":{"min":20,"max":50},"difficulty":"high","is_example":true,"published_at":"2026-06-08T09:00:00+02:00"},{"title":"Sessioni utente che scadono di continuo nel gestionale","url":"https://devrequest.it/richieste/php/sessioni-utente-che-scadono-di-continuo-nel-gestionale","category":"PHP","technologies":["CodeIgniter","MySQL","PHP"],"summary":"Gli operatori vengono disconnessi dal gestionale anche più volte all'ora e perdono i dati che stavano inserendo. Il problema è iniziato dopo lo spostamento su un nuovo server con bilanciamento del carico. Applicazione PHP su due server dietro un bilanciatore, sessioni salvate su file. Obiettivo: Sessioni stabili per l'intera giornata lavorativa, logout solo per inattività prolungata.","typical_approach":"Le sessioni su file locale non sono condivise tra i due server: si spostano su uno storage comune (database o Redis), si allineano durata del cookie e garbage collection, si verificano dominio e flag secure del cookie dietro il bilanciatore.","preparation_checklist":["Schema dell'infrastruttura","Configurazione del bilanciatore","Accesso ai server"],"indicative_cost_eur":{"min":350,"max":900},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2026-06-07T09:00:00+02:00"},{"title":"Point-in-time recovery PostgreSQL con archiviazione dei WAL","url":"https://devrequest.it/richieste/postgresql/point-in-time-recovery-postgresql-con-archiviazione-dei-wal","category":"PostgreSQL","technologies":["Bash","Linux","PostgreSQL"],"summary":"Il nostro unico backup è un dump notturno: se qualcosa va storto alle 17 perdiamo un'intera giornata di lavoro. Vorremmo poter ripristinare il database a un momento preciso della giornata, conservando i backup per almeno due settimane. PostgreSQL 15 su server Linux, storage di rete disponibile. Obiettivo: Ripristino a un istante preciso con procedura provata.","typical_approach":"Backup di base periodici con archiviazione continua dei WAL su storage separato, gestiti con uno strumento dedicato. Prova di ripristino a un orario scelto e documentazione passo per passo.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":350,"max":850},"indicative_hours":{"min":6,"max":14},"difficulty":"high","is_example":true,"published_at":"2026-06-06T09:00:00+02:00"},{"title":"Login a due fattori per gli utenti amministratori","url":"https://devrequest.it/richieste/php/login-a-due-fattori-per-gli-utenti-amministratori","category":"PHP","technologies":["PHP"],"summary":"Il pannello di amministrazione del nostro portale è protetto solo da utente e password. Dopo alcuni tentativi di accesso sospetti vorremmo aggiungere un secondo fattore per gli amministratori. Portale PHP con area amministrativa e pochi utenti staff. Obiettivo: Accesso amministrativo protetto da secondo fattore.","typical_approach":"Codici temporanei TOTP con app di autenticazione, codici di recupero monouso, limitazione dei tentativi, procedura di reimpostazione documentata e registro degli accessi.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":250,"max":650},"indicative_hours":{"min":5,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-06-05T09:00:00+02:00"},{"title":"Firmware B4R per ESP32 che invia dati a un server","url":"https://devrequest.it/richieste/b4x/firmware-b4r-per-esp32-che-invia-dati-a-un-server","category":"B4X","technologies":["B4R","B4X","REST API"],"summary":"Vorremmo installare alcune schede ESP32 nei capannoni per misurare temperatura e umidità e inviare i dati ogni pochi minuti al nostro server. Il firmware dovrebbe essere scritto in B4R. Rete Wi-Fi aziendale e server con API già disponibile. Obiettivo: Misure raccolte in modo continuo e affidabile.","typical_approach":"Firmware B4R con lettura sensori, connessione Wi-Fi con riconnessione automatica, invio con autenticazione, buffer locale in caso di rete assente e configurazione dei parametri senza ricompilare.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":500,"max":1300},"indicative_hours":{"min":10,"max":24},"difficulty":"medium","is_example":true,"published_at":"2026-06-03T09:00:00+02:00"},{"title":"Widget per schermata Home iPhone con dati di vendita giornalieri","url":"https://devrequest.it/richieste/ios/widget-per-schermata-home-iphone-con-dati-di-vendita-giornalieri","category":"iOS","technologies":["iOS","REST API","Swift"],"summary":"Il titolare e i responsabili di negozio vorrebbero vedere il venduto del giorno direttamente sulla schermata Home dell'iPhone, senza aprire l'app aziendale. Basterebbero incasso, numero di scontrini e confronto con lo stesso giorno della settimana precedente. App iOS aziendale esistente e API che restituiscono i totali per punto vendita. Obiettivo: Dati principali visibili a colpo d'occhio.","typical_approach":"Estensione widget in Swift condivisa con l'app principale, aggiornamento periodico tramite timeline e credenziali condivise in modo sicuro tra app ed estensione. Formati piccolo e medio con dati sintetici.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":400,"max":950},"indicative_hours":{"min":8,"max":18},"difficulty":"medium","is_example":true,"published_at":"2026-06-02T09:00:00+02:00"},{"title":"Convertire un frontend jQuery in TypeScript moderno","url":"https://devrequest.it/richieste/javascript/convertire-un-frontend-jquery-in-typescript-moderno","category":"JavaScript","technologies":["JavaScript","TypeScript"],"summary":"Il pannello del nostro gestionale web ha migliaia di righe di jQuery in file enormi e ogni modifica rompe qualcosa altrove. Vorremmo riorganizzarlo in TypeScript a moduli senza riscrivere tutto da zero. Backend PHP stabile, frontend cresciuto senza struttura. Obiettivo: Frontend manutenibile e tipizzato.","typical_approach":"Introduzione di uno strumento di build, suddivisione in moduli per funzione, tipizzazione progressiva partendo dalle API, rimozione graduale delle dipendenze da jQuery e test sulle interazioni principali.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":1000,"max":2800},"indicative_hours":{"min":20,"max":50},"difficulty":"high","is_example":true,"published_at":"2026-06-01T09:00:00+02:00"},{"title":"Ottimizzare query MySQL lente nel report vendite","url":"https://devrequest.it/richieste/ottimizzazione-sql/ottimizzare-query-mysql-lente-nel-report-vendite","category":"Ottimizzazione SQL","technologies":["MySQL","PHP"],"summary":"Il report mensile delle vendite impiega oltre due minuti a caricarsi e a volte va in timeout. Due anni fa era istantaneo: nel frattempo la tabella degli ordini è cresciuta fino a qualche milione di righe. Gli altri reparti lamentano rallentamenti quando qualcuno lancia il report. Database MySQL 8, applicazione PHP. Possiamo fornire la query e un dump anonimizzato. Obiettivo: Report sotto i 3…","typical_approach":"Analisi del piano di esecuzione (EXPLAIN), individuazione di scansioni complete e join non indicizzati, creazione di indici composti mirati e riscrittura delle parti inefficienti (subquery correlate, funzioni sulle colonne filtrate). Se serve, tabella di aggregazione aggiornata periodicamente per i dati storici.","preparation_checklist":["Testo della query o della pagina lenta","Dimensione delle tabelle coinvolte","Versione di MySQL","Dump anonimizzato o accesso a una copia"],"indicative_cost_eur":{"min":150,"max":450},"indicative_hours":{"min":3,"max":8},"difficulty":"medium","is_example":true,"published_at":"2026-05-31T09:00:00+02:00"},{"title":"Funzioni PL/pgSQL per il calcolo delle tariffe di spedizione","url":"https://devrequest.it/richieste/postgresql/funzioni-pl-pgsql-per-il-calcolo-delle-tariffe-di-spedizione","category":"PostgreSQL","technologies":["PHP","PostgreSQL"],"summary":"Le regole per calcolare il costo di spedizione (zone, peso volumetrico, supplementi per isole e contrassegno) sono duplicate in tre applicazioni diverse e danno risultati non sempre uguali. Vorremmo centralizzarle nel database. Database PostgreSQL condiviso da sito, gestionale e app interna. Obiettivo: Un unico calcolo coerente per tutti i sistemi.","typical_approach":"Tabelle di configurazione per zone e fasce, funzione PL/pgSQL che restituisce costo e dettaglio dei supplementi e test sui casi reali forniti. Sostituzione progressiva del calcolo nelle tre applicazioni.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":250,"max":650},"indicative_hours":{"min":5,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-05-30T09:00:00+02:00"},{"title":"Esportare report in Excel dal gestionale PHP","url":"https://devrequest.it/richieste/php/esportare-report-in-excel-dal-gestionale-php","category":"PHP","technologies":["Excel","MySQL","PHP"],"summary":"Gli uffici copiano le tabelle del gestionale in Excel per elaborarle. Vorremmo un pulsante di esportazione nelle liste principali che produca file Excel ben formattati, con filtri e totali. Liste di ordini, clienti e movimenti su MySQL. Obiettivo: Export pronti all'uso con un clic.","typical_approach":"Generazione di file xlsx lato server rispettando i filtri impostati, formati di data e valuta corretti, intestazioni bloccate, elaborazione in background per gli export molto grandi.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":150,"max":400},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-05-29T09:00:00+02:00"},{"title":"Sincronizzazione bidirezionale SQLite e SQL Server da B4A","url":"https://devrequest.it/richieste/b4x/sincronizzazione-bidirezionale-sqlite-e-sql-server-da-b4a","category":"B4X","technologies":["B4A","B4X","SQLite","SQL Server"],"summary":"La nostra app B4A lavora su un database SQLite locale e i dati devono allinearsi con il gestionale su SQL Server. A volte le modifiche fatte in ufficio vengono sovrascritte da quelle del tablet. Sincronizzazione attuale che copia intere tabelle. Obiettivo: Allineamento corretto senza perdite di modifiche.","typical_approach":"Tracciamento delle modifiche con data e versione per record, sincronizzazione incrementale nei due sensi tramite servizio intermedio, regole di risoluzione dei conflitti e registro delle operazioni.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":1000,"max":2600},"indicative_hours":{"min":20,"max":45},"difficulty":"high","is_example":true,"published_at":"2026-05-27T09:00:00+02:00"},{"title":"Login con Apple e Google nella nostra app iOS esistente","url":"https://devrequest.it/richieste/ios/login-con-apple-e-google-nella-nostra-app-ios-esistente","category":"iOS","technologies":["Firebase","iOS","OAuth 2.0","Swift"],"summary":"Gli utenti abbandonano la registrazione perché devono inventare una password. Vorremmo aggiungere l'accesso con Apple e Google mantenendo gli account già esistenti, così che chi si era registrato con email ritrovi i propri dati. App Swift con autenticazione Firebase tramite email e password. Obiettivo: Registrazione più rapida senza duplicare gli account.","typical_approach":"Configurazione dei provider in Firebase Authentication, integrazione dei pulsanti nativi nell'app e collegamento dei nuovi metodi agli account esistenti con la stessa email. Gestione dei casi in cui l'utente nasconde l'indirizzo.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":300,"max":750},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-05-26T09:00:00+02:00"},{"title":"Correggere memory leak in una dashboard JavaScript sempre aperta","url":"https://devrequest.it/richieste/javascript/correggere-memory-leak-in-una-dashboard-javascript-sempre-aperta","category":"JavaScript","technologies":["JavaScript"],"summary":"Usiamo una dashboard web sempre aperta sugli schermi del reparto che si aggiorna ogni 30 secondi. Dopo qualche ora diventa lenta e il browser va in crash. Grafici ricreati a ogni aggiornamento dei dati. Obiettivo: Dashboard stabile anche per giorni.","typical_approach":"Analisi della memoria con gli strumenti del browser, aggiornamento dei grafici esistenti invece di ricrearli, rimozione di listener e timer duplicati, limite agli storici in memoria.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":200,"max":650},"indicative_hours":{"min":4,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-05-25T09:00:00+02:00"},{"title":"SQL Server lento: query che vanno in timeout nel gestionale","url":"https://devrequest.it/richieste/sql-server/sql-server-lento-query-che-vanno-in-timeout-nel-gestionale","category":"SQL Server","technologies":["C#","SQL Server"],"summary":"Da qualche settimana il gestionale aziendale basato su SQL Server è diventato lentissimo in certe ore: l'apertura delle schede cliente richiede 20-30 secondi e alcune operazioni vanno in timeout. Il fornitore del gestionale dice che il problema è il server. SQL Server Standard su macchina virtuale Windows Server, circa 40 utenti contemporanei. Obiettivo: Individuare la causa reale e riportare i…","typical_approach":"Raccolta di metriche con le DMV e Query Store (query più costose, attese, blocchi), verifica di statistiche, frammentazione degli indici, memoria e tempdb. Si propongono indici mancanti, aggiornamento delle statistiche e piano di manutenzione, distinguendo i problemi del database da quelli dell'applicazione.","preparation_checklist":["Versione ed edizione di SQL Server","Accesso amministrativo al server SQL","Orari in cui si verificano i rallentamenti","Risorse della macchina virtuale"],"indicative_cost_eur":{"min":250,"max":700},"indicative_hours":{"min":4,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-05-24T09:00:00+02:00"},{"title":"Connessioni esaurite su PostgreSQL: configurare PgBouncer","url":"https://devrequest.it/richieste/postgresql/connessioni-esaurite-su-postgresql-configurare-pgbouncer","category":"PostgreSQL","technologies":["Docker","Linux","PostgreSQL"],"summary":"Nei momenti di traffico la nostra applicazione riceve errori perché il database ha raggiunto il numero massimo di connessioni. Aumentare il limite ha peggiorato l'uso della memoria. Ci hanno consigliato un connection pooler. Applicazione in container Docker con più repliche su PostgreSQL 15. Obiettivo: Nessun errore di connessione nei picchi.","typical_approach":"Installazione di PgBouncer in modalità transaction pooling, verifica della compatibilità dell'applicazione con prepared statement e sessioni. Dimensionamento del pool e monitoraggio delle code di attesa.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":200,"max":500},"indicative_hours":{"min":4,"max":9},"difficulty":"medium","is_example":true,"published_at":"2026-05-23T09:00:00+02:00"},{"title":"Rimuovere malware da un sito PHP compromesso","url":"https://devrequest.it/richieste/php/rimuovere-malware-da-un-sito-php-compromesso","category":"PHP","technologies":["Apache","PHP"],"summary":"Il sito reindirizza alcuni visitatori verso pagine pubblicitarie e il browser lo segnala come pericoloso. Abbiamo trovato file PHP sconosciuti nella cartella degli upload. Sito PHP su hosting condiviso, backup di tre settimane fa. Obiettivo: Sito pulito, causa individuata, segnalazione rimossa.","typical_approach":"Messa offline controllata, confronto con il backup e con i sorgenti originali, rimozione dei file malevoli, correzione della vulnerabilità sfruttata, cambio di tutte le credenziali e richiesta di revisione ai motori di ricerca.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":250,"max":800},"indicative_hours":{"min":4,"max":12},"difficulty":"high","is_example":true,"published_at":"2026-05-22T09:00:00+02:00"},{"title":"Generare report PDF dall'app B4A con tabelle e immagini","url":"https://devrequest.it/richieste/b4x/generare-report-pdf-dall-app-b4a-con-tabelle-e-immagini","category":"B4X","technologies":["B4A","B4X"],"summary":"Dalla nostra app di sopralluoghi in B4A vorremmo generare un report PDF con dati del cantiere, tabelle delle misure e foto scattate, da inviare al cliente subito dopo la visita. Foto e dati salvati nell'app su SQLite. Obiettivo: Report professionale generato sul posto.","typical_approach":"Generazione PDF con impaginazione multipagina, intestazione e piè di pagina, tabelle con interruzione di pagina, foto ridimensionate e condivisione del file via email o app di messaggistica.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":250,"max":650},"indicative_hours":{"min":5,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-05-20T09:00:00+02:00"},{"title":"App ibrida per ordini al tavolo con menu aggiornabile","url":"https://devrequest.it/richieste/app-ibride/app-ibrida-per-ordini-al-tavolo-con-menu-aggiornabile","category":"App ibride","technologies":["Firebase","React","TypeScript"],"summary":"Abbiamo due locali e vorremmo che i clienti ordinassero dal tavolo con il proprio telefono, scegliendo dal menu con foto e varianti. Gli ordini dovrebbero arrivare in cucina su un tablet, e il menu deve essere modificabile da noi senza ripubblicare l'app. Nessun sistema esistente, menu gestito oggi su file. Obiettivo: Ordini dal tavolo senza attese e senza errori di trascrizione.","typical_approach":"Applicazione ibrida in TypeScript con componenti React e database in tempo reale su Firebase. Pannello per la gestione del menu e schermata cucina con aggiornamento immediato degli ordini e dei loro stati.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":1250,"max":2800},"indicative_hours":{"min":25,"max":55},"difficulty":"medium","is_example":true,"published_at":"2026-05-19T09:00:00+02:00"},{"title":"Editor di planimetrie nel browser con trascinamento degli elementi","url":"https://devrequest.it/richieste/javascript/editor-di-planimetrie-nel-browser-con-trascinamento-degli-elementi","category":"JavaScript","technologies":["JavaScript","TypeScript"],"summary":"Organizziamo eventi e vorremmo un editor nel browser dove disegnare la sala, trascinare tavoli e sedie, numerare i posti e assegnare gli ospiti, con stampa della disposizione. Elenco ospiti già gestito in un portale web. Obiettivo: Disposizione della sala gestita online.","typical_approach":"Editor vettoriale con griglia, trascinamento, rotazione e duplicazione degli elementi, assegnazione dei posti, salvataggio delle versioni, esportazione per la stampa e uso fluido anche su tablet.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":1500,"max":3800},"indicative_hours":{"min":30,"max":70},"difficulty":"high","is_example":true,"published_at":"2026-05-18T09:00:00+02:00"},{"title":"Scrivere stored procedure SQL Server per il calcolo provvigioni","url":"https://devrequest.it/richieste/sql-server/scrivere-stored-procedure-sql-server-per-il-calcolo-provvigioni","category":"SQL Server","technologies":["SQL Server"],"summary":"Il calcolo delle provvigioni degli agenti viene fatto ogni mese su Excel estraendo i dati dal gestionale. Le regole sono complesse (scaglioni, prodotti esclusi, storni sui resi) e ogni mese ci sono contestazioni. Vorremmo una procedura nel database che faccia il calcolo in modo ripetibile. Database SQL Server del gestionale, possibilità di creare uno schema dedicato. Obiettivo: Calcolo…","typical_approach":"Formalizzazione delle regole con esempi numerici, creazione di tabelle di configurazione (scaglioni, esclusioni), stored procedure che calcola e salva il dettaglio riga per riga e una vista di riepilogo per agente. Test con i mesi passati confrontando i risultati con gli Excel esistenti.","preparation_checklist":["Regole di calcolo attuali","Excel di almeno due mesi già calcolati","Accesso a una copia del database"],"indicative_cost_eur":{"min":350,"max":900},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2026-05-17T09:00:00+02:00"},{"title":"Riscrivere query con subquery annidate nel report presenze","url":"https://devrequest.it/richieste/ottimizzazione-sql/riscrivere-query-con-subquery-annidate-nel-report-presenze","category":"Ottimizzazione SQL","technologies":["SQL Server","VB.NET"],"summary":"Il report mensile delle presenze del personale impiega oltre dieci minuti e a volte va in timeout. La query è stata scritta anni fa con molte subquery annidate e funzioni scalari per ogni riga. Vorremmo che girasse in tempi ragionevoli. Applicativo VB.NET su SQL Server con circa 300 dipendenti. Obiettivo: Report mensile in meno di un minuto.","typical_approach":"Analisi del piano di esecuzione, sostituzione delle funzioni scalari con join e aggregazioni, uso di CTE leggibili e indici di supporto. Confronto dei risultati con la versione attuale per garantire gli stessi totali.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":200,"max":550},"indicative_hours":{"min":4,"max":10},"difficulty":"medium","is_example":true,"published_at":"2026-05-16T09:00:00+02:00"},{"title":"Aggiungere la ricerca avanzata con filtri al catalogo","url":"https://devrequest.it/richieste/php/aggiungere-la-ricerca-avanzata-con-filtri-al-catalogo","category":"PHP","technologies":["JavaScript","MySQL","PHP"],"summary":"Il catalogo ha migliaia di articoli tecnici ma la ricerca trova solo corrispondenze esatte del nome. Servono filtri per marca, misura, materiale e disponibilità, combinabili tra loro. Catalogo PHP con attributi salvati in tabelle separate. Obiettivo: Clienti che trovano il prodotto in pochi passaggi.","typical_approach":"Indicizzazione degli attributi, filtri combinabili con conteggi aggiornati, ricerca testuale tollerante agli errori, URL dei filtri gestiti per non creare pagine duplicate indicizzabili.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":400,"max":1000},"indicative_hours":{"min":8,"max":18},"difficulty":"medium","is_example":true,"published_at":"2026-05-15T09:00:00+02:00"},{"title":"Interfaccia B4XPages con tema scuro e layout per tablet","url":"https://devrequest.it/richieste/b4x/interfaccia-b4xpages-con-tema-scuro-e-layout-per-tablet","category":"B4X","technologies":["B4A","B4i","B4X"],"summary":"La nostra app B4X ha un'interfaccia datata e su tablet gli elementi restano piccoli e ammassati in alto. Vorremmo rinnovarla con un tema chiaro e scuro e layout che si adattino allo schermo. App B4XPages per Android e iOS con layout fissi. Obiettivo: Interfaccia moderna su telefono e tablet.","typical_approach":"Layout con script di adattamento e ancoraggi, componenti XUI Views coerenti, gestione centralizzata dei colori per i due temi, icone vettoriali e verifica su più dimensioni di schermo.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":400,"max":1000},"indicative_hours":{"min":8,"max":18},"difficulty":"medium","is_example":true,"published_at":"2026-05-13T09:00:00+02:00"},{"title":"Notifiche push che non arrivano su iPhone nella app ibrida","url":"https://devrequest.it/richieste/app-ibride/notifiche-push-che-non-arrivano-su-iphone-nella-app-ibrida","category":"App ibride","technologies":["Firebase","iOS","JavaScript"],"summary":"La nostra app ibrida invia notifiche push correttamente su Android, ma sugli iPhone non arriva nulla da qualche settimana. Non abbiamo modificato il codice, ma potrebbe essere scaduto qualcosa nella configurazione. I clienti non ricevono più gli avvisi di spedizione. App ibrida in JavaScript con Firebase Cloud Messaging. Obiettivo: Notifiche funzionanti su entrambe le piattaforme.","typical_approach":"Verifica della chiave o del certificato APNs collegato a Firebase, delle capability del progetto iOS e della registrazione del token sul dispositivo. Test di invio mirato e controllo dei log di consegna.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":200,"max":550},"indicative_hours":{"min":4,"max":10},"difficulty":"medium","is_example":true,"published_at":"2026-05-12T09:00:00+02:00"},{"title":"Applicazione Node.js che genera report notturni dai database","url":"https://devrequest.it/richieste/javascript/applicazione-node-js-che-genera-report-notturni-dai-database","category":"JavaScript","technologies":["JavaScript","Node.js","PostgreSQL"],"summary":"Ogni mattina tre persone estraggono dati da due database per preparare i report di reparto. Vorremmo un'applicazione Node.js che li generi di notte e li invii per email in PDF ed Excel. Query di estrazione già scritte e collaudate. Obiettivo: Report pronti alla mattina senza intervento.","typical_approach":"Processo pianificato con configurazione dei report, esecuzione delle query con tempo massimo, generazione PDF ed Excel, invio ai destinatari e notifica degli errori al referente tecnico.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":400,"max":1000},"indicative_hours":{"min":8,"max":18},"difficulty":"medium","is_example":true,"published_at":"2026-05-11T09:00:00+02:00"},{"title":"Configurare backup automatici e piano di manutenzione SQL Server","url":"https://devrequest.it/richieste/sql-server/configurare-backup-automatici-e-piano-di-manutenzione-sql-server","category":"SQL Server","technologies":["SQL Server","Windows Server"],"summary":"Abbiamo scoperto che il database del gestionale non ha un backup da mesi: il job era stato disattivato durante un aggiornamento. Vogliamo backup affidabili, con copia fuori sede, e sapere subito se un backup fallisce. SQL Server su server fisico in sede, NAS disponibile, nessun DBA interno. Obiettivo: Backup completi e differenziali verificati, retention definita, avvisi via email.","typical_approach":"Definizione della strategia (completo, differenziale, log in base al recovery model), job pianificati con verifica, copia su NAS e su storage esterno, pulizia automatica secondo retention, notifiche email in caso di errore e una prova di ripristino documentata.","preparation_checklist":["Versione ed edizione SQL Server","Dimensione dei database","Destinazioni di backup disponibili","Tempo massimo accettabile di perdita dati"],"indicative_cost_eur":{"min":250,"max":600},"indicative_hours":{"min":4,"max":10},"difficulty":"medium","is_example":true,"published_at":"2026-05-10T09:00:00+02:00"},{"title":"Paginazione lenta nelle liste con OFFSET su tabelle grandi","url":"https://devrequest.it/richieste/ottimizzazione-sql/paginazione-lenta-nelle-liste-con-offset-su-tabelle-grandi","category":"Ottimizzazione SQL","technologies":["MySQL","PHP"],"summary":"Le liste del nostro pannello si aprono velocemente nelle prime pagine ma diventano lentissime andando avanti, soprattutto ordinando per data. Gli operatori sono costretti a filtrare in modo strano per trovare i record vecchi. Pannello PHP su MySQL con tabelle oltre 5 milioni di righe. Obiettivo: Navigazione fluida anche nelle pagine lontane.","typical_approach":"Passaggio alla paginazione per chiave (keyset) dove possibile, indici composti coerenti con ordinamento e filtri, conteggi totali stimati o calcolati a parte. Adeguamento dell'interfaccia alla nuova navigazione.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":200,"max":500},"indicative_hours":{"min":4,"max":9},"difficulty":"medium","is_example":true,"published_at":"2026-05-09T09:00:00+02:00"},{"title":"Gestire gli upload di immagini con ridimensionamento automatico","url":"https://devrequest.it/richieste/php/gestire-gli-upload-di-immagini-con-ridimensionamento-automatico","category":"PHP","technologies":["PHP"],"summary":"Gli operatori caricano foto prodotto direttamente dalla fotocamera, pesanti diversi megabyte, e le pagine diventano lentissime. Vorremmo ridimensionare e comprimere automaticamente le immagini al caricamento. Gestionale PHP con cartella immagini sul server. Obiettivo: Immagini leggere senza intervento manuale.","typical_approach":"Validazione del tipo reale dei file, generazione di più formati (miniatura, media, grande) con compressione adeguata, conversione in formati moderni dove supportati e script per sistemare le immagini già caricate.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":150,"max":400},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-05-08T09:00:00+02:00"},{"title":"Correggere la lentezza delle liste con molti elementi in B4A","url":"https://devrequest.it/richieste/b4x/correggere-la-lentezza-delle-liste-con-molti-elementi-in-b4a","category":"B4X","technologies":["B4A","B4X","SQLite"],"summary":"La lista clienti della nostra app B4A con circa 8.000 elementi impiega diversi secondi a comparire e lo scorrimento è a scatti. Il filtro di ricerca blocca l'interfaccia mentre si digita. Lista creata caricando tutti gli elementi all'avvio. Obiettivo: Lista fluida e ricerca immediata.","typical_approach":"Uso di una lista a caricamento progressivo che crea solo gli elementi visibili, query SQLite con indici e limite, ricerca con ritardo di digitazione ed esecuzione asincrona.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":200,"max":550},"indicative_hours":{"min":4,"max":10},"difficulty":"medium","is_example":true,"published_at":"2026-05-06T09:00:00+02:00"},{"title":"Migliorare la fluidità di liste lunghe in un'app ibrida TypeScript","url":"https://devrequest.it/richieste/app-ibride/migliorare-la-fluidita-di-liste-lunghe-in-un-app-ibrida-typescript","category":"App ibride","technologies":["React","TypeScript"],"summary":"Nella nostra app ibrida il catalogo con alcune migliaia di articoli scorre a scatti e su telefoni economici a volte si blocca per qualche secondo. Anche la ricerca rallenta mentre si digita. Vorremmo un'esperienza fluida anche sui dispositivi meno potenti. App in TypeScript con componenti React e immagini caricate da server. Obiettivo: Scorrimento e ricerca fluidi sul catalogo completo.","typical_approach":"Profilazione dei rendering, virtualizzazione delle liste, memorizzazione dei componenti e ritardo controllato sulla ricerca. Immagini in miniatura servite già ridimensionate e caricamento progressivo dei dati.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":300,"max":750},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-05-05T09:00:00+02:00"},{"title":"Interfaccia React per configurare prodotti con anteprima","url":"https://devrequest.it/richieste/frontend/interfaccia-react-per-configurare-prodotti-con-anteprima","category":"Frontend","technologies":["React","TypeScript"],"summary":"Vendiamo arredi componibili e vorremmo un configuratore web dove il cliente sceglie moduli, finiture e dimensioni vedendo un'anteprima aggiornata e il prezzo indicativo prima di inviare la richiesta. Regole di compatibilità tra moduli definite dall'ufficio tecnico. Obiettivo: Richieste complete e configurazioni valide.","typical_approach":"Interfaccia React con stato centralizzato della configurazione, regole di compatibilità fornite dal backend, anteprima a livelli con immagini o grafica vettoriale, salvataggio e condivisione della configurazione.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":1000,"max":2800},"indicative_hours":{"min":20,"max":50},"difficulty":"high","is_example":true,"published_at":"2026-05-04T09:00:00+02:00"},{"title":"Migrare un database da MySQL a PostgreSQL","url":"https://devrequest.it/richieste/migrazione-database/migrare-un-database-da-mysql-a-postgresql","category":"Migrazione database","technologies":["MySQL","PostgreSQL"],"summary":"Vogliamo portare la nostra applicazione da MySQL a PostgreSQL per usare funzionalità come JSONB e la ricerca full text. Il database ha circa 120 tabelle e alcune query usano costrutti specifici di MySQL. Non possiamo permetterci un fermo lungo. Applicazione PHP con query scritte a mano, database di circa 15 GB. Obiettivo: Migrazione completa con verifica dei dati e fermo inferiore a un'ora.","typical_approach":"Conversione dello schema (tipi, auto increment, indici, vincoli), migrazione dei dati con strumenti dedicati e verifica di conteggi e checksum, adeguamento delle query non compatibili, prove ripetute su copia e pianificazione del passaggio finale con sincronizzazione delle sole differenze.","preparation_checklist":["Dump dello schema","Elenco query o file SQL dell'applicazione","Finestra di manutenzione possibile","Server PostgreSQL di destinazione"],"indicative_cost_eur":{"min":900,"max":2400},"indicative_hours":{"min":16,"max":40},"difficulty":"high","is_example":true,"published_at":"2026-05-03T09:00:00+02:00"},{"title":"Portare il gestionale Access con tabelle collegate su SQL Server Express","url":"https://devrequest.it/richieste/migrazione-database/portare-il-gestionale-access-con-tabelle-collegate-su-sql-server-express","category":"Migrazione database","technologies":["Microsoft Access","SQL Server","Visual Basic 6"],"summary":"Usiamo da anni un programma fatto in Access con il file dati condiviso in rete. Con sei utenti contemporanei il file si corrompe spesso e dobbiamo ripararlo. Vorremmo spostare i dati su SQL Server Express mantenendo le maschere che i colleghi conoscono. Front-end Access con codice VBA e qualche componente VB6 di supporto. Obiettivo: Dati stabili su SQL Server senza cambiare l'interfaccia.","typical_approach":"Migrazione delle tabelle con tipi e chiavi corretti, collegamento tramite ODBC e revisione delle query più pesanti per eseguirle lato server. Test con più utenti contemporanei prima del passaggio definitivo.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":600,"max":1500},"indicative_hours":{"min":12,"max":28},"difficulty":"medium","is_example":true,"published_at":"2026-05-02T09:00:00+02:00"},{"title":"Integrare il gestionale con la PEC per l'invio dei documenti","url":"https://devrequest.it/richieste/php/integrare-il-gestionale-con-la-pec-per-l-invio-dei-documenti","category":"PHP","technologies":["PHP"],"summary":"Inviamo ogni settimana decine di comunicazioni ufficiali via PEC copiando allegati e indirizzi a mano. Vorremmo inviarle dal gestionale e salvare automaticamente ricevute di accettazione e consegna. Casella PEC aziendale con accesso SMTP e IMAP. Obiettivo: Invio tracciato e ricevute archiviate nella pratica.","typical_approach":"Invio tramite SMTP della casella certificata, lettura periodica delle ricevute via IMAP, collegamento delle ricevute al documento inviato e segnalazione delle mancate consegne.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":300,"max":800},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-05-01T09:00:00+02:00"},{"title":"Login biometrico con impronta digitale in app B4X","url":"https://devrequest.it/richieste/b4x/login-biometrico-con-impronta-digitale-in-app-b4x","category":"B4X","technologies":["B4A","B4i","B4X"],"summary":"Gli utenti della nostra app B4X devono reinserire la password ogni volta e si lamentano. Vorremmo permettere l'accesso con impronta digitale o riconoscimento del volto mantenendo la sicurezza. App con login verso API e token di sessione. Obiettivo: Accesso rapido e sicuro.","typical_approach":"Uso delle API biometriche di sistema su Android e iOS, conservazione del token nell'archivio sicuro del dispositivo, ritorno alla password se la biometria cambia e scadenza periodica obbligatoria.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":250,"max":650},"indicative_hours":{"min":5,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-04-29T09:00:00+02:00"},{"title":"Modalità offline per app ibrida di raccolta dati sul campo","url":"https://devrequest.it/richieste/app-ibride/modalita-offline-per-app-ibrida-di-raccolta-dati-sul-campo","category":"App ibride","technologies":["JavaScript","REST API","SQLite"],"summary":"I nostri rilevatori lavorano in zone di campagna senza copertura e l'app ibrida che usano smette di funzionare appena la rete cade. Vorremmo poter compilare le schede anche offline e sincronizzare tutto al rientro, senza perdere dati o creare doppioni. App ibrida in JavaScript che oggi salva direttamente via API. Obiettivo: Raccolta dati continua anche senza connessione.","typical_approach":"Archivio locale su SQLite con identificativi generati sul dispositivo, coda di sincronizzazione con ripresa automatica e gestione dei conflitti concordata. Indicatore chiaro dello stato di invio per l'operatore.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":800,"max":1900},"indicative_hours":{"min":16,"max":36},"difficulty":"high","is_example":true,"published_at":"2026-04-28T09:00:00+02:00"},{"title":"Rendere l'app web Vue utilizzabile offline","url":"https://devrequest.it/richieste/frontend/rendere-l-app-web-vue-utilizzabile-offline","category":"Frontend","technologies":["JavaScript","Vue.js"],"summary":"I nostri ispettori usano un'applicazione web Vue sui tablet nei cantieri, dove spesso la rete manca. Vorremmo che continuasse a funzionare offline e inviasse i dati appena torna la connessione. App Vue con API esistenti, nessuna gestione offline. Obiettivo: Compilazione delle ispezioni senza rete.","typical_approach":"Trasformazione in applicazione installabile con cache delle risorse, archivio locale dei dati e delle foto, coda di invio con ripresa, indicazione chiara dello stato di sincronizzazione e gestione dei conflitti.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":500,"max":1300},"indicative_hours":{"min":10,"max":24},"difficulty":"medium","is_example":true,"published_at":"2026-04-27T09:00:00+02:00"},{"title":"Migrare un database Access condiviso su SQL Server","url":"https://devrequest.it/richieste/migrazione-database/migrare-un-database-access-condiviso-su-sql-server","category":"Migrazione database","technologies":["Microsoft Access","SQL Server"],"summary":"Usiamo da anni un database Access condiviso in rete per gestire commesse e ore. Ora che siamo in 12 a usarlo si blocca spesso, si corrompe e dobbiamo ripararlo. Vorremmo spostare i dati su SQL Server mantenendo, almeno inizialmente, le maschere Access. File Access su cartella di rete, maschere e report usati quotidianamente. Obiettivo: Dati su SQL Server, nessuna corruzione, maschere esistenti…","typical_approach":"Migrazione delle tabelle su SQL Server con correzione di tipi e chiavi, collegamento delle tabelle dal front-end Access, ottimizzazione delle query più pesanti spostandole lato server e distribuzione di una copia del front-end per ogni utente. Piano di backup del nuovo database.","preparation_checklist":["Copia del file Access","Elenco maschere e report usati","Server Windows dove installare SQL Server"],"indicative_cost_eur":{"min":550,"max":1400},"indicative_hours":{"min":10,"max":24},"difficulty":"medium","is_example":true,"published_at":"2026-04-26T09:00:00+02:00"},{"title":"Migrare un CRM da MySQL a PostgreSQL con stored procedure","url":"https://devrequest.it/richieste/migrazione-database/migrare-un-crm-da-mysql-a-postgresql-con-stored-procedure","category":"Migrazione database","technologies":["MySQL","PostgreSQL","Python"],"summary":"Il nostro CRM interno gira su MySQL ma il resto dei sistemi aziendali usa PostgreSQL e vorremmo uniformare. Il database contiene una ventina di stored procedure, trigger e alcune viste usate dai report, oltre a circa dieci anni di dati. CRM sviluppato internamente in Python, database di circa 15 GB. Obiettivo: CRM funzionante su PostgreSQL con dati verificati.","typical_approach":"Conversione dello schema con attenzione a tipi, auto-incrementi e collation, riscrittura delle procedure in PL/pgSQL e migrazione dei dati con verifica dei conteggi. Prova completa in parallelo prima del passaggio.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":1000,"max":2600},"indicative_hours":{"min":20,"max":45},"difficulty":"high","is_example":true,"published_at":"2026-04-25T09:00:00+02:00"},{"title":"Rendere il gestionale multi-azienda con dati separati","url":"https://devrequest.it/richieste/php/rendere-il-gestionale-multi-azienda-con-dati-separati","category":"PHP","technologies":["MySQL","PHP"],"summary":"Il gestionale è stato sviluppato per una sola società, ma ora il gruppo ne ha tre. Vorremmo usare la stessa applicazione con dati separati per azienda e utenti che possono lavorare su più società. Applicazione PHP con circa 60 tabelle e numerazioni documento uniche. Obiettivo: Tre aziende gestite in un'unica installazione.","typical_approach":"Introduzione di un identificativo azienda su anagrafiche e documenti, filtri applicati a livello di accesso ai dati, numerazioni per azienda, permessi utente per società e migrazione dei dati esistenti.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":1600,"max":4000},"indicative_hours":{"min":30,"max":70},"difficulty":"high","is_example":true,"published_at":"2026-04-24T09:00:00+02:00"},{"title":"Integrare i pagamenti in-app in un'app B4A","url":"https://devrequest.it/richieste/b4x/integrare-i-pagamenti-in-app-in-un-app-b4a","category":"B4X","technologies":["Android","B4A","B4X"],"summary":"Vorremmo vendere la versione completa della nostra app B4A tramite acquisto in-app su Google Play, con sblocco delle funzioni e ripristino dell'acquisto su un nuovo telefono. App gratuita con funzioni base già pubblicata. Obiettivo: Acquisto e sblocco funzionanti e verificati.","typical_approach":"Integrazione della libreria di fatturazione di Google Play aggiornata, conferma degli acquisti, verifica lato server della ricevuta, ripristino degli acquisti e test con account di prova.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":400,"max":1000},"indicative_hours":{"min":8,"max":18},"difficulty":"medium","is_example":true,"published_at":"2026-04-22T09:00:00+02:00"},{"title":"Configurare Nginx e PHP-FPM su Ubuntu per più siti separati","url":"https://devrequest.it/richieste/linux-server/configurare-nginx-e-php-fpm-su-ubuntu-per-piu-siti-separati","category":"Linux server","technologies":["Bash","Linux","Nginx","PHP"],"summary":"Abbiamo un server Ubuntu nuovo e vogliamo ospitarci quattro siti PHP di clienti diversi. Vorremmo che ogni sito girasse con un proprio utente e un proprio pool PHP-FPM, così che un problema su uno non coinvolga gli altri, con certificati SSL rinnovati in automatico. Server Ubuntu LTS appena installato, accesso SSH disponibile. Obiettivo: Siti isolati, sicuri e facili da gestire.","typical_approach":"Virtual host Nginx separati, pool PHP-FPM dedicati con utenti distinti e permessi minimi sulle cartelle. Certificati gratuiti con rinnovo automatico, firewall di base e documentazione delle procedure per aggiungere un sito.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":250,"max":650},"indicative_hours":{"min":5,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-04-21T09:00:00+02:00"},{"title":"Ridisegnare il frontend del gestionale con un design system","url":"https://devrequest.it/richieste/frontend/ridisegnare-il-frontend-del-gestionale-con-un-design-system","category":"Frontend","technologies":["HTML/CSS","JavaScript"],"summary":"Il nostro gestionale web è cresciuto negli anni con pagine dallo stile diverso: pulsanti, tabelle e moduli cambiano da sezione a sezione. Vorremmo uniformarlo con componenti riutilizzabili. Circa 80 pagine con fogli di stile sovrapposti. Obiettivo: Interfaccia coerente e più semplice da evolvere.","typical_approach":"Definizione di colori, tipografia e spaziature come variabili, libreria di componenti documentata, applicazione progressiva alle pagine più usate e rimozione degli stili non più necessari.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":800,"max":2000},"indicative_hours":{"min":16,"max":36},"difficulty":"medium","is_example":true,"published_at":"2026-04-20T09:00:00+02:00"},{"title":"Importare listini fornitori da Excel nel database prodotti","url":"https://devrequest.it/richieste/import-export-dati/importare-listini-fornitori-da-excel-nel-database-prodotti","category":"Import / export dati","technologies":["Excel","MySQL","PHP"],"summary":"Ogni mese riceviamo da cinque fornitori i listini in Excel, ognuno con un formato diverso. Oggi li ricopiamo a mano nel gestionale e servono due giorni. Vorremmo caricare il file e aggiornare prezzi e codici automaticamente, con un riepilogo delle differenze. Gestionale PHP con database MySQL, listini da 500 a 8.000 righe. Obiettivo: Import in pochi minuti con anteprima delle modifiche prima…","typical_approach":"Definizione di una mappatura colonne per ciascun fornitore, lettura del file lato server, validazione (codici, prezzi, duplicati), anteprima delle differenze rispetto ai prezzi attuali e conferma esplicita. Ogni import viene registrato per poter risalire alle modifiche.","preparation_checklist":["Un listino di esempio per ogni fornitore","Struttura della tabella prodotti","Regole di arrotondamento e ricarico"],"indicative_cost_eur":{"min":150,"max":400},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-04-19T09:00:00+02:00"},{"title":"Importare movimenti bancari CSV e riconciliarli con le fatture","url":"https://devrequest.it/richieste/import-export-dati/importare-movimenti-bancari-csv-e-riconciliarli-con-le-fatture","category":"Import / export dati","technologies":["Excel","PostgreSQL","Python"],"summary":"Ogni settimana scarichiamo gli estratti conto di tre banche in formati CSV diversi e li confrontiamo a mano con le fatture aperte. Vorremmo importarli in un unico database e proporre in automatico gli abbinamenti più probabili. Fatture esportate dal gestionale, tre banche con tracciati differenti. Obiettivo: Riconciliazione semi-automatica dei pagamenti.","typical_approach":"Importatori per ciascun tracciato con normalizzazione di date, importi e causali, regole di abbinamento per importo e riferimento fattura. Elenco dei casi dubbi da confermare a mano ed esportazione dei risultati in Excel.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":400,"max":950},"indicative_hours":{"min":8,"max":18},"difficulty":"medium","is_example":true,"published_at":"2026-04-18T09:00:00+02:00"},{"title":"Correggere i cron che non partono più dopo il trasloco","url":"https://devrequest.it/richieste/php/correggere-i-cron-che-non-partono-piu-dopo-il-trasloco","category":"PHP","technologies":["Linux","PHP"],"summary":"Dopo il passaggio al nuovo server non vengono più inviati i solleciti di pagamento e non si aggiornano i cambi valuta. Sospettiamo che le operazioni pianificate non siano state configurate. Script PHP lanciati da cron sul vecchio server. Obiettivo: Operazioni pianificate di nuovo attive e monitorate.","typical_approach":"Ricostruzione dell'elenco delle attività pianificate, configurazione sul nuovo server con utente e percorsi corretti, log di esecuzione e avviso via email in caso di errore.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":100,"max":300},"indicative_hours":{"min":2,"max":5},"difficulty":"low","is_example":true,"published_at":"2026-04-17T09:00:00+02:00"},{"title":"App B4i rifiutata dall'App Store da correggere","url":"https://devrequest.it/richieste/b4x/app-b4i-rifiutata-dall-app-store-da-correggere","category":"B4X","technologies":["B4i","B4X","iOS"],"summary":"La nostra app scritta in B4i è stata rifiutata in revisione per motivi legati a permessi senza descrizione e a un pulsante di login che non funziona per i revisori. Non sappiamo come procedere. App B4i con accesso riservato a utenti registrati. Obiettivo: App approvata e pubblicata.","typical_approach":"Analisi delle motivazioni del rifiuto, descrizioni dei permessi nel file di configurazione, account demo per i revisori, correzione del flusso di login e risposta motivata nel centro di risoluzione.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":200,"max":650},"indicative_hours":{"min":4,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-04-15T09:00:00+02:00"},{"title":"Mettere in sicurezza accesso SSH e aggiornamenti su server Linux","url":"https://devrequest.it/richieste/linux-server/mettere-in-sicurezza-accesso-ssh-e-aggiornamenti-su-server-linux","category":"Linux server","technologies":["Bash","Linux"],"summary":"Nei log del nostro server vediamo migliaia di tentativi di accesso SSH al giorno e l'accesso è ancora con password per l'utente root. Vorremmo chiudere queste porte prima che succeda qualcosa e impostare gli aggiornamenti di sicurezza automatici. VPS Debian con un gestionale web in produzione. Obiettivo: Accesso remoto protetto e sistema aggiornato.","typical_approach":"Accesso solo con chiavi per un utente dedicato, disabilitazione del login root, blocco automatico degli indirizzi dopo tentativi falliti e firewall con le sole porte necessarie. Aggiornamenti di sicurezza non presidiati con notifica.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":150,"max":380},"indicative_hours":{"min":3,"max":7},"difficulty":"low","is_example":true,"published_at":"2026-04-14T09:00:00+02:00"},{"title":"Portale per la gestione delle manutenzioni degli impianti","url":"https://devrequest.it/richieste/full-stack/portale-per-la-gestione-delle-manutenzioni-degli-impianti","category":"Full stack","technologies":["MySQL","PHP","Vue.js"],"summary":"Gestiamo la manutenzione di circa 600 impianti presso i clienti con fogli Excel e calendari condivisi. Vorremmo un portale con anagrafica impianti, scadenze periodiche, interventi, tecnici assegnati e storico. Dati iniziali in Excel, tecnici con smartphone. Obiettivo: Nessuna scadenza dimenticata e storico completo.","typical_approach":"Modello dati per impianti, piani di manutenzione e interventi, generazione automatica delle scadenze, calendario dei tecnici, rapportino da mobile, import iniziale dei dati e report per cliente.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":2000,"max":4500},"indicative_hours":{"min":40,"max":70},"difficulty":"high","is_example":true,"published_at":"2026-04-13T09:00:00+02:00"},{"title":"Deduplicare e normalizzare l'anagrafica clienti","url":"https://devrequest.it/richieste/import-export-dati/deduplicare-e-normalizzare-l-anagrafica-clienti","category":"Import / export dati","technologies":["Python","SQL Server"],"summary":"Nel nostro database ci sono migliaia di clienti duplicati: stesso cliente scritto in modi diversi, partite IVA mancanti, indirizzi incompleti. Le statistiche di vendita sono inaffidabili e i solleciti arrivano due volte. Vorremmo pulire l'anagrafica senza perdere lo storico degli ordini. Circa 25.000 anagrafiche su SQL Server, ordini collegati tramite chiave cliente. Obiettivo: Anagrafica pulita…","typical_approach":"Individuazione dei duplicati con regole su partita IVA, email e somiglianza del nome, revisione dei casi dubbi da parte vostra, unione dei record con spostamento degli ordini sul record principale, normalizzazione di indirizzi e province e vincoli per prevenire nuovi duplicati.","preparation_checklist":["Copia del database o export anagrafiche","Regole su quale record mantenere","Persona di riferimento per i casi dubbi"],"indicative_cost_eur":{"min":300,"max":800},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-04-12T09:00:00+02:00"},{"title":"Esportare ogni giorno anagrafiche e giacenze verso il portale B2B","url":"https://devrequest.it/richieste/import-export-dati/esportare-ogni-giorno-anagrafiche-e-giacenze-verso-il-portale-b2b","category":"Import / export dati","technologies":["C#","REST API","SQL Server"],"summary":"Il nostro portale B2B per i rivenditori mostra giacenze e prezzi aggiornati a mano una volta alla settimana. Vorremmo che ogni giorno i dati partissero dal database del gestionale verso le API del portale, segnalando gli articoli scartati. Gestionale su SQL Server, portale con API REST documentate. Obiettivo: Giacenze e prezzi aggiornati ogni giorno sul portale.","typical_approach":"Servizio pianificato che estrae solo i dati variati, li trasforma nel formato richiesto e li invia a blocchi gestendo errori e ripetizioni. Registro degli invii e riepilogo giornaliero degli scarti.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":400,"max":950},"indicative_hours":{"min":8,"max":18},"difficulty":"medium","is_example":true,"published_at":"2026-04-11T09:00:00+02:00"},{"title":"Portale per la raccolta di candidature con caricamento CV","url":"https://devrequest.it/richieste/php/portale-per-la-raccolta-di-candidature-con-caricamento-cv","category":"PHP","technologies":["MySQL","PHP"],"summary":"Riceviamo candidature per email in formati diversi e le perdiamo facilmente. Vorremmo un modulo sul sito con caricamento del CV, consenso privacy e un pannello per valutare e filtrare i candidati. Sito aziendale in PHP, ufficio personale di due persone. Obiettivo: Candidature ordinate e conservate secondo le regole privacy.","typical_approach":"Modulo con validazione e caricamento sicuro dei file, consenso e durata di conservazione registrati, pannello con stati della selezione e cancellazione automatica dopo la scadenza.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":500,"max":1300},"indicative_hours":{"min":10,"max":24},"difficulty":"medium","is_example":true,"published_at":"2026-04-10T09:00:00+02:00"},{"title":"Chiamare servizi SOAP del gestionale da un'app B4A","url":"https://devrequest.it/richieste/b4x/chiamare-servizi-soap-del-gestionale-da-un-app-b4a","category":"B4X","technologies":["B4A","B4X","SOAP"],"summary":"Il gestionale del nostro cliente espone solo servizi SOAP e la nostra app B4A deve leggere disponibilità e inviare ordini. Le prime prove restituiscono errori di formato che non riusciamo a interpretare. Servizi SOAP con WSDL e autenticazione base. Obiettivo: Lettura e invio dati stabili dall'app.","typical_approach":"Analisi del WSDL e delle chiamate di esempio, costruzione delle buste XML corrette, parsing delle risposte con gestione degli errori, oppure piccolo servizio intermedio REST se il formato è troppo complesso.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":300,"max":850},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2026-04-08T09:00:00+02:00"},{"title":"Pubblicare applicazione .NET su IIS con certificato e riavvii puliti","url":"https://devrequest.it/richieste/windows-server/pubblicare-applicazione-net-su-iis-con-certificato-e-riavvii-puliti","category":"Windows Server","technologies":["C#",".NET","Windows Server"],"summary":"Il nostro portale interno in .NET viene pubblicato copiando i file a mano sul server IIS e ogni volta gli utenti vedono errori per qualche minuto. Inoltre il certificato va rinnovato a mano e l'anno scorso è scaduto senza che nessuno se ne accorgesse. Windows Server con IIS e applicazione ASP.NET Core. Obiettivo: Pubblicazioni senza interruzioni e certificato sempre valido.","typical_approach":"Configurazione del pool applicativo e della pubblicazione tramite pagina di manutenzione temporanea o cartelle alternate. Rinnovo automatico del certificato e avviso in anticipo sulla scadenza.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":200,"max":550},"indicative_hours":{"min":4,"max":10},"difficulty":"medium","is_example":true,"published_at":"2026-04-07T09:00:00+02:00"},{"title":"MVP di una piattaforma di prenotazione per corsi","url":"https://devrequest.it/richieste/full-stack/mvp-di-una-piattaforma-di-prenotazione-per-corsi","category":"Full stack","technologies":["Laravel","Stripe","Vue.js"],"summary":"Vogliamo lanciare una piattaforma dove alcune palestre pubblicano i propri corsi e gli utenti prenotano e pagano online. Prima di investire molto vorremmo una versione minima da provare con tre palestre. Idea validata con alcuni gestori, nessun software esistente. Obiettivo: Versione minima utilizzabile per la prova.","typical_approach":"Definizione delle funzioni indispensabili, area gestore con corsi e posti, prenotazione e pagamento per l'utente, notifiche, pannello amministrativo essenziale e misurazione dell'uso per le decisioni successive.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":2000,"max":4500},"indicative_hours":{"min":40,"max":70},"difficulty":"high","is_example":true,"published_at":"2026-04-06T09:00:00+02:00"},{"title":"Recuperare un database MySQL che non si avvia più","url":"https://devrequest.it/richieste/errori-database/recuperare-un-database-mysql-che-non-si-avvia-piu","category":"Errori database","technologies":["Linux","MySQL"],"summary":"Dopo un blackout il server MySQL non si avvia più e il gestionale è fermo. Nei log compaiono errori su tabelle InnoDB. L'ultimo backup completo risale a dieci giorni fa e vorremmo recuperare il più possibile dei dati recenti. Server Linux in sede, MySQL 5.7, database di circa 8 GB. Obiettivo: Ripristinare il servizio nel più breve tempo possibile minimizzando la perdita di dati.","typical_approach":"Copia immediata dei file di dati prima di qualsiasi intervento, analisi dei log, tentativo di avvio in modalità di recupero InnoDB per esportare le tabelle leggibili, confronto con l'ultimo backup e ricostruzione del database. Al termine, configurazione di backup automatici e verificati.","preparation_checklist":["Accesso SSH al server","Log di errore di MySQL","Ultimo backup disponibile","Elenco delle tabelle più importanti"],"indicative_cost_eur":{"min":300,"max":1200},"indicative_hours":{"min":4,"max":16},"difficulty":"high","is_example":true,"published_at":"2026-04-05T09:00:00+02:00"},{"title":"Database SQL Server in stato suspect dopo un blackout","url":"https://devrequest.it/richieste/errori-database/database-sql-server-in-stato-suspect-dopo-un-blackout","category":"Errori database","technologies":["SQL Server","Windows Server"],"summary":"Dopo un'interruzione di corrente il database del gestionale risulta in stato suspect e nessuno riesce a lavorare. L'ultimo backup completo è di due giorni fa e vorremmo capire se è possibile recuperare anche le registrazioni più recenti. SQL Server Standard su un server senza gruppo di continuità. Obiettivo: Database di nuovo accessibile con la minima perdita di dati.","typical_approach":"Copia preventiva dei file di dati e log, analisi dei messaggi di errore e controllo di consistenza. Valutazione tra ripristino da backup con log disponibili e procedure di riparazione, scegliendo con il cliente in base ai rischi.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":250,"max":800},"indicative_hours":{"min":4,"max":12},"difficulty":"high","is_example":true,"published_at":"2026-04-04T09:00:00+02:00"},{"title":"Correggere la paginazione che mostra prodotti duplicati","url":"https://devrequest.it/richieste/php/correggere-la-paginazione-che-mostra-prodotti-duplicati","category":"PHP","technologies":["MySQL","PHP"],"summary":"Nelle liste del catalogo alcuni prodotti compaiono su due pagine consecutive e altri non compaiono affatto. Succede soprattutto ordinando per prezzo. Liste PHP con LIMIT e OFFSET su MySQL. Obiettivo: Paginazione stabile e completa.","typical_approach":"Ordinamento deterministico aggiungendo un criterio univoco, verifica delle query di conteggio, e per liste molto lunghe paginazione per chiave invece che per offset.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":80,"max":250},"indicative_hours":{"min":1,"max":4},"difficulty":"low","is_example":true,"published_at":"2026-04-03T09:00:00+02:00"},{"title":"Mappa con punti di interesse e percorso in app B4A","url":"https://devrequest.it/richieste/b4x/mappa-con-punti-di-interesse-e-percorso-in-app-b4a","category":"B4X","technologies":["Android","B4A","B4X"],"summary":"La nostra app per manutentori deve mostrare su mappa gli impianti da visitare nella giornata, con colori diversi per priorità, e aprire il navigatore verso quello selezionato. Elenco interventi con coordinate scaricato dal server. Obiettivo: Giro di visite pianificato dalla mappa.","typical_approach":"Integrazione della mappa con indicatori personalizzati e raggruppamento, posizione dell'utente, apertura del navigatore esterno, aggiornamento dei punti al cambio stato dell'intervento.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":400,"max":1000},"indicative_hours":{"min":8,"max":18},"difficulty":"medium","is_example":true,"published_at":"2026-04-01T09:00:00+02:00"},{"title":"Server Windows che si riavvia di notte senza motivo apparente","url":"https://devrequest.it/richieste/windows-server/server-windows-che-si-riavvia-di-notte-senza-motivo-apparente","category":"Windows Server","technologies":["Windows Server"],"summary":"Da alcune settimane il server Windows che ospita il gestionale si riavvia durante la notte e al mattino alcuni servizi non ripartono. Gli utenti non riescono a lavorare finché qualcuno non entra a riavviarli. Non capiamo se dipenda dagli aggiornamenti o da un guasto. Windows Server 2019 fisico in sede con gestionale e database. Obiettivo: Individuare la causa e avere servizi sempre attivi al…","typical_approach":"Analisi del Visualizzatore eventi e dei registri di aggiornamento e alimentazione, verifica dei criteri di Windows Update e delle finestre di manutenzione. Impostazione del riavvio automatico dei servizi critici e avviso in caso di arresto.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":150,"max":420},"indicative_hours":{"min":3,"max":8},"difficulty":"medium","is_example":true,"published_at":"2026-03-31T09:00:00+02:00"},{"title":"Coda di elaborazione per operazioni lente nel backend","url":"https://devrequest.it/richieste/backend/coda-di-elaborazione-per-operazioni-lente-nel-backend","category":"Backend","technologies":["PHP","Redis"],"summary":"Alcune operazioni del nostro portale, come generare cataloghi PDF o ricalcolare i listini, bloccano la pagina per minuti e a volte vanno in timeout. Vorremmo eseguirle in background e avvisare l'utente quando sono pronte. Backend PHP su server Linux dedicato. Obiettivo: Interfaccia reattiva e operazioni affidabili.","typical_approach":"Coda di lavori con processi dedicati supervisionati, tentativi automatici con limite, stato del lavoro consultabile dall'utente, notifica al completamento e monitoraggio dei lavori falliti.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":400,"max":1000},"indicative_hours":{"min":8,"max":18},"difficulty":"medium","is_example":true,"published_at":"2026-03-30T09:00:00+02:00"},{"title":"Configurare replica PostgreSQL per alta disponibilità","url":"https://devrequest.it/richieste/postgresql/configurare-replica-postgresql-per-alta-disponibilita","category":"PostgreSQL","technologies":["Linux","PostgreSQL"],"summary":"La nostra applicazione gestionale dipende da un unico server PostgreSQL. Se si guasta siamo fermi finché non ripristiniamo il backup. Vorremmo un secondo server sempre allineato da attivare rapidamente in caso di problemi, e usarlo anche per i report. PostgreSQL 16 su Linux, due macchine virtuali disponibili nella stessa rete. Obiettivo: Replica in streaming funzionante, procedura di failover…","typical_approach":"Configurazione della replica in streaming con slot di replica, monitoraggio del ritardo, utente dedicato per i report sulla replica in sola lettura e procedura di promozione documentata e provata. Verifica che i backup continuino a funzionare.","preparation_checklist":["Accesso SSH ai due server","Versione PostgreSQL","Dimensione del database","Requisiti di tempo di ripristino"],"indicative_cost_eur":{"min":250,"max":650},"indicative_hours":{"min":4,"max":10},"difficulty":"medium","is_example":true,"published_at":"2026-03-29T09:00:00+02:00"},{"title":"Errore di chiave duplicata sugli ID dopo il ripristino PostgreSQL","url":"https://devrequest.it/richieste/errori-database/errore-di-chiave-duplicata-sugli-id-dopo-il-ripristino-postgresql","category":"Errori database","technologies":["PHP","PostgreSQL"],"summary":"Abbiamo ripristinato il database da un backup per spostarlo su un nuovo server e da allora l'inserimento di nuovi ordini e clienti fallisce con errore di chiave duplicata. I dati esistenti sembrano tutti presenti e corretti. Applicazione PHP su PostgreSQL, ripristino eseguito con un dump parziale. Obiettivo: Inserimenti di nuovo funzionanti su tutte le tabelle.","typical_approach":"Verifica delle sequenze rispetto ai valori massimi delle chiavi, riallineamento con setval su tutte le tabelle interessate e controllo che il dump includa le sequenze per i prossimi trasferimenti.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":100,"max":300},"indicative_hours":{"min":2,"max":5},"difficulty":"low","is_example":true,"published_at":"2026-03-28T09:00:00+01:00"},{"title":"Integrare i pagamenti PayPal nel sito di prenotazioni","url":"https://devrequest.it/richieste/php/integrare-i-pagamenti-paypal-nel-sito-di-prenotazioni","category":"PHP","technologies":["PHP","REST API","Webhook"],"summary":"Molti nostri clienti esteri chiedono di pagare con PayPal le prenotazioni. Vorremmo aggiungerlo accanto al pagamento con carta, con conferma automatica della prenotazione a pagamento ricevuto. Sito PHP di prenotazioni con pagamento con carta già attivo. Obiettivo: Secondo metodo di pagamento affidabile.","typical_approach":"Integrazione tramite API REST e notifiche firmate per la conferma, gestione di pagamenti in sospeso e rimborsi, riconciliazione giornaliera con lo stato delle prenotazioni.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":300,"max":800},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-03-27T09:00:00+01:00"},{"title":"Modulo B4J per leggere e scrivere file Excel","url":"https://devrequest.it/richieste/b4x/modulo-b4j-per-leggere-e-scrivere-file-excel","category":"B4X","technologies":["B4J","B4X","Excel"],"summary":"Il nostro programma B4J deve importare un listino fornito in Excel e produrre ogni mese un file Excel di riepilogo con più fogli e formattazione. Oggi passiamo da file CSV con molti errori. Applicazione B4J desktop usata in ufficio. Obiettivo: Import ed export Excel diretti e affidabili.","typical_approach":"Uso di una libreria per file xlsx, mappatura delle colonne configurabile, validazione dei valori con report degli errori, export con stili, formati numerici e fogli multipli.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":200,"max":550},"indicative_hours":{"min":4,"max":10},"difficulty":"low","is_example":true,"published_at":"2026-03-25T09:00:00+01:00"},{"title":"Docker Compose per ambiente di sviluppo Laravel con MySQL e Redis","url":"https://devrequest.it/richieste/docker/docker-compose-per-ambiente-di-sviluppo-laravel-con-mysql-e-redis","category":"Docker","technologies":["Docker","Laravel","MySQL","Redis"],"summary":"Ogni nuovo sviluppatore impiega giorni a configurare in locale il nostro progetto Laravel, con versioni di PHP e database diverse tra un computer e l'altro. Vorremmo un ambiente Docker che si avvii con un comando e sia uguale per tutti. Progetto Laravel con MySQL, Redis per code e cache. Obiettivo: Ambiente di sviluppo pronto in pochi minuti.","typical_approach":"File Compose con servizi per applicazione, web server, database, Redis e worker delle code, volumi persistenti e variabili d'ambiente documentate. Script di avvio iniziale con migrazioni e dati di prova.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":200,"max":480},"indicative_hours":{"min":4,"max":9},"difficulty":"low","is_example":true,"published_at":"2026-03-24T09:00:00+01:00"},{"title":"Scrivere i test automatici per un backend senza copertura","url":"https://devrequest.it/richieste/backend/scrivere-i-test-automatici-per-un-backend-senza-copertura","category":"Backend","technologies":["MySQL","PHP"],"summary":"Il backend del nostro servizio non ha test e ogni rilascio ci preoccupa: spesso un errore emerge solo dopo giorni. Vorremmo coprire con test automatici le funzioni più critiche come ordini e fatturazione. Codice PHP strutturato, database MySQL. Obiettivo: Rilasci più sicuri e regressioni intercettate.","typical_approach":"Individuazione dei flussi critici, database di test riproducibile, test di integrazione sui flussi e unitari sui calcoli, esecuzione automatica a ogni modifica e guida per aggiungere nuovi test.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":600,"max":1600},"indicative_hours":{"min":12,"max":30},"difficulty":"medium","is_example":true,"published_at":"2026-03-23T09:00:00+01:00"},{"title":"Ricerca testuale lenta e imprecisa sul catalogo prodotti","url":"https://devrequest.it/richieste/ottimizzazione-sql/ricerca-testuale-lenta-e-imprecisa-sul-catalogo-prodotti","category":"Ottimizzazione SQL","technologies":["PostgreSQL"],"summary":"La ricerca prodotti del nostro sito usa LIKE '%testo%' e con 80.000 articoli è lenta; inoltre non trova i prodotti se si scrive al plurale o con un errore di battitura. Vorremmo una ricerca veloce e più tollerante senza introdurre un motore di ricerca esterno. Database PostgreSQL, applicazione web con API di ricerca. Obiettivo: Risultati in meno di 200 ms, ricerca per radice delle parole e…","typical_approach":"Utilizzo della ricerca full text di PostgreSQL con dizionario italiano e colonna tsvector indicizzata (GIN), combinata con l'estensione trigram per i suggerimenti e gli errori di battitura. Ordinamento per rilevanza e pesi diversi per codice, nome e descrizione.","preparation_checklist":["Struttura della tabella prodotti","Esempi di ricerche che non funzionano","Versione PostgreSQL"],"indicative_cost_eur":{"min":180,"max":450},"indicative_hours":{"min":3,"max":8},"difficulty":"medium","is_example":true,"published_at":"2026-03-22T09:00:00+01:00"},{"title":"Gioco mobile educativo per bambini sulla raccolta differenziata","url":"https://devrequest.it/richieste/videogiochi/gioco-mobile-educativo-per-bambini-sulla-raccolta-differenziata","category":"Videogiochi","technologies":["Android","C#","iOS","Unity"],"summary":"Siamo una società di servizi ambientali e vorremmo un semplice gioco per smartphone e tablet, rivolto a bambini dai 6 ai 10 anni, in cui si trascinano i rifiuti nel contenitore giusto con livelli di difficoltà crescente. Illustrazioni fornite da un nostro grafico, uso nelle scuole. Obiettivo: Gioco pubblicato sugli store, senza pubblicità né raccolta dati.","typical_approach":"Prototipo giocabile per validare il ritmo dei livelli, sviluppo in Unity per Android e iOS, interazione a trascinamento adatta ai più piccoli, punteggi salvati solo sul dispositivo, nessun tracciamento e preparazione delle schede per gli store nella categoria bambini.","preparation_checklist":["Descrizione del gioco e del pubblico a cui si rivolge","Piattaforme di pubblicazione","Grafica e suoni disponibili o da realizzare","Riferimenti a giochi simili"],"indicative_cost_eur":{"min":2000,"max":4500},"indicative_hours":{"min":40,"max":70},"difficulty":"high","is_example":true,"published_at":"2026-03-21T09:00:00+01:00"},{"title":"Separare il frontend dal backend con un'API per l'app mobile","url":"https://devrequest.it/richieste/php/separare-il-frontend-dal-backend-con-un-api-per-l-app-mobile","category":"PHP","technologies":["MySQL","PHP","REST API"],"summary":"Vogliamo realizzare un'app mobile per i nostri clienti, ma tutta la logica è dentro le pagine PHP del sito. Serve estrarre le funzioni principali in un'API riutilizzabile da sito e app. Applicazione PHP monolitica con logica nelle pagine. Obiettivo: API stabile e documentata per l'app.","typical_approach":"Individuazione delle funzioni da esporre, estrazione della logica in servizi riutilizzabili, endpoint autenticati con token, documentazione e versionamento per non rompere l'app con i futuri aggiornamenti.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":1000,"max":2600},"indicative_hours":{"min":20,"max":45},"difficulty":"high","is_example":true,"published_at":"2026-03-20T09:00:00+01:00"},{"title":"Gestire foto e allegati nell'app B4A senza esaurire la memoria","url":"https://devrequest.it/richieste/b4x/gestire-foto-e-allegati-nell-app-b4a-senza-esaurire-la-memoria","category":"B4X","technologies":["B4A","B4X"],"summary":"La nostra app scatta molte foto durante i sopralluoghi e dopo una ventina di scatti si chiude per memoria esaurita. Inoltre l'invio al server è molto lento. Foto caricate a piena risoluzione nelle anteprime. Obiettivo: Nessun crash e invio più rapido.","typical_approach":"Caricamento delle anteprime ridotte, rilascio delle immagini non più visibili, compressione prima dell'invio con qualità configurabile, caricamento in background con ripresa e pulizia dei file temporanei.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":200,"max":550},"indicative_hours":{"min":4,"max":10},"difficulty":"medium","is_example":true,"published_at":"2026-03-18T09:00:00+01:00"},{"title":"Container Docker che occupano tutto il disco del server","url":"https://devrequest.it/richieste/docker/container-docker-che-occupano-tutto-il-disco-del-server","category":"Docker","technologies":["Bash","Docker","Linux"],"summary":"Il server dove girano i nostri container ha il disco pieno e l'applicazione ha smesso di salvare i dati. Sospettiamo log enormi e immagini vecchie mai rimosse, ma abbiamo paura di cancellare qualcosa di importante. Serve un intervento rapido e una soluzione definitiva. VPS Linux con diversi container gestiti tramite Compose. Obiettivo: Spazio recuperato e crescita del disco sotto controllo.","typical_approach":"Analisi dell'occupazione per log, immagini, volumi e cache di build, pulizia mirata di quanto non usato dopo verifica. Rotazione dei log dei container e controllo periodico con avviso sulla soglia di riempimento.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":100,"max":320},"indicative_hours":{"min":2,"max":6},"difficulty":"low","is_example":true,"published_at":"2026-03-17T09:00:00+01:00"},{"title":"Manutenzione di un'applicazione Java Spring per la logistica","url":"https://devrequest.it/richieste/backend/manutenzione-di-un-applicazione-java-spring-per-la-logistica","category":"Backend","technologies":["Java","PostgreSQL"],"summary":"Abbiamo un'applicazione Java per la gestione dei carichi in magazzino sviluppata da un fornitore che ha chiuso. Servono alcune correzioni, l'aggiornamento delle dipendenze e due piccole funzioni nuove. Sorgenti disponibili, build con Maven, database PostgreSQL. Obiettivo: Applicazione aggiornata e di nuovo evolvibile.","typical_approach":"Ricostruzione dell'ambiente di build, aggiornamento delle dipendenze con correzione delle vulnerabilità note, interventi richiesti con test e documentazione delle procedure di rilascio.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":500,"max":1300},"indicative_hours":{"min":10,"max":24},"difficulty":"medium","is_example":true,"published_at":"2026-03-16T09:00:00+01:00"},{"title":"Errore \"Too many connections\" su MariaDB nelle ore di punta","url":"https://devrequest.it/richieste/mysql-mariadb/errore-too-many-connections-su-mariadb-nelle-ore-di-punta","category":"MySQL / MariaDB","technologies":["MariaDB","MySQL"],"summary":"Nelle ore di maggiore traffico il sito mostra errori di connessione al database con messaggio \"Too many connections\". Abbiamo provato ad aumentare il limite ma il problema si ripresenta e il server diventa lento. Server MariaDB dedicato, applicazione PHP con picchi di traffico serali. Obiettivo: Eliminare gli errori di connessione e capirne la causa.","typical_approach":"Analisi delle connessioni aperte e della loro durata, individuazione di connessioni non chiuse o query lunghe che bloccano le altre, revisione di timeout e parametri di memoria in base alle risorse del server e, se necessario, introduzione di pooling o cache applicativa.","preparation_checklist":["Accesso al server database","Configurazione attuale (my.cnf)","Orari e frequenza degli errori"],"indicative_cost_eur":{"min":100,"max":280},"indicative_hours":{"min":2,"max":5},"difficulty":"low","is_example":true,"published_at":"2026-03-15T09:00:00+01:00"},{"title":"Gioco quiz multigiocatore nel browser per eventi aziendali","url":"https://devrequest.it/richieste/videogiochi/gioco-quiz-multigiocatore-nel-browser-per-eventi-aziendali","category":"Videogiochi","technologies":["HTML/CSS","JavaScript","Node.js"],"summary":"Durante le nostre convention vorremmo un quiz in stile gioco a premi: le domande compaiono sul maxischermo e i partecipanti rispondono dal telefono inquadrando un codice, con classifica in tempo reale. Fino a 300 partecipanti contemporanei, rete Wi-Fi della sala. Obiettivo: Quiz coinvolgente e affidabile durante l'evento.","typical_approach":"Server in tempo reale con stanze di gioco, schermata di regia per il presentatore, accesso dei giocatori senza registrazione tramite codice, punteggio basato su correttezza e rapidità, prova di carico prima dell'evento.","preparation_checklist":["Descrizione del gioco e del pubblico a cui si rivolge","Piattaforme di pubblicazione","Grafica e suoni disponibili o da realizzare","Riferimenti a giochi simili"],"indicative_cost_eur":{"min":1000,"max":2600},"indicative_hours":{"min":20,"max":45},"difficulty":"medium","is_example":true,"published_at":"2026-03-14T09:00:00+01:00"},{"title":"Importare automaticamente gli estratti conto bancari","url":"https://devrequest.it/richieste/php/importare-automaticamente-gli-estratti-conto-bancari","category":"PHP","technologies":["MySQL","PHP"],"summary":"L'amministrazione registra a mano gli incassi confrontando l'estratto conto con le fatture aperte. Vorremmo importare i movimenti bancari e proporre l'abbinamento automatico con le fatture. Estratti in formato CSV e CBI dalla banca, gestionale PHP. Obiettivo: Riconciliazione incassi in pochi minuti.","typical_approach":"Lettura dei formati bancari, normalizzazione dei movimenti, proposta di abbinamento per importo, causale e riferimento, conferma manuale dei casi incerti e registro delle operazioni.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":300,"max":900},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2026-03-13T09:00:00+01:00"},{"title":"Aggiornare un'app B4A con librerie non più mantenute","url":"https://devrequest.it/richieste/b4x/aggiornare-un-app-b4a-con-librerie-non-piu-mantenute","category":"B4X","technologies":["B4A","B4X"],"summary":"Abbiamo ereditato un'app B4A che usa diverse librerie esterne non più aggiornate e che non compila con l'IDE attuale. Dobbiamo rimetterla in condizione di essere aggiornata e pubblicata. Sviluppatore originale non più disponibile, sorgenti completi. Obiettivo: Progetto compilabile e manutenibile.","typical_approach":"Inventario delle librerie e delle alternative supportate, sostituzione progressiva con test delle funzioni coinvolte, aggiornamento dell'IDE e documentazione del progetto per i futuri interventi.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":650,"max":1700},"indicative_hours":{"min":12,"max":30},"difficulty":"high","is_example":true,"published_at":"2026-03-11T09:00:00+01:00"},{"title":"Migrare sito e posta da hosting condiviso a VPS gestita","url":"https://devrequest.it/richieste/hosting-e-vps/migrare-sito-e-posta-da-hosting-condiviso-a-vps-gestita","category":"Hosting e VPS","technologies":["Apache","Linux","MySQL","PHP"],"summary":"Il nostro hosting condiviso è diventato troppo lento e limitato per il sito aziendale e lo shop. Vorremmo passare a una VPS, spostando sito, database e caselle di posta senza perdere email e senza lasciare il sito irraggiungibile durante il trasferimento. Sito PHP con MySQL, una decina di caselle email sul dominio. Obiettivo: Trasloco senza perdita di dati e con fermo minimo.","typical_approach":"Preparazione della VPS e copia di prova completa, riduzione preventiva del TTL dei record DNS e sincronizzazione finale delle caselle. Passaggio dei DNS in orario concordato e verifica di sito, ordini e posta.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":400,"max":950},"indicative_hours":{"min":8,"max":18},"difficulty":"medium","is_example":true,"published_at":"2026-03-10T09:00:00+01:00"},{"title":"Programma desktop per la gestione di un piccolo laboratorio","url":"https://devrequest.it/richieste/windows/programma-desktop-per-la-gestione-di-un-piccolo-laboratorio","category":"Windows","technologies":["C#",".NET","SQLite"],"summary":"Il nostro laboratorio di analisi registra campioni, risultati e certificati in fogli Excel. Vorremmo un programma desktop per due postazioni con anagrafica clienti, campioni, esiti e stampa dei certificati. Due PC Windows in rete locale, nessun server. Obiettivo: Dati organizzati e certificati senza errori.","typical_approach":"Applicazione desktop con database condiviso adeguato all'uso in rete, flusso campione-analisi-certificato, modelli di stampa, ricerca e storico, backup automatico e import dei dati Excel.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":1500,"max":3800},"indicative_hours":{"min":30,"max":70},"difficulty":"high","is_example":true,"published_at":"2026-03-09T09:00:00+01:00"},{"title":"Creare report SQL Server per il controllo di gestione","url":"https://devrequest.it/richieste/sql-server/creare-report-sql-server-per-il-controllo-di-gestione","category":"SQL Server","technologies":["Excel","SQL Server"],"summary":"La direzione vuole un report settimanale con fatturato per area, margine per linea di prodotto e confronto con l'anno precedente. I dati sono nel gestionale su SQL Server ma oggi vengono estratti a mano e rielaborati in Excel. Accesso in lettura al database del gestionale, utilizzo di Excel per la consultazione. Obiettivo: Report aggiornato automaticamente e consultabile in Excel senza…","typical_approach":"Creazione di viste SQL che calcolano gli indicatori concordati, verifica dei numeri con l'ufficio amministrativo e collegamento di una cartella Excel alle viste tramite connessione dati in sola lettura, aggiornabile con un clic.","preparation_checklist":["Definizione precisa degli indicatori","Accesso in lettura al database","Esempio del report Excel attuale"],"indicative_cost_eur":{"min":150,"max":400},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-03-08T09:00:00+01:00"},{"title":"Prototipo di gioco platform 2D in Godot","url":"https://devrequest.it/richieste/videogiochi/prototipo-di-gioco-platform-2d-in-godot","category":"Videogiochi","technologies":["Godot"],"summary":"Sono un game designer indipendente e ho il documento di gioco e la grafica di un platform 2D. Cerco qualcuno che realizzi un prototipo con movimento del personaggio, tre livelli, nemici base e salvataggio dei progressi. Sprite e tileset pronti, musiche in arrivo. Obiettivo: Prototipo da presentare a un publisher.","typical_approach":"Controlli del personaggio curati con tolleranza sul salto, livelli costruiti con tilemap, nemici a stati semplici, checkpoint e salvataggio, esportazione per PC e codice organizzato per poter continuare lo sviluppo.","preparation_checklist":["Descrizione del gioco e del pubblico a cui si rivolge","Piattaforme di pubblicazione","Grafica e suoni disponibili o da realizzare","Riferimenti a giochi simili"],"indicative_cost_eur":{"min":1200,"max":3200},"indicative_hours":{"min":24,"max":56},"difficulty":"medium","is_example":true,"published_at":"2026-03-07T09:00:00+01:00"},{"title":"Aggiornare un sito CodeIgniter 2 non più supportato","url":"https://devrequest.it/richieste/php/aggiornare-un-sito-codeigniter-2-non-piu-supportato","category":"PHP","technologies":["CodeIgniter","PHP"],"summary":"Il nostro portale è basato su CodeIgniter 2 e non funziona con le versioni di PHP attuali. Ci chiediamo se convenga aggiornare il framework o riscrivere alcune parti. Portale con circa 40 controller e un'area clienti. Obiettivo: Portale su framework e PHP supportati.","typical_approach":"Valutazione iniziale del codice, aggiornamento a versione supportata del framework adeguando controller, modelli e librerie, test delle funzioni principali e piano di rilascio con ambiente di staging.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":1000,"max":2800},"indicative_hours":{"min":20,"max":50},"difficulty":"high","is_example":true,"published_at":"2026-03-06T09:00:00+01:00"},{"title":"Chat interna tra operatori con app B4X e server B4J","url":"https://devrequest.it/richieste/b4x/chat-interna-tra-operatori-con-app-b4x-e-server-b4j","category":"B4X","technologies":["B4A","B4i","B4J","B4X"],"summary":"Vorremmo una chat interna per coordinare i tecnici sul territorio senza usare app di messaggistica personali: canali per squadra, invio di foto e notifica dei nuovi messaggi. Circa 40 tecnici con telefoni Android e iPhone. Obiettivo: Comunicazioni di lavoro su uno strumento aziendale.","typical_approach":"Server B4J con connessioni persistenti e archivio dei messaggi, app B4X con canali, allegati e stato di lettura, notifiche push quando l'app è chiusa e gestione utenti da pannello.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":1200,"max":3200},"indicative_hours":{"min":24,"max":56},"difficulty":"high","is_example":true,"published_at":"2026-03-04T09:00:00+01:00"},{"title":"Email aziendali che finiscono nello spam: sistemare SPF, DKIM e DMARC","url":"https://devrequest.it/richieste/hosting-e-vps/email-aziendali-che-finiscono-nello-spam-sistemare-spf-dkim-e-dmarc","category":"Hosting e VPS","technologies":["Linux"],"summary":"Le email che inviamo ai clienti, comprese fatture e preventivi, arrivano sempre più spesso nella cartella spam o vengono rifiutate. Il sito invia anche notifiche automatiche dallo stesso dominio. Vorremmo capire cosa manca nella configurazione e sistemarlo. Dominio con posta presso un provider e sito che invia da server separato. Obiettivo: Email consegnate regolarmente in posta in arrivo.","typical_approach":"Verifica dei record DNS esistenti, record SPF che includa tutti i sistemi di invio, firma DKIM sul provider e sul server del sito e policy DMARC introdotta in modalità di monitoraggio. Test di consegna verso i principali provider.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":100,"max":320},"indicative_hours":{"min":2,"max":6},"difficulty":"low","is_example":true,"published_at":"2026-03-03T09:00:00+01:00"},{"title":"Correggere un programma VB6 che non si avvia su Windows 11","url":"https://devrequest.it/richieste/windows/correggere-un-programma-vb6-che-non-si-avvia-su-windows-11","category":"Windows","technologies":["Visual Basic 6"],"summary":"Sui nuovi PC con Windows 11 il nostro vecchio programma in Visual Basic 6 dà un errore di componente mancante all'avvio. Sui PC vecchi funziona e non possiamo sostituirlo subito. Programma con controlli ActiveX di terze parti. Obiettivo: Programma funzionante sui nuovi PC.","typical_approach":"Individuazione dei componenti mancanti e delle dipendenze, installazione e registrazione corretta per architettura, pacchetto di installazione aggiornato e valutazione del piano di sostituzione nel tempo.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":180,"max":550},"indicative_hours":{"min":3,"max":10},"difficulty":"medium","is_example":true,"published_at":"2026-03-02T09:00:00+01:00"},{"title":"Sincronizzare due database tra sede e cloud","url":"https://devrequest.it/richieste/migrazione-database/sincronizzare-due-database-tra-sede-e-cloud","category":"Migrazione database","technologies":["PostgreSQL","Python","SQL Server"],"summary":"Il gestionale di magazzino lavora su SQL Server in sede, mentre la nuova app per gli agenti usa un database PostgreSQL in cloud. Oggi i dati vengono allineati con esportazioni manuali. Ci serve una sincronizzazione automatica di clienti, articoli e giacenze, e degli ordini in senso inverso. Connessione internet stabile, possibilità di installare un servizio sul server in sede. Obiettivo: Dati…","typical_approach":"Sincronizzazione incrementale basata su timestamp o change tracking di SQL Server, servizio pianificato in sede che invia le modifiche al cloud tramite API o connessione cifrata, regole chiare su quale sistema è autorevole per ogni dato e log delle operazioni con avvisi in caso di errori.","preparation_checklist":["Elenco tabelle e campi da sincronizzare","Regole sui conflitti","Accesso ai due database"],"indicative_cost_eur":{"min":450,"max":1100},"indicative_hours":{"min":8,"max":20},"difficulty":"medium","is_example":true,"published_at":"2026-03-01T09:00:00+01:00"},{"title":"Leggere le giacenze dal web service SOAP del fornitore","url":"https://devrequest.it/richieste/api-rest-e-soap/leggere-le-giacenze-dal-web-service-soap-del-fornitore","category":"API REST e SOAP","technologies":["MySQL","PHP","SOAP"],"summary":"Il nostro principale fornitore espone le disponibilità di magazzino solo tramite un web service SOAP con WSDL. Oggi un operatore controlla a mano il loro portale ogni mattina: vorremmo aggiornare in automatico le giacenze nel nostro database più volte al giorno. Database prodotti MySQL con codici fornitore già associati. Obiettivo: Giacenze del fornitore aggiornate senza controlli manuali.","typical_approach":"Client SOAP basato sul WSDL fornito, mappatura dei codici articolo e aggiornamento incrementale delle quantità tramite job pianificato. Log delle chiamate e degli scarti per individuare codici non riconosciuti.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":300,"max":750},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-02-28T09:00:00+01:00"},{"title":"Sistemare il timeout nell'importazione di file grandi","url":"https://devrequest.it/richieste/php/sistemare-il-timeout-nell-importazione-di-file-grandi","category":"PHP","technologies":["MySQL","PHP"],"summary":"L'import del listino da 80.000 righe si interrompe a metà con errore di timeout e lascia dati parziali nel database. Con file piccoli funziona correttamente. Import eseguito durante la richiesta web. Obiettivo: Import completo e affidabile anche per file grandi.","typical_approach":"Spostamento dell'elaborazione in background a blocchi, transazioni per evitare dati parziali, avanzamento visibile all'operatore e report finale con righe scartate e motivo.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":200,"max":550},"indicative_hours":{"min":4,"max":10},"difficulty":"medium","is_example":true,"published_at":"2026-02-27T09:00:00+01:00"},{"title":"Lettura tag NFC per timbrature presenze in app B4A","url":"https://devrequest.it/richieste/b4x/lettura-tag-nfc-per-timbrature-presenze-in-app-b4a","category":"B4X","technologies":["B4A","B4X","REST API"],"summary":"Il personale di pulizie lavora presso diversi clienti e vorremmo registrare entrata e uscita avvicinando il telefono a un tag NFC installato in ogni sede, con invio al gestionale. Telefoni Android con NFC, gestionale con API. Obiettivo: Presenze registrate in modo verificabile.","typical_approach":"Lettura dei tag con identificativo univoco per sede, registrazione con orario del dispositivo e del server, funzionamento offline con coda, prevenzione delle timbrature duplicate e riepilogo per l'ufficio.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":300,"max":850},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2026-02-25T09:00:00+01:00"},{"title":"Backup offsite cifrato dei server verso storage a oggetti","url":"https://devrequest.it/richieste/backup/backup-offsite-cifrato-dei-server-verso-storage-a-oggetti","category":"Backup","technologies":["Bash","Linux","PostgreSQL"],"summary":"Oggi i backup dei nostri server finiscono su un disco nella stessa sala server. Se succedesse un incendio o un attacco ransomware perderemmo tutto. Vorremmo copie cifrate fuori sede, con più versioni conservate e una prova periodica di ripristino. Due server Linux con applicazione web e database PostgreSQL. Obiettivo: Copie fuori sede affidabili e ripristinabili.","typical_approach":"Strumento di backup deduplicato con cifratura lato client verso storage a oggetti, dump coerenti del database e politica di conservazione giornaliera, settimanale e mensile. Notifica degli esiti e procedura di ripristino documentata e provata.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":250,"max":650},"indicative_hours":{"min":5,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-02-24T09:00:00+01:00"},{"title":"Applicazione desktop che legge dati da una porta USB","url":"https://devrequest.it/richieste/windows/applicazione-desktop-che-legge-dati-da-una-porta-usb","category":"Windows","technologies":["C#",".NET"],"summary":"Un nostro strumento di misura si collega via USB e il software del produttore è datato e non esporta i dati. Vorremmo un programma che legga le misure, le salvi e le esporti in Excel. Protocollo di comunicazione documentato dal produttore. Obiettivo: Misure acquisite e archiviate in automatico.","typical_approach":"Comunicazione con il dispositivo secondo il protocollo, acquisizione con gestione delle disconnessioni, archivio locale delle misure per sessione, grafico in tempo reale ed esportazione.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":400,"max":1100},"indicative_hours":{"min":8,"max":20},"difficulty":"medium","is_example":true,"published_at":"2026-02-23T09:00:00+01:00"},{"title":"Deadlock frequenti su SQL Server durante l'evasione ordini","url":"https://devrequest.it/richieste/sql-server/deadlock-frequenti-su-sql-server-durante-l-evasione-ordini","category":"SQL Server","technologies":[".NET","SQL Server"],"summary":"Quando più operatori evadono ordini contemporaneamente, il gestionale mostra errori di deadlock e alcune operazioni vanno ripetute. Succede soprattutto a fine mese. Vorremmo capire quali query entrano in conflitto e risolvere. SQL Server 2019, applicazione .NET con transazioni sugli ordini e sulle giacenze. Obiettivo: Eliminare o ridurre drasticamente i deadlock.","typical_approach":"Raccolta dei grafici di deadlock tramite Extended Events, analisi dell'ordine di accesso alle tabelle e degli indici usati, correzione delle transazioni (ordine coerente, durata ridotta, indici adeguati) e valutazione del livello di isolamento più adatto.","preparation_checklist":["Accesso amministrativo a SQL Server","Esempi di messaggi di errore con orario","Accesso al codice delle operazioni coinvolte"],"indicative_cost_eur":{"min":100,"max":320},"indicative_hours":{"min":2,"max":6},"difficulty":"low","is_example":true,"published_at":"2026-02-22T09:00:00+01:00"},{"title":"Gestire il rinnovo del token scaduto nelle chiamate API del gestionale","url":"https://devrequest.it/richieste/api-rest-e-soap/gestire-il-rinnovo-del-token-scaduto-nelle-chiamate-api-del-gestionale","category":"API REST e SOAP","technologies":["C#",".NET","REST API"],"summary":"La nostra applicazione .NET interroga le API di un gestionale in cloud, ma ogni ora le chiamate iniziano a fallire con errore 401 finché qualcuno non riavvia il servizio. Sembra che il token di accesso scada e non venga richiesto di nuovo. Servizio Windows in .NET che sincronizza ordini ogni 10 minuti. Obiettivo: Chiamate continue senza riavvii manuali.","typical_approach":"Gestione centralizzata del token con rinnovo anticipato rispetto alla scadenza e ripetizione automatica della chiamata dopo un 401. Salvataggio sicuro delle credenziali e log degli errori di autenticazione.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":150,"max":420},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-02-21T09:00:00+01:00"},{"title":"Creare un configuratore di preventivi online per i clienti","url":"https://devrequest.it/richieste/php/creare-un-configuratore-di-preventivi-online-per-i-clienti","category":"PHP","technologies":["JavaScript","MySQL","PHP"],"summary":"Vendiamo prodotti su misura (dimensioni, materiali, finiture) e ogni preventivo richiede calcoli manuali. Vorremmo un configuratore sul sito che calcoli il prezzo indicativo e invii la richiesta completa all'ufficio commerciale. Regole di prezzo in un foglio di calcolo complesso. Obiettivo: Preventivi più rapidi e richieste già complete.","typical_approach":"Trasposizione delle regole di prezzo in una configurazione gestibile, interfaccia guidata con vincoli tra opzioni, calcolo lato server, salvataggio della configurazione e invio al commerciale con PDF di riepilogo.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":1200,"max":3200},"indicative_hours":{"min":24,"max":56},"difficulty":"high","is_example":true,"published_at":"2026-02-20T09:00:00+01:00"},{"title":"Convertire un programma VB6 in un'applicazione B4J","url":"https://devrequest.it/richieste/b4x/convertire-un-programma-vb6-in-un-applicazione-b4j","category":"B4X","technologies":["B4J","B4X","Visual Basic 6"],"summary":"Usiamo da vent'anni un programma in Visual Basic 6 per la gestione delle commesse. Funziona ancora ma dà problemi sui nuovi PC. Ci hanno suggerito B4J per la sintassi simile al Basic. Programma VB6 con database Access e stampe con componenti esterni. Obiettivo: Programma equivalente su tecnologia supportata.","typical_approach":"Analisi delle funzioni effettivamente usate, migrazione dei dati su database robusto, riscrittura in B4J per moduli con interfaccia rinnovata, stampe ricostruite e periodo di uso in parallelo.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":1500,"max":3800},"indicative_hours":{"min":30,"max":70},"difficulty":"high","is_example":true,"published_at":"2026-02-18T09:00:00+01:00"},{"title":"Verificare e documentare il ripristino del backup di SQL Server","url":"https://devrequest.it/richieste/backup/verificare-e-documentare-il-ripristino-del-backup-di-sql-server","category":"Backup","technologies":["SQL Server","Windows Server"],"summary":"Il nostro gestionale fa il backup ogni notte ma nessuno ha mai provato a ripristinarlo. Il revisore ci chiede una procedura scritta e una prova effettiva. Vogliamo sapere quanto tempo serve per tornare operativi e quanti dati perderemmo nel caso peggiore. SQL Server su Windows Server con piano di manutenzione già attivo. Obiettivo: Ripristino provato e procedura documentata.","typical_approach":"Controllo dei piani di backup esistenti e del modello di recupero, ripristino di prova su istanza separata con misurazione dei tempi. Stesura di una procedura passo per passo e calendario delle prove periodiche.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":150,"max":420},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-02-17T09:00:00+01:00"},{"title":"Programma C++ di elaborazione immagini da ottimizzare","url":"https://devrequest.it/richieste/linux-desktop/programma-c-plus-plus-di-elaborazione-immagini-da-ottimizzare","category":"Linux desktop","technologies":["C++","Linux"],"summary":"Un nostro programma C++ analizza le immagini delle telecamere di controllo qualità ma non regge più la nuova velocità della linea. Vorremmo ottimizzarlo per elaborare il doppio delle immagini al secondo. PC industriale Linux multicore, codice a singolo thread. Obiettivo: Elaborazione al passo con la linea.","typical_approach":"Profilazione delle fasi, parallelizzazione dell'elaborazione su più core, riduzione delle copie di memoria, uso di istruzioni vettoriali dove utile e test di precisione rispetto alla versione attuale.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":900,"max":2400},"indicative_hours":{"min":16,"max":40},"difficulty":"high","is_example":true,"published_at":"2026-02-16T09:00:00+01:00"},{"title":"Scrivere una query SQL per estrarre clienti inattivi","url":"https://devrequest.it/richieste/ottimizzazione-sql/scrivere-una-query-sql-per-estrarre-clienti-inattivi","category":"Ottimizzazione SQL","technologies":["MySQL"],"summary":"Il marketing vuole l'elenco dei clienti che hanno acquistato almeno tre volte negli ultimi tre anni ma nessuna volta negli ultimi sei mesi, con totale speso e data dell'ultimo ordine. Non riusciamo a scrivere la query corretta: i risultati non tornano con i conteggi. Tabelle clienti, ordini e righe ordine su MySQL. Obiettivo: Query corretta, veloce e riutilizzabile con parametri.","typical_approach":"Scrittura della query con aggregazioni corrette (evitando la moltiplicazione delle righe nelle join), verifica a campione dei risultati, eventuale indice di supporto e trasformazione in vista o procedura parametrica per poterla rilanciare.","preparation_checklist":["Struttura delle tabelle coinvolte","Definizione esatta di cliente inattivo","Esempio di risultato atteso"],"indicative_cost_eur":{"min":80,"max":250},"indicative_hours":{"min":2,"max":5},"difficulty":"low","is_example":true,"published_at":"2026-02-15T09:00:00+01:00"},{"title":"Inviare le pratiche a un portale assicurativo tramite API SOAP con certificato","url":"https://devrequest.it/richieste/api-rest-e-soap/inviare-le-pratiche-a-un-portale-assicurativo-tramite-api-soap-con-certificato","category":"API REST e SOAP","technologies":["Java","SOAP"],"summary":"Dobbiamo trasmettere le denunce di sinistro a una compagnia che accetta solo chiamate SOAP firmate e autenticate con certificato client. Abbiamo la documentazione tecnica ma i nostri tentativi restituiscono sempre errori di sicurezza poco chiari. Applicativo Java interno per la gestione delle pratiche. Obiettivo: Trasmissione automatica delle pratiche dal nostro applicativo.","typical_approach":"Configurazione del client SOAP con autenticazione a certificato e intestazioni di sicurezza richieste dalla specifica. Test sull'ambiente di collaudo della compagnia, gestione delle risposte di errore e archiviazione delle ricevute.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":700,"max":1700},"indicative_hours":{"min":14,"max":32},"difficulty":"high","is_example":true,"published_at":"2026-02-14T09:00:00+01:00"},{"title":"Migliorare la sicurezza del form contatti contro lo spam","url":"https://devrequest.it/richieste/php/migliorare-la-sicurezza-del-form-contatti-contro-lo-spam","category":"PHP","technologies":["PHP"],"summary":"Riceviamo centinaia di messaggi di spam al giorno dal modulo contatti e le richieste vere si perdono. Non vorremmo inserire captcha fastidiosi per i clienti. Modulo PHP semplice senza protezioni. Obiettivo: Spam ridotto senza peggiorare l'esperienza.","typical_approach":"Campo trappola invisibile, tempo minimo di compilazione con token firmato, limitazione per indirizzo, filtri sul contenuto e captcha solo come ultima risorsa in caso di attacchi persistenti.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":80,"max":250},"indicative_hours":{"min":1,"max":4},"difficulty":"low","is_example":true,"published_at":"2026-02-13T09:00:00+01:00"},{"title":"Correggere permessi di archiviazione e fotocamera in B4A","url":"https://devrequest.it/richieste/b4x/correggere-permessi-di-archiviazione-e-fotocamera-in-b4a","category":"B4X","technologies":["Android","B4A","B4X"],"summary":"Sui telefoni recenti la nostra app B4A non riesce più a salvare i PDF nella cartella Download e la fotocamera a volte non si apre. Sui telefoni vecchi funziona tutto. App che scrive file in percorsi pubblici della memoria. Obiettivo: Salvataggio file e fotocamera funzionanti ovunque.","typical_approach":"Richiesta dei permessi a runtime corretti per versione, uso delle cartelle private dell'app e del selettore di sistema per i file pubblici, condivisione tramite FileProvider e test su più versioni.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":100,"max":350},"indicative_hours":{"min":2,"max":6},"difficulty":"low","is_example":true,"published_at":"2026-02-11T09:00:00+01:00"},{"title":"Errore 502 Bad Gateway intermittente con Nginx e PHP-FPM","url":"https://devrequest.it/richieste/errori-server/errore-502-bad-gateway-intermittente-con-nginx-e-php-fpm","category":"Errori server","technologies":["Linux","Nginx","PHP"],"summary":"Più volte al giorno il nostro sito mostra l'errore 502 Bad Gateway per qualche minuto, soprattutto nelle ore di maggiore traffico e durante l'invio delle newsletter. Poi torna a funzionare da solo. Stiamo perdendo ordini e non capiamo da dove parta il problema. VPS con Nginx, PHP-FPM e MySQL sulla stessa macchina. Obiettivo: Sito stabile anche nei picchi di traffico.","typical_approach":"Analisi dei log di Nginx e PHP-FPM per esaurimento dei processi, timeout o arresti, verifica della memoria disponibile. Dimensionamento dei pool in base alle risorse e individuazione delle richieste lente che occupano i processi.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":150,"max":480},"indicative_hours":{"min":3,"max":9},"difficulty":"medium","is_example":true,"published_at":"2026-02-10T09:00:00+01:00"},{"title":"Piccola applicazione macOS per rinominare e archiviare foto","url":"https://devrequest.it/richieste/macos/piccola-applicazione-macos-per-rinominare-e-archiviare-foto","category":"macOS","technologies":["Swift"],"summary":"Il nostro studio fotografico rinomina e archivia migliaia di scatti a mano seguendo regole precise basate su data, cliente e progetto. Vorremmo una piccola applicazione per Mac che lo faccia trascinando le cartelle. Postazioni Mac, archivio su disco di rete. Obiettivo: Archivio ordinato senza lavoro manuale.","typical_approach":"Applicazione nativa con trascinamento delle cartelle, lettura dei metadati degli scatti, regole di rinomina configurabili con anteprima, controllo dei duplicati e registro delle operazioni annullabili.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":400,"max":1000},"indicative_hours":{"min":8,"max":18},"difficulty":"medium","is_example":true,"published_at":"2026-02-09T09:00:00+01:00"},{"title":"App Android che si chiude all'avvio su alcuni telefoni","url":"https://devrequest.it/richieste/android/app-android-che-si-chiude-all-avvio-su-alcuni-telefoni","category":"Android","technologies":["Android","Kotlin"],"summary":"La nostra app per i tecnici funziona sulla maggior parte dei telefoni, ma da qualche settimana su alcuni modelli recenti si chiude appena aperta. Lo sviluppatore originale non è più disponibile. Abbiamo il codice sorgente e l'accesso alla console di pubblicazione. App nativa Android, circa 60 utenti interni, segnalazioni di crash nella console. Obiettivo: Eliminare il crash e pubblicare una…","typical_approach":"Analisi dei report di crash nella console e riproduzione su emulatore con la stessa versione di Android, verifica di permessi, target SDK e librerie obsolete. Correzione, aggiornamento delle dipendenze necessarie, test su più versioni e pubblicazione con rilascio graduale.","preparation_checklist":["Codice sorgente e accesso al repository","Accesso alla console di pubblicazione","Modelli e versioni Android con il problema","Keystore di firma dell'app"],"indicative_cost_eur":{"min":250,"max":700},"indicative_hours":{"min":4,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-02-08T09:00:00+01:00"},{"title":"Coda con tentativi ripetuti per i webhook che vanno persi","url":"https://devrequest.it/richieste/webhook/coda-con-tentativi-ripetuti-per-i-webhook-che-vanno-persi","category":"Webhook","technologies":["Laravel","PHP","Redis","Webhook"],"summary":"Il nostro sistema invia notifiche webhook ai partner quando cambia lo stato di un ordine, ma se il loro server è momentaneamente irraggiungibile la notifica va persa. Alcuni partner ci segnalano ordini mai aggiornati e non abbiamo modo di reinviarli. Applicazione Laravel con circa 40 partner collegati. Obiettivo: Nessuna notifica persa e possibilità di reinvio.","typical_approach":"Invio tramite coda con ripetizioni a intervalli crescenti, registro di ogni tentativo con esito e pannello per il reinvio manuale. Firma delle richieste per permettere ai partner di verificarne la provenienza.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":300,"max":750},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-02-07T09:00:00+01:00"},{"title":"Registrare un log delle modifiche nel gestionale","url":"https://devrequest.it/richieste/php/registrare-un-log-delle-modifiche-nel-gestionale","category":"PHP","technologies":["MySQL","PHP"],"summary":"Capita che prezzi o anagrafiche vengano modificati e nessuno sappia chi l'ha fatto e quando. Vorremmo uno storico delle modifiche consultabile per i dati più importanti. Gestionale PHP multiutente su MySQL. Obiettivo: Tracciabilità di chi ha modificato cosa.","typical_approach":"Registro centralizzato con utente, data, valori prima e dopo per le entità critiche, consultazione dalla scheda del record e politica di conservazione dei log.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":250,"max":650},"indicative_hours":{"min":5,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-02-06T09:00:00+01:00"},{"title":"App kiosk B4A per tablet in reception","url":"https://devrequest.it/richieste/b4x/app-kiosk-b4a-per-tablet-in-reception","category":"B4X","technologies":["Android","B4A","B4X"],"summary":"Vorremmo un tablet all'ingresso dove i visitatori si registrano, firmano l'informativa e avvisano la persona che devono incontrare. Il tablet deve mostrare solo questa app. Tablet Android dedicati, rubrica interni da gestionale. Obiettivo: Registro visitatori digitale e sicuro.","typical_approach":"App B4A a schermo intero in modalità kiosk, registrazione e firma, notifica all'interno via email o messaggio, stampa facoltativa del badge e cancellazione automatica dei dati dopo il periodo previsto.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":400,"max":1100},"indicative_hours":{"min":8,"max":20},"difficulty":"medium","is_example":true,"published_at":"2026-02-04T09:00:00+01:00"},{"title":"Certificato SSL non riconosciuto su alcuni dispositivi e app","url":"https://devrequest.it/richieste/errori-server/certificato-ssl-non-riconosciuto-su-alcuni-dispositivi-e-app","category":"Errori server","technologies":["Apache","Linux"],"summary":"Il sito si apre correttamente dai browser, ma alcune app dei partner e qualche telefono datato segnalano un certificato non attendibile quando chiamano le nostre API. Il certificato risulta valido e non scaduto, quindi non capiamo dove sia l'errore. Server Apache con certificato rinnovato di recente. Obiettivo: Connessioni sicure accettate da tutti i client.","typical_approach":"Verifica della catena dei certificati intermedi servita dal server e dei protocolli abilitati con strumenti di analisi esterni. Correzione della configurazione e test con i client che segnalavano l'errore.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":100,"max":280},"indicative_hours":{"min":2,"max":5},"difficulty":"low","is_example":true,"published_at":"2026-02-03T09:00:00+01:00"},{"title":"Script di backup e verifica dei file del NAS in Python","url":"https://devrequest.it/richieste/python/script-di-backup-e-verifica-dei-file-del-nas-in-python","category":"Python","technologies":["Linux","Python"],"summary":"Copiamo ogni notte le cartelle del NAS su un disco esterno con uno script fatto in casa, ma non sappiamo se i file copiati siano integri. Vorremmo uno script che copi, verifichi e invii un riepilogo. NAS con circa 2 TB di documenti e un disco esterno a rotazione. Obiettivo: Backup verificato e controllabile.","typical_approach":"Copia incrementale con confronto di dimensione e data, verifica a campione con checksum, conservazione di più versioni, riepilogo via email con file copiati ed errori e test di ripristino.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":150,"max":450},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-02-02T09:00:00+01:00"},{"title":"Aggiornare app Android ai nuovi requisiti di pubblicazione","url":"https://devrequest.it/richieste/android/aggiornare-app-android-ai-nuovi-requisiti-di-pubblicazione","category":"Android","technologies":["Android","Kotlin","REST API"],"summary":"Abbiamo ricevuto un avviso dalla console di pubblicazione: la nostra app deve essere aggiornata a un target SDK più recente entro una scadenza, altrimenti non sarà più installabile dai nuovi utenti. L'app non viene aggiornata da tre anni. App Android con login e sincronizzazione dati tramite API REST. Obiettivo: App conforme ai requisiti attuali e pubblicata entro la scadenza.","typical_approach":"Aggiornamento di target SDK, Gradle e librerie, adeguamento a permessi runtime, notifiche e gestione dei file secondo le versioni recenti, verifica della dichiarazione sulla sicurezza dei dati e test completi prima dell'invio in revisione.","preparation_checklist":["Codice sorgente","Accesso alla console","Data di scadenza indicata nell'avviso","Credenziali di test per l'API"],"indicative_cost_eur":{"min":450,"max":1200},"indicative_hours":{"min":8,"max":20},"difficulty":"medium","is_example":true,"published_at":"2026-02-01T09:00:00+01:00"},{"title":"Ricevere notifiche di consegna dal corriere e aggiornare lo stato ordine","url":"https://devrequest.it/richieste/webhook/ricevere-notifiche-di-consegna-dal-corriere-e-aggiornare-lo-stato-ordine","category":"Webhook","technologies":["Node.js","PostgreSQL","Webhook"],"summary":"Il corriere che usiamo può inviare un webhook a ogni cambio di stato della spedizione. Vorremmo sfruttarlo per segnare automaticamente gli ordini come consegnati o in giacenza, invece di controllare il tracking uno per uno. Backend Node.js con ordini salvati su PostgreSQL. Obiettivo: Stato delle spedizioni sempre aggiornato negli ordini.","typical_approach":"Endpoint dedicato con verifica della firma, risposta immediata e elaborazione asincrona dell'evento. Gestione dei duplicati tramite identificativo evento e mappatura degli stati del corriere su quelli interni.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":200,"max":480},"indicative_hours":{"min":4,"max":9},"difficulty":"low","is_example":true,"published_at":"2026-01-31T09:00:00+01:00"},{"title":"Gestire listini prezzi differenziati per cliente","url":"https://devrequest.it/richieste/php/gestire-listini-prezzi-differenziati-per-cliente","category":"PHP","technologies":["MySQL","PHP"],"summary":"Abbiamo clienti con sconti diversi per famiglia di prodotto e alcuni prezzi netti concordati. Oggi i commerciali li ricordano a memoria e capitano errori negli ordini. Gestionale PHP con un unico listino base. Obiettivo: Prezzo corretto calcolato in automatico per ogni cliente.","typical_approach":"Modello di listini con priorità (prezzo netto, sconto per famiglia, sconto generale), validità temporale, calcolo centralizzato usato da ordini e preventivi e anteprima del prezzo applicato.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":400,"max":1000},"indicative_hours":{"min":8,"max":18},"difficulty":"medium","is_example":true,"published_at":"2026-01-30T09:00:00+01:00"},{"title":"Leggere dati da bilancia seriale con B4J","url":"https://devrequest.it/richieste/b4x/leggere-dati-da-bilancia-seriale-con-b4j","category":"B4X","technologies":["B4J","B4X"],"summary":"In spedizione pesiamo i colli su una bilancia collegata via porta seriale e trascriviamo il peso nel gestionale. Vorremmo un programma B4J che legga il peso e lo invii in automatico alla spedizione aperta. PC Windows con adattatore USB-seriale e bilancia industriale. Obiettivo: Pesi acquisiti senza trascrizione.","typical_approach":"Lettura seriale con parametri della bilancia, interpretazione del protocollo e del peso stabile, collegamento alla spedizione tramite API o database e gestione degli errori di comunicazione.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":250,"max":650},"indicative_hours":{"min":5,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-01-28T09:00:00+01:00"},{"title":"Memory leak in un servizio Node.js che va riavviato ogni giorno","url":"https://devrequest.it/richieste/performance/memory-leak-in-un-servizio-node-js-che-va-riavviato-ogni-giorno","category":"Performance","technologies":["JavaScript","Linux","Node.js"],"summary":"Il nostro servizio Node.js che gestisce le API dell'app mobile occupa sempre più memoria nel corso della giornata finché il server non lo termina. Per ora lo riavviamo ogni notte, ma con l'aumento degli utenti succede anche di pomeriggio. Servizio Node.js gestito con un process manager su VPS Linux. Obiettivo: Consumo di memoria stabile nel tempo.","typical_approach":"Raccolta di snapshot della memoria in momenti diversi e confronto degli oggetti trattenuti, verifica di cache senza limite, listener non rimossi e connessioni non chiuse. Correzione delle cause e monitoraggio dell'andamento dopo il rilascio.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":350,"max":950},"indicative_hours":{"min":6,"max":16},"difficulty":"high","is_example":true,"published_at":"2026-01-27T09:00:00+01:00"},{"title":"Estensione per browser che compila moduli dal gestionale","url":"https://devrequest.it/richieste/javascript/estensione-per-browser-che-compila-moduli-dal-gestionale","category":"JavaScript","technologies":["JavaScript"],"summary":"Gli operatori copiano a mano dati dal nostro gestionale nei moduli di un portale esterno di prenotazione. Vorremmo un'estensione per il browser che recuperi i dati della pratica e precompili i campi. Gestionale con API interne, portale esterno senza API. Obiettivo: Meno tempo e meno errori di trascrizione.","typical_approach":"Estensione con permessi limitati al solo portale necessario, recupero dei dati dal gestionale con autenticazione, mappatura dei campi configurabile, compilazione con verifica visiva prima dell'invio.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":400,"max":1000},"indicative_hours":{"min":8,"max":18},"difficulty":"medium","is_example":true,"published_at":"2026-01-26T09:00:00+01:00"},{"title":"Pubblicare un'app iOS rifiutata in revisione","url":"https://devrequest.it/richieste/ios/pubblicare-un-app-ios-rifiutata-in-revisione","category":"iOS","technologies":["iOS","Swift"],"summary":"Abbiamo sviluppato internamente un'app per i nostri clienti, ma la revisione l'ha rifiutata due volte citando le linee guida su login e privacy. Non abbiamo esperienza con il processo di pubblicazione e vorremmo un supporto per correggere e ripresentarla. App iOS in Swift già completa, account sviluppatore aziendale attivo. Obiettivo: App approvata e disponibile sullo store.","typical_approach":"Analisi delle motivazioni del rifiuto, adeguamento delle parti contestate (ad esempio cancellazione account dall'app, informativa privacy, descrizione dei permessi, account demo per i revisori), revisione dei metadati della scheda e ripresentazione con note chiare per il team di revisione.","preparation_checklist":["Messaggi di rifiuto ricevuti","Accesso all'account sviluppatore","Codice sorgente","Account di prova per i revisori"],"indicative_cost_eur":{"min":400,"max":1000},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2026-01-25T09:00:00+01:00"},{"title":"Verificare la firma dei webhook in arrivo e bloccare le richieste false","url":"https://devrequest.it/richieste/webhook/verificare-la-firma-dei-webhook-in-arrivo-e-bloccare-le-richieste-false","category":"Webhook","technologies":["PHP","Webhook"],"summary":"Abbiamo un endpoint che riceve webhook da una piattaforma esterna e crea record nel nostro database. Ci siamo accorti che chiunque conosca l'indirizzo può inviare dati falsi: vorremmo accettare solo le richieste autentiche. Script PHP semplice pubblicato sul sito aziendale. Obiettivo: Accettare solo webhook legittimi.","typical_approach":"Verifica della firma HMAC con il segreto condiviso, controllo del timestamp per evitare richieste riprodotte e rifiuto delle chiamate non valide con log dedicato. Revisione dei dati in ingresso prima del salvataggio.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":100,"max":320},"indicative_hours":{"min":2,"max":6},"difficulty":"low","is_example":true,"published_at":"2026-01-24T09:00:00+01:00"},{"title":"Convertire il sito PHP per renderlo accessibile","url":"https://devrequest.it/richieste/php/convertire-il-sito-php-per-renderlo-accessibile","category":"PHP","technologies":["HTML/CSS","PHP"],"summary":"Dobbiamo rendere il nostro portale servizi conforme ai requisiti di accessibilità. Moduli senza etichette, contrasti insufficienti e menu non utilizzabili da tastiera sono i problemi già emersi. Portale PHP con template datati. Obiettivo: Portale utilizzabile da tutti e conforme ai requisiti.","typical_approach":"Verifica delle pagine principali, correzione di struttura semantica, etichette, contrasti, focus e navigazione da tastiera, testi alternativi e dichiarazione di accessibilità aggiornata.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":500,"max":1300},"indicative_hours":{"min":10,"max":24},"difficulty":"medium","is_example":true,"published_at":"2026-01-23T09:00:00+01:00"},{"title":"Riprendere lo sviluppo di un'app B4X senza documentazione","url":"https://devrequest.it/richieste/b4x/riprendere-lo-sviluppo-di-un-app-b4x-senza-documentazione","category":"B4X","technologies":["B4A","B4i","B4X"],"summary":"Il programmatore che ha sviluppato la nostra app B4X non è più disponibile. Abbiamo i sorgenti ma nessuna documentazione e dobbiamo aggiungere due funzioni richieste dai clienti. Sorgenti completi e accesso agli account degli store. Obiettivo: Capire il progetto e poterlo evolvere.","typical_approach":"Analisi del codice e delle dipendenze, verifica della compilazione per entrambe le piattaforme, documentazione essenziale di architettura e procedure di rilascio, poi sviluppo delle nuove funzioni.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":300,"max":850},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2026-01-21T09:00:00+01:00"},{"title":"Monitoraggio di server e servizi con avvisi su Telegram","url":"https://devrequest.it/richieste/performance/monitoraggio-di-server-e-servizi-con-avvisi-su-telegram","category":"Performance","technologies":["Bash","Docker","Linux"],"summary":"Scopriamo che il server ha problemi solo quando i clienti ci chiamano. Vorremmo un sistema che controlli disco, memoria, carico, certificati e raggiungibilità dei siti e ci avvisi su Telegram prima che la situazione diventi critica. Tre VPS Linux con siti web e un paio di servizi in container. Obiettivo: Sapere dei problemi prima dei clienti.","typical_approach":"Installazione di agenti di raccolta metriche e di una dashboard centralizzata in container, controlli di raggiungibilità esterni e soglie di allarme concordate. Avvisi inviati tramite bot con riepilogo del problema.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":250,"max":650},"indicative_hours":{"min":5,"max":12},"difficulty":"medium","is_example":true,"published_at":"2026-01-20T09:00:00+01:00"},{"title":"Grafici interattivi per i dati dei sensori in una pagina web","url":"https://devrequest.it/richieste/javascript/grafici-interattivi-per-i-dati-dei-sensori-in-una-pagina-web","category":"JavaScript","technologies":["HTML/CSS","JavaScript"],"summary":"Raccogliamo temperature e consumi da decine di sensori e oggi li mostriamo in tabelle difficili da leggere. Vorremmo grafici interattivi con zoom sul periodo, confronto tra sensori e soglie evidenziate. API esistente che restituisce le serie storiche. Obiettivo: Anomalie individuabili a colpo d'occhio.","typical_approach":"Libreria di grafici adatta a molti punti con aggregazione per periodo, selezione dei sensori, soglie configurabili, tooltip con valori esatti, esportazione dei dati visualizzati e caricamento progressivo.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":300,"max":800},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-01-19T09:00:00+01:00"},{"title":"Integrare notifiche push in un'app Android e iOS","url":"https://devrequest.it/richieste/app-ibride/integrare-notifiche-push-in-un-app-android-e-ios","category":"App ibride","technologies":["Android","Firebase","iOS"],"summary":"Vorremmo avvisare i clienti della nostra app quando un ordine è pronto per il ritiro. Oggi inviamo SMS a pagamento. Ci serve l'integrazione delle notifiche push sia su Android sia su iOS e un modo per inviarle dal nostro gestionale. App esistente per Android e iOS, gestionale web con API. Obiettivo: Notifica push automatica al cambio di stato dell'ordine.","typical_approach":"Configurazione del servizio di messaggistica per entrambe le piattaforme, registrazione dei token dispositivo associati all'utente, endpoint nel gestionale per l'invio al cambio di stato, gestione dei permessi di notifica e dei token scaduti.","preparation_checklist":["Codice sorgente delle app","Account sviluppatore delle due piattaforme","Documentazione API del gestionale"],"indicative_cost_eur":{"min":350,"max":850},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-01-18T09:00:00+01:00"},{"title":"Collegare HubSpot al gestionale per creare clienti dalle trattative vinte","url":"https://devrequest.it/richieste/crm-erp/collegare-hubspot-al-gestionale-per-creare-clienti-dalle-trattative-vinte","category":"CRM / ERP","technologies":["Python","REST API","SQL Server"],"summary":"Il commerciale chiude le trattative su HubSpot, poi l'amministrazione ricopia a mano l'anagrafica nel gestionale per poter fatturare. Spesso mancano dati o si creano doppioni: vorremmo che il cliente venisse creato in automatico quando la trattativa passa a vinta. Gestionale con database SQL Server accessibile in sola scrittura su tabelle di appoggio. Obiettivo: Anagrafiche create una sola volta…","typical_approach":"Lettura delle trattative chiuse tramite API del CRM, controllo dei duplicati su partita IVA e scrittura nelle tabelle di importazione del gestionale. Segnalazione dei casi con dati incompleti invece dell'inserimento forzato.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":400,"max":950},"indicative_hours":{"min":8,"max":18},"difficulty":"medium","is_example":true,"published_at":"2026-01-17T09:00:00+01:00"},{"title":"Integrare le spedizioni con stampa automatica delle etichette","url":"https://devrequest.it/richieste/php/integrare-le-spedizioni-con-stampa-automatica-delle-etichette","category":"PHP","technologies":["PHP","REST API"],"summary":"Il magazzino crea le spedizioni sul portale del corriere copiando gli indirizzi dagli ordini. Vorremmo creare la spedizione dal gestionale e stampare subito l'etichetta sulla stampante termica. Gestionale PHP, corriere con API documentate. Obiettivo: Spedizioni create in un clic con tracking salvato.","typical_approach":"Integrazione con le API del corriere, validazione degli indirizzi, generazione e stampa dell'etichetta, salvataggio del tracking nell'ordine e invio della notifica al cliente.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":300,"max":850},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2026-01-16T09:00:00+01:00"},{"title":"Scaricare e mostrare documenti PDF in app B4i","url":"https://devrequest.it/richieste/b4x/scaricare-e-mostrare-documenti-pdf-in-app-b4i","category":"B4X","technologies":["B4i","B4X","iOS","REST API"],"summary":"I clienti della nostra app iPhone devono consultare schede tecniche e manuali in PDF. Vorremmo scaricarli dal server, visualizzarli nell'app e conservarli per l'uso offline. App B4i con elenco prodotti, documenti sul server. Obiettivo: Documenti consultabili anche senza rete.","typical_approach":"Download con barra di avanzamento e autenticazione, archivio locale con verifica degli aggiornamenti, visualizzazione con anteprima di sistema, condivisione e pulizia dei documenti obsoleti.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":150,"max":450},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-01-14T09:00:00+01:00"},{"title":"Pipeline CI/CD che fallisce in deploy dopo cambio del server","url":"https://devrequest.it/richieste/bug-applicativi/pipeline-ci-cd-che-fallisce-in-deploy-dopo-cambio-del-server","category":"Bug applicativi","technologies":["Bash","Docker","Linux"],"summary":"Da quando abbiamo spostato l'applicazione su un nuovo server, la pipeline di rilascio completa i test ma fallisce nella fase di deploy con errori di permessi e di connessione. Nel frattempo stiamo pubblicando a mano, con il rischio di dimenticare qualche passaggio. Pipeline sul servizio Git aziendale con deploy via SSH e Docker. Obiettivo: Rilasci automatici di nuovo funzionanti.","typical_approach":"Analisi dei log della pipeline, aggiornamento di chiavi SSH, host conosciuti e segreti per il nuovo server, verifica dei permessi dell'utente di deploy. Aggiunta di un controllo di salute dopo il rilascio con possibilità di tornare alla versione precedente.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":150,"max":480},"indicative_hours":{"min":3,"max":9},"difficulty":"medium","is_example":true,"published_at":"2026-01-13T09:00:00+01:00"},{"title":"Bot Telegram aziendale per consultare ordini e giacenze","url":"https://devrequest.it/richieste/python/bot-telegram-aziendale-per-consultare-ordini-e-giacenze","category":"Python","technologies":["Python","REST API"],"summary":"I commerciali chiedono spesso all'ufficio lo stato di un ordine o la disponibilità di un articolo. Vorremmo un bot su Telegram, riservato ai dipendenti autorizzati, che risponda con i dati del gestionale. Gestionale con API in sola lettura. Obiettivo: Risposte immediate anche fuori ufficio.","typical_approach":"Bot con comandi per ordine, cliente e articolo, accesso limitato agli utenti autorizzati, dati letti dalle API con permessi minimi, registro delle richieste e nessun dato sensibile memorizzato nella chat.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":300,"max":850},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2026-01-12T09:00:00+01:00"},{"title":"Portare un'app B4A su iOS con B4i","url":"https://devrequest.it/richieste/b4x/portare-un-app-b4a-su-ios-con-b4i","category":"B4X","technologies":["B4A","B4i","B4X"],"summary":"Abbiamo un'app Android sviluppata in B4A per la raccolta ordini degli agenti. Ora una parte della rete vendita usa iPhone e vorremmo una versione iOS con le stesse funzioni, riutilizzando il più possibile il codice esistente. Progetto B4A con database SQLite locale e sincronizzazione verso un server. Obiettivo: App iOS equivalente, codice condiviso tra le due versioni dove possibile.","typical_approach":"Riorganizzazione del progetto in moduli condivisi B4X (logica, database, sincronizzazione) e parti specifiche per piattaforma (interfaccia, permessi), adattamento delle librerie non disponibili su iOS, compilazione con B4i e test su dispositivi reali prima della pubblicazione.","preparation_checklist":["Sorgenti del progetto B4A","Elenco librerie usate","Account sviluppatore iOS","Mac o servizio di build disponibile"],"indicative_cost_eur":{"min":1100,"max":2800},"indicative_hours":{"min":20,"max":50},"difficulty":"high","is_example":true,"published_at":"2026-01-11T09:00:00+01:00"},{"title":"Importare gli ordini di vendita nel gestionale da file XML di un portale B2B","url":"https://devrequest.it/richieste/crm-erp/importare-gli-ordini-di-vendita-nel-gestionale-da-file-xml-di-un-portale-b2b","category":"CRM / ERP","technologies":["C#",".NET","SQL Server"],"summary":"Un grande cliente ci invia gli ordini tramite il suo portale B2B, che produce file XML scaricabili. Oggi li reinseriamo a mano nel gestionale riga per riga, con errori sulle quantità e sui codici articolo. Circa 60 ordini a settimana con decine di righe ciascuno. Obiettivo: Ordini caricati nel gestionale senza digitazione.","typical_approach":"Programma che legge i file XML, valida la struttura e converte i codici del cliente nei codici interni tramite tabella di corrispondenza. Inserimento in bozza nel gestionale e report delle righe non riconosciute.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":500,"max":1150},"indicative_hours":{"min":10,"max":22},"difficulty":"medium","is_example":true,"published_at":"2026-01-10T09:00:00+01:00"},{"title":"Notifiche email automatiche al cambio stato degli ordini","url":"https://devrequest.it/richieste/php/notifiche-email-automatiche-al-cambio-stato-degli-ordini","category":"PHP","technologies":["MySQL","PHP"],"summary":"I clienti telefonano per sapere se l'ordine è stato spedito. Vorremmo inviare automaticamente un'email quando l'ordine viene confermato, preparato e spedito, con il link di tracking. Gestionale PHP con stati ordine già presenti. Obiettivo: Meno telefonate e clienti informati.","typical_approach":"Eventi al cambio di stato, template email personalizzabili, invio in coda per non rallentare l'operatore, registro degli invii e possibilità di disattivare la notifica per singolo cliente.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":150,"max":400},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2026-01-09T09:00:00+01:00"},{"title":"Programma B4J che monitora una cartella e importa i file","url":"https://devrequest.it/richieste/b4x/programma-b4j-che-monitora-una-cartella-e-importa-i-file","category":"B4X","technologies":["B4J","B4X","SQL Server"],"summary":"Un macchinario salva ogni ciclo di produzione come file di testo in una cartella di rete. Vorremmo un programma B4J che giri come servizio, legga i nuovi file e li registri nel database SQL Server. Circa 2.000 file al giorno in formato fisso. Obiettivo: Dati di produzione disponibili in tempo reale.","typical_approach":"Servizio B4J senza interfaccia avviato con il sistema, controllo periodico della cartella, parsing con validazione, inserimento in transazione, spostamento dei file elaborati o scartati e log consultabile.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":250,"max":750},"indicative_hours":{"min":5,"max":14},"difficulty":"medium","is_example":true,"published_at":"2026-01-07T09:00:00+01:00"},{"title":"Upload di file grandi che si interrompe con errore 413 o timeout","url":"https://devrequest.it/richieste/bug-applicativi/upload-di-file-grandi-che-si-interrompe-con-errore-413-o-timeout","category":"Bug applicativi","technologies":["JavaScript","Nginx","PHP"],"summary":"Nel nostro portale i clienti caricano disegni tecnici e video di qualche centinaio di megabyte. I file piccoli passano, quelli grandi si fermano a metà con un errore 413 o dopo un lungo caricamento senza alcun messaggio. Abbiamo già alzato un limite in PHP ma non basta. Portale PHP dietro Nginx su VPS Linux. Obiettivo: Caricamento affidabile dei file di grandi dimensioni.","typical_approach":"Allineamento dei limiti di dimensione e dei timeout tra Nginx, PHP-FPM e PHP, verifica dello spazio temporaneo. Valutazione del caricamento a blocchi lato browser con barra di avanzamento e ripresa in caso di interruzione.","preparation_checklist":["Accesso al codice, al server o al pannello di gestione","Versioni di sistema operativo e componenti coinvolti","Descrizione del problema o del risultato atteso","Finestra temporale disponibile per gli interventi"],"indicative_cost_eur":{"min":100,"max":320},"indicative_hours":{"min":2,"max":6},"difficulty":"low","is_example":true,"published_at":"2026-01-06T09:00:00+01:00"},{"title":"Plugin per Excel in C# che importa dati dal gestionale","url":"https://devrequest.it/richieste/c-sharp-e-net/plugin-per-excel-in-c-sharp-che-importa-dati-dal-gestionale","category":"C# e .NET","technologies":["C#","Excel",".NET"],"summary":"Il controllo di gestione lavora in Excel e copia ogni giorno dati dal gestionale. Vorremmo un componente aggiuntivo per Excel che aggiorni i fogli con un clic leggendo direttamente i dati autorizzati. Office aziendale, gestionale su SQL Server. Obiettivo: Fogli aggiornati senza copia manuale.","typical_approach":"Componente aggiuntivo con pannello laterale, connessione con credenziali personali e permessi di sola lettura, selezione delle estrazioni predefinite, aggiornamento delle tabelle mantenendo le formule e installazione centralizzata.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":500,"max":1300},"indicative_hours":{"min":10,"max":24},"difficulty":"medium","is_example":true,"published_at":"2026-01-05T09:00:00+01:00"},{"title":"App B4A: sincronizzazione offline con il server tramite API","url":"https://devrequest.it/richieste/b4x/app-b4a-sincronizzazione-offline-con-il-server-tramite-api","category":"B4X","technologies":["B4A","B4X","REST API"],"summary":"I nostri tecnici lavorano spesso in cantieri senza copertura. L'app B4A attuale richiede connessione per salvare gli interventi e si perdono dati. Vorremmo salvare tutto in locale e sincronizzare automaticamente appena torna la rete. App B4A esistente, server con API REST in PHP. Obiettivo: Lavoro completamente offline e sincronizzazione affidabile senza duplicati.","typical_approach":"Database SQLite locale con coda delle modifiche, identificativi univoci generati sul dispositivo, sincronizzazione in background quando la rete è disponibile con gestione dei conflitti e ritentativi, indicatore chiaro dello stato di sincronizzazione per l'utente.","preparation_checklist":["Sorgenti B4A","Documentazione delle API","Esempi di dati degli interventi"],"indicative_cost_eur":{"min":450,"max":1100},"indicative_hours":{"min":8,"max":20},"difficulty":"medium","is_example":true,"published_at":"2026-01-04T09:00:00+01:00"},{"title":"Allineare i listini tra ERP e CRM ogni notte","url":"https://devrequest.it/richieste/crm-erp/allineare-i-listini-tra-erp-e-crm-ogni-notte","category":"CRM / ERP","technologies":["MySQL","Python","REST API"],"summary":"I prezzi vengono aggiornati nell'ERP, ma i commerciali preparano le offerte dal CRM dove i listini sono vecchi di mesi. Vorremmo un aggiornamento notturno che porti nel CRM prezzi e articoli attivi. ERP con esportazione su MySQL e CRM con API documentate. Obiettivo: Offerte preparate sempre con prezzi correnti.","typical_approach":"Script pianificato che confronta i listini e invia al CRM solo le variazioni, disattivando gli articoli dismessi. Riepilogo via email delle modifiche e degli eventuali errori.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":200,"max":520},"indicative_hours":{"min":4,"max":10},"difficulty":"low","is_example":true,"published_at":"2026-01-03T09:00:00+01:00"},{"title":"Gestire i resi dei clienti con un flusso online","url":"https://devrequest.it/richieste/php/gestire-i-resi-dei-clienti-con-un-flusso-online","category":"PHP","technologies":["MySQL","PHP"],"summary":"Le richieste di reso arrivano per email e telefono senza informazioni complete. Vorremmo un modulo dove il cliente seleziona l'ordine, i prodotti e il motivo, e un pannello per approvare e seguire il reso. E-commerce e gestionale PHP sullo stesso database. Obiettivo: Resi gestiti in modo ordinato e tracciabile.","typical_approach":"Modulo collegato agli ordini del cliente, regole di ammissibilità, stati del reso con notifiche, generazione dell'autorizzazione e aggiornamento di magazzino e documenti a reso ricevuto.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":500,"max":1200},"indicative_hours":{"min":10,"max":22},"difficulty":"medium","is_example":true,"published_at":"2026-01-02T09:00:00+01:00"},{"title":"Traduzione multilingua di un'app B4X","url":"https://devrequest.it/richieste/b4x/traduzione-multilingua-di-un-app-b4x","category":"B4X","technologies":["B4A","B4i","B4X"],"summary":"La nostra app B4X è solo in italiano e vogliamo distribuirla anche in inglese, tedesco e spagnolo. I testi sono scritti direttamente nei layout e nel codice. App per Android e iOS con circa 400 testi. Obiettivo: App nella lingua del dispositivo.","typical_approach":"Estrazione dei testi in file di traduzione, caricamento della lingua del dispositivo con scelta manuale, formati di data e numero localizzati e verifica delle lunghezze nei layout.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":200,"max":550},"indicative_hours":{"min":4,"max":10},"difficulty":"low","is_example":true,"published_at":"2025-12-31T09:00:00+01:00"},{"title":"Aggiornare un progetto Laravel di tre versioni major","url":"https://devrequest.it/richieste/php/aggiornare-un-progetto-laravel-di-tre-versioni-major","category":"PHP","technologies":["Laravel","PHP"],"summary":"Il nostro portale è fermo a una versione di Laravel non più supportata e alcune dipendenze bloccano l'aggiornamento di PHP. Vorremmo portarlo all'ultima versione stabile senza interrompere il servizio. Progetto con code, eventi, pacchetti di terze parti e pochi test. Obiettivo: Framework e PHP aggiornati e supportati.","typical_approach":"Aggiornamento una versione alla volta seguendo le guide ufficiali, sostituzione dei pacchetti abbandonati, test sulle funzioni critiche a ogni passaggio, ambiente di staging e rilascio con possibilità di ritorno.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del framework","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":850,"max":2200},"indicative_hours":{"min":16,"max":40},"difficulty":"high","is_example":true,"published_at":"2025-12-30T09:00:00+01:00"},{"title":"Riconciliazione automatica tra ordini e-commerce e pagamenti","url":"https://devrequest.it/richieste/python/riconciliazione-automatica-tra-ordini-e-commerce-e-pagamenti","category":"Python","technologies":["MySQL","Python"],"summary":"Ogni fine mese confrontiamo a mano gli ordini del sito con i report dei sistemi di pagamento per trovare incassi mancanti o rimborsi non registrati. Vorremmo uno script che faccia il confronto e segnali le differenze. Report esportabili dai provider, ordini su MySQL. Obiettivo: Chiusura mensile più rapida e senza sviste.","typical_approach":"Lettura dei report dei provider, abbinamento per identificativo e importo con tolleranze, gestione di rimborsi e pagamenti parziali, report delle differenze con dettaglio e storico delle riconciliazioni.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":300,"max":850},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2025-12-29T09:00:00+01:00"},{"title":"App B4A: stampa su stampante Bluetooth portatile","url":"https://devrequest.it/richieste/b4x/app-b4a-stampa-su-stampante-bluetooth-portatile","category":"B4X","technologies":["B4A","B4X"],"summary":"Dobbiamo stampare la ricevuta di consegna dall'app B4A dei nostri autisti su una piccola stampante termica Bluetooth. La stampante viene rilevata ma la stampa esce con caratteri strani e senza logo. App B4A esistente, stampante termica portatile con comandi ESC/POS. Obiettivo: Ricevuta leggibile con logo, accenti corretti e codice a barre.","typical_approach":"Gestione della connessione seriale Bluetooth, invio dei comandi ESC/POS corretti con la code page adatta per le lettere accentate, conversione del logo in formato raster supportato e stampa del codice a barre. Test sul modello di stampante in uso.","preparation_checklist":["Modello della stampante e manuale comandi","Sorgenti B4A","Esempio di ricevuta desiderata"],"indicative_cost_eur":{"min":150,"max":450},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2025-12-28T09:00:00+01:00"},{"title":"Sincronizzare il catalogo WooCommerce con Amazon e eBay","url":"https://devrequest.it/richieste/e-commerce/sincronizzare-il-catalogo-woocommerce-con-amazon-e-ebay","category":"E-commerce","technologies":["PHP","REST API","WooCommerce"],"summary":"Vendiamo sullo shop WooCommerce e sui marketplace, ma prezzi e disponibilità vengono aggiornati a mano su ogni canale. Capita di vendere lo stesso pezzo due volte. Vorremmo che lo shop fosse la fonte unica e i marketplace si aggiornassero da soli. Circa 1.800 prodotti, molti con varianti di taglia e colore. Obiettivo: Giacenze coerenti su tutti i canali di vendita.","typical_approach":"Valutazione tra connettore esistente e integrazione su misura tramite le API dei marketplace. Sincronizzazione di giacenze e prezzi a intervalli brevi, importazione degli ordini nello shop e gestione degli errori di pubblicazione per singolo prodotto.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":1000,"max":2400},"indicative_hours":{"min":20,"max":45},"difficulty":"high","is_example":true,"published_at":"2025-12-27T09:00:00+01:00"},{"title":"Ridurre i tempi di risposta delle API PHP del gestionale","url":"https://devrequest.it/richieste/php/ridurre-i-tempi-di-risposta-delle-api-php-del-gestionale","category":"PHP","technologies":["PHP","Redis","REST API"],"summary":"L'app degli agenti chiama le nostre API PHP e alcune risposte impiegano diversi secondi, soprattutto la lista clienti con saldo. Gli agenti lamentano lentezza in visita. API PHP con calcoli dei saldi a ogni chiamata. Obiettivo: Risposte rapide anche con rete mobile.","typical_approach":"Misura dei tempi per endpoint, ottimizzazione delle query, paginazione e campi selezionabili, cache dei dati calcolati con invalidazione all'aggiornamento e compressione delle risposte.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":300,"max":800},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2025-12-26T09:00:00+01:00"},{"title":"Videochiamata di assistenza integrata in app B4A","url":"https://devrequest.it/richieste/b4x/videochiamata-di-assistenza-integrata-in-app-b4a","category":"B4X","technologies":["Android","B4A","B4X"],"summary":"I nostri clienti installano macchinari e spesso hanno bisogno di mostrare un problema al tecnico. Vorremmo avviare dall'app una videochiamata con l'assistenza, con possibilità di scattare foto durante la chiamata. App B4A per clienti già registrati. Obiettivo: Assistenza remota più rapida.","typical_approach":"Integrazione con un servizio di videochiamata che offre SDK o interfaccia web, avvio dalla scheda macchinario, gestione permessi microfono e fotocamera e registro delle sessioni di assistenza.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":850,"max":2200},"indicative_hours":{"min":16,"max":40},"difficulty":"high","is_example":true,"published_at":"2025-12-24T09:00:00+01:00"},{"title":"Sviluppare un modulo personalizzato per un gestionale Symfony","url":"https://devrequest.it/richieste/php/sviluppare-un-modulo-personalizzato-per-un-gestionale-symfony","category":"PHP","technologies":["PHP","PostgreSQL","Symfony"],"summary":"Il nostro gestionale è sviluppato in Symfony e ci serve un nuovo modulo per la gestione dei contratti di assistenza, con scadenze, rinnovi automatici e fatturazione periodica collegata ai clienti esistenti. Applicazione Symfony ben strutturata con test esistenti. Obiettivo: Contratti gestiti nel gestionale e non più in Excel.","typical_approach":"Entità e migrazioni per contratti e rinnovi, regole di calcolo delle scadenze, comandi pianificati per i rinnovi, integrazione con la fatturazione esistente e test coerenti con quelli del progetto.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del framework","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":700,"max":1800},"indicative_hours":{"min":14,"max":32},"difficulty":"medium","is_example":true,"published_at":"2025-12-23T09:00:00+01:00"},{"title":"Migliorare i Core Web Vitals di un sito JavaScript","url":"https://devrequest.it/richieste/frontend/migliorare-i-core-web-vitals-di-un-sito-javascript","category":"Frontend","technologies":["HTML/CSS","JavaScript"],"summary":"Gli strumenti di analisi segnalano che il nostro sito ha tempi di caricamento e stabilità del layout insufficienti, soprattutto da smartphone. Temiamo un impatto sul posizionamento e sulle conversioni. Sito con molti script di terze parti e immagini pesanti. Obiettivo: Indicatori di esperienza nella fascia buona.","typical_approach":"Misura su pagine rappresentative, riduzione e caricamento differito degli script, dimensioni riservate per immagini e banner, ottimizzazione dei font, immagini responsive e verifica con dati reali nelle settimane successive.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":300,"max":850},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2025-12-22T09:00:00+01:00"},{"title":"Sviluppare app B4X per inventario di magazzino con barcode","url":"https://devrequest.it/richieste/b4x/sviluppare-app-b4x-per-inventario-di-magazzino-con-barcode","category":"B4X","technologies":["B4A","B4X","SQLite"],"summary":"Vorremmo un'app semplice per fare l'inventario di magazzino con i telefoni aziendali: lettura del codice a barre con la fotocamera, inserimento della quantità, elenco delle differenze rispetto al gestionale ed esportazione finale. Telefoni Android aziendali, gestionale che accetta l'import di un file CSV. Obiettivo: Inventario completo più veloce e senza fogli di carta.","typical_approach":"App B4X con lettura barcode tramite fotocamera, database locale degli articoli scaricato dal gestionale, conteggi per ubicazione, gestione di articoli non trovati, riepilogo differenze ed esportazione CSV nel formato richiesto dal gestionale.","preparation_checklist":["Export articoli dal gestionale","Formato del file di import richiesto","Esempi di codici a barre usati"],"indicative_cost_eur":{"min":650,"max":1700},"indicative_hours":{"min":12,"max":30},"difficulty":"medium","is_example":true,"published_at":"2025-12-21T09:00:00+01:00"},{"title":"Esportare gli ordini Shopify verso il magazzino logistico in CSV","url":"https://devrequest.it/richieste/e-commerce/esportare-gli-ordini-shopify-verso-il-magazzino-logistico-in-csv","category":"E-commerce","technologies":["Node.js","Shopify"],"summary":"Il nostro magazzino esterno vuole ricevere gli ordini da evadere in un file CSV con un tracciato preciso, caricato due volte al giorno su un loro server SFTP. Oggi lo prepariamo a mano esportando da Shopify e sistemando le colonne. Negozio Shopify con circa 80 ordini al giorno. Obiettivo: Invio automatico e puntuale degli ordini al magazzino.","typical_approach":"Lettura degli ordini pagati tramite API Shopify, generazione del CSV nel tracciato richiesto e caricamento via SFTP a orari pianificati. Marcatura degli ordini già trasmessi per evitare doppi invii.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":200,"max":480},"indicative_hours":{"min":4,"max":9},"difficulty":"low","is_example":true,"published_at":"2025-12-20T09:00:00+01:00"},{"title":"Integrare il login con account Google e Microsoft","url":"https://devrequest.it/richieste/php/integrare-il-login-con-account-google-e-microsoft","category":"PHP","technologies":["OAuth 2.0","PHP"],"summary":"Gli utenti del nostro portale B2B chiedono di accedere con l'account aziendale Google o Microsoft invece di ricordare un'altra password. I permessi devono restare quelli assegnati nel portale. Portale PHP con gestione utenti interna. Obiettivo: Accesso più semplice mantenendo i permessi.","typical_approach":"Integrazione OpenID Connect con i due provider, associazione degli account per email verificata, gestione dei primi accessi, mantenimento dei ruoli locali e accesso con password come alternativa.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":250,"max":650},"indicative_hours":{"min":5,"max":12},"difficulty":"medium","is_example":true,"published_at":"2025-12-19T09:00:00+01:00"},{"title":"Test e debug di un'app B4A che consuma troppa batteria","url":"https://devrequest.it/richieste/b4x/test-e-debug-di-un-app-b4a-che-consuma-troppa-batteria","category":"B4X","technologies":["Android","B4A","B4X"],"summary":"Gli utenti segnalano che la nostra app B4A scarica la batteria anche quando non viene usata. Nelle impostazioni del telefono risulta tra le app che consumano di più. App con sincronizzazione periodica e servizio sempre attivo. Obiettivo: Consumi ridotti mantenendo le funzioni.","typical_approach":"Misura dei consumi, eliminazione dei timer e dei servizi superflui, pianificazione della sincronizzazione con le API di sistema, aggregazione delle richieste di rete e uso della posizione solo quando serve.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":200,"max":650},"indicative_hours":{"min":4,"max":12},"difficulty":"medium","is_example":true,"published_at":"2025-12-17T09:00:00+01:00"},{"title":"Correggere sessioni che scadono troppo presto nel portale PHP","url":"https://devrequest.it/richieste/php/correggere-sessioni-che-scadono-troppo-presto-nel-portale-php","category":"PHP","technologies":["Linux","PHP"],"summary":"Gli utenti del nostro portale vengono disconnessi dopo pochi minuti mentre compilano moduli lunghi e perdono i dati inseriti. Il timeout configurato dovrebbe essere di due ore. Più siti PHP sullo stesso server con cartella sessioni condivisa. Obiettivo: Sessioni con la durata prevista.","typical_approach":"Verifica della pulizia automatica delle sessioni condivisa tra siti, cartella o archivio sessioni dedicato, allineamento di durata del cookie e della sessione e salvataggio temporaneo delle bozze dei moduli.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del framework","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":100,"max":300},"indicative_hours":{"min":2,"max":5},"difficulty":"low","is_example":true,"published_at":"2025-12-16T09:00:00+01:00"},{"title":"Servizio .NET che riceve file via SFTP e li elabora","url":"https://devrequest.it/richieste/c-sharp-e-net/servizio-net-che-riceve-file-via-sftp-e-li-elabora","category":"C# e .NET","technologies":["C#",".NET","SQL Server"],"summary":"Un nostro grande cliente ci invia ordini e conferme come file su un server SFTP. Oggi li scarichiamo e li inseriamo a mano. Vorremmo un servizio che li scarichi, li elabori e li registri nel gestionale. File in formato a tracciato fisso, gestionale SQL Server. Obiettivo: Ordini del cliente acquisiti in automatico.","typical_approach":"Servizio con connessione SFTP a chiave, scaricamento con controllo dei file già elaborati, parsing con validazione del tracciato, inserimento in transazione, file di esito per il cliente e avvisi in caso di errore.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":400,"max":1100},"indicative_hours":{"min":8,"max":20},"difficulty":"medium","is_example":true,"published_at":"2025-12-15T09:00:00+01:00"},{"title":"Manutenzione di un gestionale desktop in VB.NET","url":"https://devrequest.it/richieste/windows/manutenzione-di-un-gestionale-desktop-in-vb-net","category":"Windows","technologies":["SQL Server","VB.NET"],"summary":"Usiamo un gestionale desktop scritto in VB.NET da un programmatore che ora non è più raggiungibile. Ci servono alcune modifiche (nuovi campi in anagrafica, un report aggiuntivo) e la correzione di un errore che compare in chiusura di fattura. Applicazione Windows Forms in VB.NET con database SQL Server, sorgenti disponibili. Obiettivo: Correggere l'errore, realizzare le modifiche e avere un…","typical_approach":"Ricostruzione dell'ambiente di compilazione, analisi dell'errore con riproduzione su copia del database, implementazione delle modifiche richieste e documentazione di come compilare e distribuire nuove versioni, così da non dipendere più da una sola persona.","preparation_checklist":["Sorgenti completi del progetto","Copia del database","Descrizione dell'errore con screenshot","Elenco modifiche richieste"],"indicative_cost_eur":{"min":450,"max":1300},"indicative_hours":{"min":8,"max":24},"difficulty":"medium","is_example":true,"published_at":"2025-12-14T09:00:00+01:00"},{"title":"Recuperare i carrelli abbandonati con email automatiche su WooCommerce","url":"https://devrequest.it/richieste/e-commerce/recuperare-i-carrelli-abbandonati-con-email-automatiche-su-woocommerce","category":"E-commerce","technologies":["MySQL","PHP","WooCommerce"],"summary":"Molti visitatori arrivano fino al carrello, inseriscono l'email e poi abbandonano. Vorremmo inviare uno o due promemoria automatici con il riepilogo dei prodotti, rispettando il consenso dato dal cliente. Shop WooCommerce con plugin di checkout standard. Obiettivo: Recuperare parte degli acquisti non conclusi.","typical_approach":"Registrazione dei carrelli con email e consenso, invio pianificato di promemoria con link di ripristino del carrello e interruzione automatica dopo l'acquisto. Statistiche semplici su invii e conversioni.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":150,"max":400},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2025-12-13T09:00:00+01:00"},{"title":"Correggere la generazione di codici a barre sulle etichette","url":"https://devrequest.it/richieste/php/correggere-la-generazione-di-codici-a-barre-sulle-etichette","category":"PHP","technologies":["PHP"],"summary":"Le etichette prodotto stampate dal gestionale hanno codici a barre che alcuni lettori non riconoscono. Il problema è comparso dopo il cambio della stampante. Etichette generate in PDF con codici EAN-13. Obiettivo: Codici leggibili da tutti i lettori.","typical_approach":"Verifica della generazione (cifra di controllo, zona di rispetto), uso di grafica vettoriale invece di immagini scalate, calibrazione delle dimensioni per la risoluzione della nuova stampante e prove di lettura.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":100,"max":300},"indicative_hours":{"min":2,"max":5},"difficulty":"low","is_example":true,"published_at":"2025-12-12T09:00:00+01:00"},{"title":"Applicazione B4J con interfaccia web per controllo produzione","url":"https://devrequest.it/richieste/b4x/applicazione-b4j-con-interfaccia-web-per-controllo-produzione","category":"B4X","technologies":["B4J","B4X","JavaScript"],"summary":"Vorremmo un piccolo server B4J installato in reparto che mostri su browser lo stato delle linee di produzione, i pezzi prodotti e gli allarmi, consultabile da PC e tablet della rete interna. Dati delle macchine già raccolti in un database locale. Obiettivo: Cruscotto di reparto aggiornato in tempo reale.","typical_approach":"Server B4J con pagine web e aggiornamenti in tempo reale tramite connessione persistente, cruscotto per linea, storico degli allarmi, accesso con utenti di reparto e installazione come servizio.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":1000,"max":2800},"indicative_hours":{"min":20,"max":50},"difficulty":"high","is_example":true,"published_at":"2025-12-10T09:00:00+01:00"},{"title":"Revisione della sicurezza di un portale PHP prima del lancio","url":"https://devrequest.it/richieste/php/revisione-della-sicurezza-di-un-portale-php-prima-del-lancio","category":"PHP","technologies":["MySQL","PHP"],"summary":"Tra due settimane apriamo al pubblico un portale PHP sviluppato internamente con area clienti e pagamenti. Vorremmo una revisione del codice e della configurazione per individuare vulnerabilità prima del lancio. Codice su repository, ambiente di staging disponibile. Obiettivo: Rischi principali individuati e corretti prima del lancio.","typical_approach":"Revisione mirata su autenticazione, autorizzazioni, input, upload, sessioni e gestione degli errori, controllo delle dipendenze e della configurazione del server, report con priorità e verifica delle correzioni.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del framework","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":450,"max":1200},"indicative_hours":{"min":8,"max":20},"difficulty":"medium","is_example":true,"published_at":"2025-12-09T09:00:00+01:00"},{"title":"Migrare un'applicazione Visual Basic 6 verso .NET","url":"https://devrequest.it/richieste/windows/migrare-un-applicazione-visual-basic-6-verso-net","category":"Windows","technologies":["SQL Server","VB.NET","Visual Basic 6"],"summary":"Il software di produzione che usiamo da vent'anni è scritto in Visual Basic 6. Funziona, ma installarlo sui nuovi PC è sempre più complicato e alcuni componenti non sono più supportati. Vorremmo pianificare una migrazione graduale. Applicazione VB6 con controlli di terze parti e database SQL Server. Obiettivo: Piano di migrazione realistico e prima parte migrata senza fermare la produzione.","typical_approach":"Inventario di moduli, form e componenti esterni, valutazione tra conversione assistita e riscrittura per moduli, definizione delle priorità e migrazione progressiva verso .NET mantenendo lo stesso database, con le due versioni in parallelo nella fase di transizione.","preparation_checklist":["Sorgenti VB6 completi","Elenco componenti e librerie esterne","Funzioni critiche per la produzione"],"indicative_cost_eur":{"min":3000,"max":8000},"indicative_hours":{"min":60,"max":160},"difficulty":"high","is_example":true,"published_at":"2025-12-07T09:00:00+01:00"},{"title":"Abbonamenti ricorrenti con Stripe per un servizio in Laravel","url":"https://devrequest.it/richieste/pagamenti/abbonamenti-ricorrenti-con-stripe-per-un-servizio-in-laravel","category":"Pagamenti","technologies":["Laravel","PHP","Stripe","Webhook"],"summary":"Offriamo un servizio online e vorremmo passare da pagamenti singoli a piani mensili e annuali. Servono rinnovo automatico, gestione delle carte scadute, possibilità di cambiare piano e sospensione dell'accesso se il pagamento non va a buon fine. Applicazione Laravel con utenti già registrati. Obiettivo: Abbonamenti gestiti senza interventi manuali.","typical_approach":"Configurazione di prodotti e prezzi su Stripe, checkout ospitato per l'attivazione e portale cliente per la gestione. Aggiornamento dei diritti di accesso tramite webhook firmati, con gestione dei tentativi di addebito falliti.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":600,"max":1350},"indicative_hours":{"min":12,"max":26},"difficulty":"medium","is_example":true,"published_at":"2025-12-06T09:00:00+01:00"},{"title":"Creare un sistema di ticket per l'assistenza clienti","url":"https://devrequest.it/richieste/php/creare-un-sistema-di-ticket-per-l-assistenza-clienti","category":"PHP","technologies":["MySQL","PHP"],"summary":"Le richieste di assistenza arrivano su email, telefono e chat e non sappiamo quali sono ancora aperte. Vorremmo un semplice sistema di ticket integrato nel nostro portale clienti. Portale clienti PHP esistente, tre operatori di assistenza. Obiettivo: Nessuna richiesta dimenticata e tempi misurabili.","typical_approach":"Apertura ticket dal portale e da email, assegnazione agli operatori, stati e priorità, risposte con notifica, tempi di presa in carico e chiusura e base di risposte frequenti.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":700,"max":1700},"indicative_hours":{"min":14,"max":30},"difficulty":"medium","is_example":true,"published_at":"2025-12-05T09:00:00+01:00"},{"title":"Scansione documenti con ritaglio automatico in app B4A","url":"https://devrequest.it/richieste/b4x/scansione-documenti-con-ritaglio-automatico-in-app-b4a","category":"B4X","technologies":["B4A","B4X","OCR"],"summary":"I nostri agenti fotografano bolle e documenti firmati con il telefono, ma le foto sono storte e poco leggibili. Vorremmo una funzione di scansione con ritaglio dei bordi, raddrizzamento e salvataggio in PDF. App B4A con invio documenti al gestionale. Obiettivo: Documenti leggibili e archiviabili.","typical_approach":"Integrazione di un componente di scansione documenti con rilevamento dei bordi, correzione prospettica, filtri di contrasto, PDF multipagina compresso e invio con i metadati della pratica.","preparation_checklist":["Progetto B4X e versione dell'IDE","Librerie aggiuntive utilizzate","Dispositivi e versioni di sistema su cui si verifica","Log o messaggi di errore"],"indicative_cost_eur":{"min":650,"max":1700},"indicative_hours":{"min":12,"max":30},"difficulty":"high","is_example":true,"published_at":"2025-12-03T09:00:00+01:00"},{"title":"Integrare il calcolo delle spese di spedizione per zona e peso","url":"https://devrequest.it/richieste/php/integrare-il-calcolo-delle-spese-di-spedizione-per-zona-e-peso","category":"PHP","technologies":["MySQL","PHP"],"summary":"Il nostro e-commerce applica una spesa di spedizione fissa e su ordini pesanti o verso le isole perdiamo denaro. Vorremmo calcolarla in base a peso, volume e zona di destinazione. Tariffe del corriere in tabella, sito PHP su misura. Obiettivo: Spese di spedizione corrette e trasparenti.","typical_approach":"Tabella tariffe configurabile per zona e scaglioni, calcolo del peso volumetrico, soglie di spedizione gratuita, anteprima nel carrello e test sui casi limite delle destinazioni.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del framework","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":200,"max":550},"indicative_hours":{"min":4,"max":10},"difficulty":"low","is_example":true,"published_at":"2025-12-02T09:00:00+01:00"},{"title":"Programma desktop per acquisire dati da bilancia industriale","url":"https://devrequest.it/richieste/windows/programma-desktop-per-acquisire-dati-da-bilancia-industriale","category":"Windows","technologies":["C#",".NET","SQLite"],"summary":"In reparto spedizioni pesiamo i colli su una bilancia industriale e trascriviamo il peso a mano. Vorremmo un piccolo programma per PC Windows che legga il peso dalla bilancia, lo associ al numero d'ordine letto con un lettore barcode e salvi i dati per il gestionale. Bilancia con uscita seriale/USB, lettore barcode USB, PC Windows in reparto. Obiettivo: Pesatura senza trascrizioni manuali e dati…","typical_approach":"Applicazione Windows che comunica con la bilancia tramite porta seriale secondo il protocollo del produttore, acquisizione del barcode, salvataggio locale con invio al gestionale (file o API) e interfaccia a schermo intero con pulsanti grandi per l'uso in reparto.","preparation_checklist":["Modello della bilancia e manuale del protocollo","Formato dati richiesto dal gestionale","PC dove installare il programma"],"indicative_cost_eur":{"min":800,"max":2000},"indicative_hours":{"min":16,"max":36},"difficulty":"medium","is_example":true,"published_at":"2025-11-30T09:00:00+01:00"},{"title":"Riconciliare i pagamenti Stripe con le fatture del gestionale","url":"https://devrequest.it/richieste/pagamenti/riconciliare-i-pagamenti-stripe-con-le-fatture-del-gestionale","category":"Pagamenti","technologies":["PostgreSQL","Python","Stripe"],"summary":"Ogni mese l'amministrazione confronta a mano gli accrediti Stripe con le fatture emesse, tenendo conto di commissioni e rimborsi. È un lavoro di due giorni e spesso restano differenze che non si riescono a spiegare. Fatture salvate su PostgreSQL con riferimento al pagamento. Obiettivo: Quadratura mensile rapida e verificabile.","typical_approach":"Lettura di pagamenti, rimborsi e versamenti tramite API, abbinamento con le fatture tramite riferimento e importo. Report con commissioni separate e elenco delle partite non abbinate da verificare.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":300,"max":720},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2025-11-29T09:00:00+01:00"},{"title":"Sincronizzare i contatti del gestionale con il CRM","url":"https://devrequest.it/richieste/php/sincronizzare-i-contatti-del-gestionale-con-il-crm","category":"PHP","technologies":["PHP","REST API"],"summary":"I commerciali lavorano sul CRM, l'amministrazione sul gestionale e le anagrafiche non coincidono mai. Vorremmo sincronizzare clienti e contatti tra i due sistemi. Gestionale PHP e CRM in cloud con API REST. Obiettivo: Anagrafiche allineate senza doppio inserimento.","typical_approach":"Definizione del sistema autorevole per ogni campo, sincronizzazione incrementale nei due sensi, abbinamento per partita IVA ed email, gestione dei conflitti e log delle modifiche.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":300,"max":850},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2025-11-28T09:00:00+01:00"},{"title":"Stored procedure SQL Server per la chiusura mensile del magazzino","url":"https://devrequest.it/richieste/sql-server/stored-procedure-sql-server-per-la-chiusura-mensile-del-magazzino","category":"SQL Server","technologies":["SQL Server"],"summary":"Ogni fine mese il nostro magazziniere esegue a mano una serie di query per calcolare giacenze, valorizzazione al costo medio e differenze inventariali. Vorremmo una stored procedure unica che faccia tutto e salvi una fotografia del mese. Gestionale su SQL Server 2019 con movimenti di magazzino in un'unica tabella. Obiettivo: Chiusura mensile ripetibile in un solo passaggio.","typical_approach":"Analisi delle query attuali e consolidamento in una procedura transazionale con parametri di periodo. I risultati vengono storicizzati in una tabella dedicata, con controlli di coerenza prima del salvataggio.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":300,"max":800},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2025-11-26T09:00:00+01:00"},{"title":"Ridurre l'uso di memoria di uno script PHP di export","url":"https://devrequest.it/richieste/php/ridurre-l-uso-di-memoria-di-uno-script-php-di-export","category":"PHP","technologies":["MySQL","PHP"],"summary":"Lo script che esporta tutti i movimenti dell'anno si interrompe con errore di memoria esaurita. Abbiamo già alzato il limite più volte ma con l'aumento dei dati non basta più. Export di circa due milioni di righe caricate in un array. Obiettivo: Export completo con memoria costante.","typical_approach":"Lettura dei dati con cursore non bufferizzato, scrittura progressiva su file in streaming, rilascio delle risorse durante il ciclo e compressione del file finale.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del framework","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":100,"max":350},"indicative_hours":{"min":2,"max":6},"difficulty":"low","is_example":true,"published_at":"2025-11-25T09:00:00+01:00"},{"title":"Estrarre automaticamente dati da fatture PDF verso Excel","url":"https://devrequest.it/richieste/documenti-e-pdf/estrarre-automaticamente-dati-da-fatture-pdf-verso-excel","category":"Documenti e PDF","technologies":["Excel","OCR","Python"],"summary":"Riceviamo ogni mese circa 400 documenti di trasporto e fatture in PDF da fornitori diversi e un'impiegata ricopia in Excel numero documento, data, importi e codici articolo. Vorremmo automatizzare l'estrazione almeno per i fornitori più frequenti. PDF in parte nativi e in parte scansioni, una decina di layout ricorrenti. Obiettivo: Ridurre drasticamente l'inserimento manuale con controllo dei…","typical_approach":"Estrazione del testo dai PDF nativi e OCR per le scansioni, regole o modelli per layout ricorrente, validazione dei totali e segnalazione dei documenti da verificare manualmente, esportazione in Excel o importazione diretta nel gestionale.","preparation_checklist":["Esempi di documenti per ogni fornitore principale","Campi da estrarre","Formato di destinazione"],"indicative_cost_eur":{"min":450,"max":1100},"indicative_hours":{"min":8,"max":20},"difficulty":"medium","is_example":true,"published_at":"2025-11-23T09:00:00+01:00"},{"title":"Link di pagamento da inviare ai clienti dal gestionale","url":"https://devrequest.it/richieste/pagamenti/link-di-pagamento-da-inviare-ai-clienti-dal-gestionale","category":"Pagamenti","technologies":["MySQL","PHP","Stripe"],"summary":"Vorremmo inviare ai clienti un link per pagare con carta l'acconto di un preventivo, direttamente dalla scheda del gestionale. Quando il pagamento arriva, la pratica dovrebbe risultare saldata senza controllare l'estratto conto. Gestionale PHP interno con preventivi su MySQL. Obiettivo: Incasso degli acconti più rapido e tracciato.","typical_approach":"Creazione del link di pagamento con importo e riferimento al preventivo, conferma tramite webhook e aggiornamento dello stato della pratica. Gestione di scadenza e annullamento del link.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":200,"max":480},"indicative_hours":{"min":4,"max":9},"difficulty":"low","is_example":true,"published_at":"2025-11-22T09:00:00+01:00"},{"title":"Correggere gli errori 404 dopo il rifacimento del sito","url":"https://devrequest.it/richieste/php/correggere-gli-errori-404-dopo-il-rifacimento-del-sito","category":"PHP","technologies":["Apache","PHP"],"summary":"Dopo il rilascio del nuovo sito molte pagine vecchie restituiscono errore 404 e il traffico dai motori di ricerca è calato. Abbiamo l'elenco degli indirizzi più visitati del vecchio sito. Nuovo sito PHP con struttura di URL diversa. Obiettivo: Vecchi indirizzi reindirizzati alle nuove pagine.","typical_approach":"Mappatura dei vecchi URL sulle nuove pagine, redirect 301 permanenti senza catene, verifica dei link interni e della sitemap e monitoraggio degli errori nei giorni successivi.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":100,"max":350},"indicative_hours":{"min":2,"max":6},"difficulty":"low","is_example":true,"published_at":"2025-11-21T09:00:00+01:00"},{"title":"Indici mancanti e piani di esecuzione nel gestionale ordini SQL Server","url":"https://devrequest.it/richieste/sql-server/indici-mancanti-e-piani-di-esecuzione-nel-gestionale-ordini-sql-server","category":"SQL Server","technologies":["SQL Server"],"summary":"Da qualche settimana la ricerca ordini per cliente e periodo impiega quasi un minuto. Il fornitore del gestionale dice che dipende dal database, ma nessuno ha mai controllato indici e statistiche. Ci serve qualcuno che analizzi e intervenga. SQL Server Standard con circa 4 milioni di righe ordine. Obiettivo: Ricerche ordini in pochi secondi.","typical_approach":"Raccolta delle query più costose dalle DMV e da Query Store, lettura dei piani di esecuzione e proposta di indici mirati. Aggiornamento delle statistiche e confronto dei tempi prima e dopo su copia del database.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":250,"max":700},"indicative_hours":{"min":5,"max":12},"difficulty":"medium","is_example":true,"published_at":"2025-11-19T09:00:00+01:00"},{"title":"Gestionale PHP per noleggio attrezzature con disponibilità","url":"https://devrequest.it/richieste/php/gestionale-php-per-noleggio-attrezzature-con-disponibilita","category":"PHP","technologies":["JavaScript","MySQL","PHP"],"summary":"Noleggiamo attrezzature per eventi e gestiamo disponibilità e contratti su carta. Vorremmo un gestionale web con calendario delle disponibilità, contratti, cauzioni, consegne, rientri e controllo dei danni. Circa 1.200 articoli, alcuni in kit composti. Obiettivo: Nessuna doppia prenotazione e contratti ordinati.","typical_approach":"Modello per articoli singoli e kit, calcolo delle disponibilità per periodo con blocco in transazione, contratti in PDF, gestione cauzioni, check-list di consegna e rientro con foto e report di utilizzo.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del framework","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":1500,"max":3800},"indicative_hours":{"min":30,"max":70},"difficulty":"high","is_example":true,"published_at":"2025-11-18T09:00:00+01:00"},{"title":"Assistente AI per consultare procedure e documentazione interna","url":"https://devrequest.it/richieste/ai-e-ocr/assistente-ai-per-consultare-procedure-e-documentazione-interna","category":"AI e OCR","technologies":["LLM / AI generativa","Python"],"summary":"Abbiamo centinaia di procedure, manuali tecnici e istruzioni operative in PDF e Word. I nuovi assunti fanno fatica a trovare le informazioni. Vorremmo un assistente interno che risponda alle domande citando il documento di origine, senza inviare i documenti a servizi non controllati. Documenti su cartelle di rete, circa 2 GB, accesso solo per dipendenti. Obiettivo: Risposte affidabili con…","typical_approach":"Indicizzazione dei documenti con suddivisione in passaggi e ricerca semantica, generazione della risposta solo a partire dai passaggi trovati con citazione delle fonti, autenticazione aziendale, registrazione delle domande senza risposta per migliorare i contenuti e scelta di un fornitore AI compatibile con i requisiti di riservatezza.","preparation_checklist":["Campione rappresentativo dei documenti","Requisiti di riservatezza dei dati","Numero di utenti previsti"],"indicative_cost_eur":{"min":1300,"max":3500},"indicative_hours":{"min":24,"max":60},"difficulty":"high","is_example":true,"published_at":"2025-11-16T09:00:00+01:00"},{"title":"Accesso unico con Microsoft Entra ID per tre applicazioni interne","url":"https://devrequest.it/richieste/autenticazione-e-sso/accesso-unico-con-microsoft-entra-id-per-tre-applicazioni-interne","category":"Autenticazione e SSO","technologies":["C#",".NET","OAuth 2.0"],"summary":"I dipendenti usano tre applicazioni web interne, ciascuna con utenti e password propri. Vorremmo che accedessero con l'account aziendale già in uso per la posta, e che la disattivazione di un dipendente bloccasse subito tutti gli accessi. Applicazioni ASP.NET su server interno, tenant aziendale già attivo. Obiettivo: Un solo accesso e gestione utenti centralizzata.","typical_approach":"Registrazione delle applicazioni sul tenant, autenticazione OpenID Connect e mappatura dei gruppi aziendali sui ruoli applicativi. Collegamento degli utenti esistenti tramite email e periodo di transizione con doppio accesso.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":700,"max":1600},"indicative_hours":{"min":14,"max":30},"difficulty":"high","is_example":true,"published_at":"2025-11-15T09:00:00+01:00"},{"title":"Aggiungere il multilingua a un portale PHP esistente","url":"https://devrequest.it/richieste/php/aggiungere-il-multilingua-a-un-portale-php-esistente","category":"PHP","technologies":["MySQL","PHP"],"summary":"Il nostro portale è solo in italiano ma stiamo aprendo a clienti in Germania e Francia. Servono interfaccia, schede prodotto ed email in tre lingue. Testi scritti direttamente nei template PHP. Obiettivo: Portale e comunicazioni in tre lingue.","typical_approach":"Estrazione dei testi in file di traduzione, contenuti tradotti per prodotto, URL per lingua con tag hreflang, email nella lingua del cliente e flusso per gestire le traduzioni mancanti.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":800,"max":2200},"indicative_hours":{"min":16,"max":40},"difficulty":"high","is_example":true,"published_at":"2025-11-14T09:00:00+01:00"},{"title":"Configurare Always On availability group su due nodi SQL Server","url":"https://devrequest.it/richieste/sql-server/configurare-always-on-availability-group-su-due-nodi-sql-server","category":"SQL Server","technologies":["SQL Server","Windows Server"],"summary":"Il nostro database di produzione gira su un solo server e un guasto ci fermerebbe per ore. Abbiamo già un secondo server con le stesse licenze e vorremmo configurare un gruppo di disponibilità con failover verso il secondo nodo. Due server Windows nello stesso dominio, SQL Server Enterprise. Obiettivo: Database replicato con failover documentato.","typical_approach":"Verifica dei prerequisiti di cluster e rete, creazione del gruppo di disponibilità con listener e sincronizzazione dei database. Test di failover pianificato e stesura di una procedura operativa per lo staff interno.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":900,"max":2200},"indicative_hours":{"min":16,"max":36},"difficulty":"high","is_example":true,"published_at":"2025-11-12T09:00:00+01:00"},{"title":"Esporre un feed prodotti per Google Merchant e marketplace","url":"https://devrequest.it/richieste/php/esporre-un-feed-prodotti-per-google-merchant-e-marketplace","category":"PHP","technologies":["MySQL","PHP"],"summary":"Vorremmo pubblicare i prodotti del nostro sito su Google Shopping e su alcuni comparatori di prezzo. Serve un feed sempre aggiornato con prezzi, disponibilità, immagini e categorie richieste da ciascun canale. Catalogo PHP su misura con circa 5.000 prodotti. Obiettivo: Prodotti pubblicati sui canali senza errori.","typical_approach":"Generazione dei feed nei formati richiesti con mappatura delle categorie, esclusione dei prodotti non vendibili, rigenerazione pianificata e controllo degli errori segnalati dai canali.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del framework","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":150,"max":450},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2025-11-11T09:00:00+01:00"},{"title":"Classificare automaticamente le email in arrivo all'assistenza","url":"https://devrequest.it/richieste/email/classificare-automaticamente-le-email-in-arrivo-all-assistenza","category":"Email","technologies":["LLM / AI generativa","Python"],"summary":"La casella dell'assistenza riceve circa 150 email al giorno: richieste di intervento, solleciti, ordini, spam. Un operatore passa la mattina a smistarle. Vorremmo classificarle automaticamente e creare il ticket nel gestionale con priorità e categoria suggerite. Casella email aziendale accessibile via IMAP, gestionale ticket con API. Obiettivo: Smistamento automatico con verifica umana solo sui…","typical_approach":"Lettura periodica della casella, classificazione per categoria e urgenza con regole e modello linguistico, estrazione dei dati utili (cliente, numero ordine), creazione del ticket con livello di confidenza e coda di revisione per i casi incerti. Nessuna risposta automatica al cliente senza approvazione.","preparation_checklist":["Accesso IMAP alla casella","Elenco categorie e priorità","Documentazione API del gestionale ticket"],"indicative_cost_eur":{"min":550,"max":1400},"indicative_hours":{"min":10,"max":24},"difficulty":"medium","is_example":true,"published_at":"2025-11-09T09:00:00+01:00"},{"title":"Proteggere le API con token OAuth 2.0 per le app dei partner","url":"https://devrequest.it/richieste/autenticazione-e-sso/proteggere-le-api-con-token-oauth-2-0-per-le-app-dei-partner","category":"Autenticazione e SSO","technologies":["Node.js","OAuth 2.0","REST API"],"summary":"Le nostre API sono protette oggi da una chiave fissa condivisa con tutti i partner. Vorremmo dare a ciascuno credenziali proprie, con permessi limitati e la possibilità di revocarle senza toccare gli altri. API Node.js usate da una decina di partner. Obiettivo: Accessi separati, limitati e revocabili.","typical_approach":"Flusso client credentials con token a scadenza breve e ambiti di accesso per partner. Pannello per emissione e revoca delle credenziali, limitazione delle richieste e registro delle chiamate per cliente.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":400,"max":950},"indicative_hours":{"min":8,"max":18},"difficulty":"medium","is_example":true,"published_at":"2025-11-08T09:00:00+01:00"},{"title":"Proteggere il portale da tentativi di accesso ripetuti","url":"https://devrequest.it/richieste/php/proteggere-il-portale-da-tentativi-di-accesso-ripetuti","category":"PHP","technologies":["Nginx","PHP"],"summary":"Nei log vediamo migliaia di tentativi di login al giorno da indirizzi diversi. Temiamo che prima o poi qualche password debole venga indovinata. Portale PHP con login senza limiti di tentativi. Obiettivo: Tentativi automatici bloccati senza disagi agli utenti.","typical_approach":"Limitazione dei tentativi per account e per indirizzo, ritardi progressivi, avviso all'utente per accessi sospetti, requisiti minimi per le password e regole a livello di web server per i picchi.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":100,"max":350},"indicative_hours":{"min":2,"max":6},"difficulty":"low","is_example":true,"published_at":"2025-11-07T09:00:00+01:00"},{"title":"Report SQL Server sulle marginalità per agente e linea di prodotto","url":"https://devrequest.it/richieste/sql-server/report-sql-server-sulle-marginalita-per-agente-e-linea-di-prodotto","category":"SQL Server","technologies":["Excel","SQL Server"],"summary":"La direzione commerciale vuole vedere ogni settimana il margine per agente, per linea di prodotto e per cliente, confrontato con lo stesso periodo dell'anno precedente. Oggi lo ricostruiamo in Excel incollando tre esportazioni diverse. Dati di vendita e costi su SQL Server, utenti che lavorano in Excel. Obiettivo: Un report aggiornato senza incollare dati a mano.","typical_approach":"Vista o procedura che calcola ricavi, costi e margini con confronto anno su anno. Il risultato viene collegato a un file Excel con connessione dati aggiornabile, con filtri per agente e periodo.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":300,"max":750},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2025-11-05T09:00:00+01:00"},{"title":"Correggere l'invio di email che finiscono nello spam","url":"https://devrequest.it/richieste/php/correggere-l-invio-di-email-che-finiscono-nello-spam","category":"PHP","technologies":["Linux","PHP"],"summary":"Le email di conferma ordine e recupero password inviate dal nostro sito PHP finiscono quasi sempre nello spam dei clienti, soprattutto con le caselle più diffuse. Invio con la funzione mail del server senza autenticazione. Obiettivo: Email transazionali consegnate in posta in arrivo.","typical_approach":"Invio tramite SMTP autenticato o servizio transazionale, configurazione dei record SPF, DKIM e DMARC del dominio, mittente coerente, contenuti con versione testo e monitoraggio dei rimbalzi.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del framework","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":100,"max":350},"indicative_hours":{"min":2,"max":6},"difficulty":"low","is_example":true,"published_at":"2025-11-04T09:00:00+01:00"},{"title":"Automatizzare un report Excel giornaliero da inviare via email","url":"https://devrequest.it/richieste/excel-csv/automatizzare-un-report-excel-giornaliero-da-inviare-via-email","category":"Excel / CSV","technologies":["Excel","Python","SQL Server"],"summary":"Ogni mattina un responsabile estrae i dati dal gestionale, li incolla in un modello Excel con grafici e lo invia via email alla direzione. Richiede mezz'ora al giorno e se è assente il report non parte. Vorremmo automatizzare tutto. Dati su SQL Server, modello Excel esistente, server Windows sempre acceso. Obiettivo: Report generato e inviato automaticamente ogni mattina alle 7:30.","typical_approach":"Script pianificato che estrae i dati con query dedicate, compila il modello Excel mantenendo formattazione e grafici, salva una copia in archivio e invia l'email ai destinatari configurati. In caso di errore viene inviato un avviso al referente.","preparation_checklist":["Modello Excel attuale","Query o criteri di estrazione","Elenco destinatari","Server SMTP aziendale"],"indicative_cost_eur":{"min":150,"max":400},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2025-11-02T09:00:00+01:00"},{"title":"API Laravel per l'app mobile degli agenti di commercio","url":"https://devrequest.it/richieste/rest-api/api-laravel-per-l-app-mobile-degli-agenti-di-commercio","category":"REST API","technologies":["Laravel","MySQL","PHP","REST API"],"summary":"Stiamo facendo realizzare un'app per gli agenti e ci serve il backend: consultazione di clienti, listini e storico ordini, invio di nuovi ordini e sincronizzazione quando l'agente torna online. I dati sono nel nostro database gestionale. Database MySQL del gestionale, circa 25 agenti. Obiettivo: API stabili e documentate per lo sviluppatore dell'app.","typical_approach":"Endpoint versionati con autenticazione per agente, filtri per vedere solo i propri clienti e sincronizzazione incrementale per data di modifica. Documentazione OpenAPI e ambiente di prova per lo sviluppo dell'app.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":800,"max":1700},"indicative_hours":{"min":16,"max":34},"difficulty":"medium","is_example":true,"published_at":"2025-11-01T09:00:00+01:00"},{"title":"Generare automaticamente la sitemap XML del sito PHP","url":"https://devrequest.it/richieste/php/generare-automaticamente-la-sitemap-xml-del-sito-php","category":"PHP","technologies":["PHP"],"summary":"Il nostro sito ha centinaia di pagine prodotto ma la sitemap viene aggiornata a mano e spesso è vecchia. Vorremmo che si aggiornasse da sola includendo solo le pagine pubblicate. Sito PHP con prodotti e articoli su database. Obiettivo: Sitemap sempre aggiornata.","typical_approach":"Generazione dinamica della sitemap con indice per sezioni, date di ultima modifica reali, esclusione di pagine private o non indicizzabili e cache per non appesantire il server.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del database","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":80,"max":250},"indicative_hours":{"min":1,"max":4},"difficulty":"low","is_example":true,"published_at":"2025-10-31T09:00:00+01:00"},{"title":"Ripristinare un database SQL Server da backup differenziale e log","url":"https://devrequest.it/richieste/sql-server/ripristinare-un-database-sql-server-da-backup-differenziale-e-log","category":"SQL Server","technologies":["SQL Server"],"summary":"Un aggiornamento eseguito per errore ha sovrascritto i prezzi di listino di tutti gli articoli. Abbiamo backup completi notturni, differenziali e backup del log ogni ora, ma non sappiamo come ripristinare fino al momento giusto senza perdere il resto del lavoro. Database in modello di recupero completo, backup su cartella di rete. Obiettivo: Recuperare i prezzi corretti senza perdere gli ordini…","typical_approach":"Ripristino della catena di backup su un database separato fino al punto precedente all'errore. Confronto dei dati con la produzione e aggiornamento mirato della sola tabella dei prezzi, dopo verifica condivisa.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":200,"max":600},"indicative_hours":{"min":3,"max":8},"difficulty":"high","is_example":true,"published_at":"2025-10-29T09:00:00+01:00"},{"title":"Portale PHP per la gestione delle iscrizioni a un'associazione","url":"https://devrequest.it/richieste/php/portale-php-per-la-gestione-delle-iscrizioni-a-un-associazione","category":"PHP","technologies":["MySQL","PHP","Stripe"],"summary":"La nostra associazione ha circa 2.000 soci e gestisce rinnovi, quote e tessere con un foglio di calcolo. Vorremmo un portale dove i soci si iscrivono, pagano la quota e scaricano la tessera. Segreteria di due volontari, pagamenti oggi con bonifico. Obiettivo: Rinnovi semplici e anagrafica soci aggiornata.","typical_approach":"Area soci con iscrizione e rinnovo, pagamento online o bonifico con conferma, tessera digitale con codice di verifica, promemoria di scadenza e pannello di segreteria con esportazioni.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del framework","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":700,"max":1800},"indicative_hours":{"min":14,"max":32},"difficulty":"medium","is_example":true,"published_at":"2025-10-28T09:00:00+01:00"},{"title":"Configurare una VPS Linux per un'applicazione PHP","url":"https://devrequest.it/richieste/linux-server/configurare-una-vps-linux-per-un-applicazione-php","category":"Linux server","technologies":["Linux","Nginx","PHP","PostgreSQL"],"summary":"Vogliamo spostare la nostra applicazione PHP da un hosting condiviso a una VPS per avere più controllo e prestazioni. Ci serve la configurazione completa del server in modo sicuro, perché internamente non abbiamo un sistemista. VPS appena acquistata, applicazione PHP con database PostgreSQL. Obiettivo: Server sicuro e documentato con applicazione online, HTTPS e backup.","typical_approach":"Hardening di base (utenti, accesso SSH con chiave, firewall, aggiornamenti automatici di sicurezza), installazione di Nginx, PHP-FPM e PostgreSQL, certificato HTTPS con rinnovo automatico, backup giornalieri verificati, monitoraggio essenziale e documentazione delle credenziali e delle procedure.","preparation_checklist":["Accesso alla VPS","Requisiti dell'applicazione (versione PHP, estensioni)","Dominio e accesso ai DNS"],"indicative_cost_eur":{"min":250,"max":600},"indicative_hours":{"min":4,"max":10},"difficulty":"medium","is_example":true,"published_at":"2025-10-26T09:00:00+01:00"},{"title":"Documentare con OpenAPI un'API Node.js esistente","url":"https://devrequest.it/richieste/rest-api/documentare-con-openapi-un-api-node-js-esistente","category":"REST API","technologies":["Node.js","REST API","TypeScript"],"summary":"Abbiamo un'API Node.js cresciuta negli anni senza documentazione. Ogni nuovo partner ci fa decine di domande su parametri e risposte. Vorremmo una documentazione consultabile e aggiornata insieme al codice. Circa 35 endpoint in Express con TypeScript. Obiettivo: Documentazione chiara e sempre allineata.","typical_approach":"Descrizione degli endpoint in formato OpenAPI generata o verificata dal codice, esempi di richiesta e risposta, pagina di consultazione interattiva. Controllo automatico per segnalare differenze tra specifica e implementazione.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":200,"max":520},"indicative_hours":{"min":4,"max":10},"difficulty":"low","is_example":true,"published_at":"2025-10-25T09:00:00+02:00"},{"title":"Script Python che unisce e pulisce i report di vendita mensili","url":"https://devrequest.it/richieste/python/script-python-che-unisce-e-pulisce-i-report-di-vendita-mensili","category":"Python","technologies":["Excel","Python"],"summary":"Ogni mese riceviamo cinque file Excel dalle filiali con colonne leggermente diverse e li uniamo a mano per il report di direzione. Vorremmo uno script che li legga, uniformi i dati e produca il riepilogo. File Excel con nomi di colonna e formati data diversi. Obiettivo: Report mensile pronto in pochi minuti.","typical_approach":"Script Python con mappatura configurabile delle colonne, normalizzazione di date, importi e codici, controlli di coerenza con elenco delle anomalie e generazione del riepilogo in Excel con totali per filiale.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":200,"max":550},"indicative_hours":{"min":4,"max":10},"difficulty":"low","is_example":true,"published_at":"2025-10-24T09:00:00+02:00"},{"title":"Problemi di collation tra database SQL Server e tempdb","url":"https://devrequest.it/richieste/sql-server/problemi-di-collation-tra-database-sql-server-e-tempdb","category":"SQL Server","technologies":["C#","SQL Server"],"summary":"Dopo il trasferimento del database su un nuovo server alcune procedure vanno in errore con il messaggio di conflitto di collation durante i confronti tra tabelle temporanee e tabelle del database. L'applicazione .NET mostra errori in più schermate. Database con collation Latin1_General_CI_AS, nuova istanza installata con collation diversa. Obiettivo: Procedure di nuovo funzionanti senza errori di…","typical_approach":"Censimento delle collation di istanza, database e colonne. Correzione delle procedure con clausole COLLATE dove serve oppure, se fattibile, reinstallazione dell'istanza con collation allineata, valutando i pro e i contro.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":150,"max":450},"indicative_hours":{"min":3,"max":8},"difficulty":"medium","is_example":true,"published_at":"2025-10-22T09:00:00+02:00"},{"title":"Spostare la configurazione e le password fuori dal codice PHP","url":"https://devrequest.it/richieste/php/spostare-la-configurazione-e-le-password-fuori-dal-codice-php","category":"PHP","technologies":["PHP"],"summary":"Nel nostro progetto PHP le credenziali del database e delle API sono scritte nei file sorgente e finiscono nel repository. Vorremmo separare la configurazione per ambiente e togliere le password dal codice. Ambienti di sviluppo, test e produzione configurati a mano. Obiettivo: Configurazione sicura e diversa per ambiente.","typical_approach":"File di ambiente esclusi dal repository con modello di esempio, lettura centralizzata della configurazione, rotazione delle credenziali già esposte e pulizia della storia del repository se necessario.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del framework","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":150,"max":450},"indicative_hours":{"min":3,"max":8},"difficulty":"low","is_example":true,"published_at":"2025-10-21T09:00:00+02:00"},{"title":"Certificato SSL scaduto: sito segnalato come non sicuro","url":"https://devrequest.it/richieste/hosting-e-vps/certificato-ssl-scaduto-sito-segnalato-come-non-sicuro","category":"Hosting e VPS","technologies":["Apache","Linux","Nginx"],"summary":"Da stamattina il browser mostra un avviso di sicurezza sul nostro sito e i clienti non riescono ad accedere all'area riservata. Sembra che il certificato SSL sia scaduto. La persona che lo aveva configurato non lavora più con noi. Server Linux con Apache, accesso SSH disponibile. Obiettivo: Sito di nuovo raggiungibile in HTTPS e rinnovo automatico per il futuro.","typical_approach":"Emissione di un nuovo certificato, configurazione corretta del virtual host e della catena dei certificati, attivazione del rinnovo automatico con verifica e reindirizzamento da HTTP a HTTPS. Si controlla anche che non ci siano altri domini o sottodomini in scadenza.","preparation_checklist":["Accesso SSH al server","Elenco domini e sottodomini","Accesso al pannello DNS se necessario"],"indicative_cost_eur":{"min":60,"max":200},"indicative_hours":{"min":1,"max":4},"difficulty":"low","is_example":true,"published_at":"2025-10-19T09:00:00+02:00"},{"title":"Inviare le fatture allo SDI tramite API di un intermediario","url":"https://devrequest.it/richieste/rest-api/inviare-le-fatture-allo-sdi-tramite-api-di-un-intermediario","category":"REST API","technologies":["Fatturazione elettronica SDI","MySQL","PHP","REST API"],"summary":"Generiamo già l'XML FatturaPA dal nostro software ma lo carichiamo a mano sul portale dell'intermediario e controlliamo le notifiche una per una. Vorremmo l'invio automatico e la lettura degli esiti di consegna o scarto direttamente nel software. Software PHP gestionale con circa 300 fatture al mese. Obiettivo: Invio e controllo esiti senza passaggi manuali.","typical_approach":"Invio dei file tramite le API dell'intermediario, lettura periodica delle notifiche e aggiornamento dello stato di ogni fattura. Evidenza degli scarti con il motivo e possibilità di correzione e reinvio.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":500,"max":1250},"indicative_hours":{"min":10,"max":24},"difficulty":"medium","is_example":true,"published_at":"2025-10-18T09:00:00+02:00"},{"title":"Rendere più veloce uno script Python di elaborazione dati","url":"https://devrequest.it/richieste/python/rendere-piu-veloce-uno-script-python-di-elaborazione-dati","category":"Python","technologies":["Python"],"summary":"Un nostro script Python elabora un file di letture dei contatori e impiega quasi tre ore. Il volume è raddoppiato e rischiamo di non avere i dati pronti la mattina. Script scritto anni fa con cicli annidati sulle righe. Obiettivo: Elaborazione completata in pochi minuti.","typical_approach":"Profilazione per individuare i punti lenti, sostituzione dei cicli con operazioni vettoriali o strutture dati adeguate, lettura a blocchi del file e confronto dei risultati con la versione originale.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":200,"max":650},"indicative_hours":{"min":4,"max":12},"difficulty":"medium","is_example":true,"published_at":"2025-10-17T09:00:00+02:00"},{"title":"Job SQL Server Agent per esportare ogni notte gli ordini al corriere","url":"https://devrequest.it/richieste/sql-server/job-sql-server-agent-per-esportare-ogni-notte-gli-ordini-al-corriere","category":"SQL Server","technologies":["Bash","SQL Server"],"summary":"Il corriere ci chiede un file con le spedizioni del giorno in un tracciato preciso, da depositare su una cartella condivisa entro le 22. Ora lo prepara a mano un collega prima di uscire e capita spesso che venga dimenticato. Ordini evasi su SQL Server, tracciato a larghezza fissa fornito dal corriere. Obiettivo: File generato e consegnato ogni sera in automatico.","typical_approach":"Query di estrazione conforme al tracciato, job pianificato con SQL Server Agent che genera il file e lo copia sulla destinazione. Notifica via email in caso di errore e registro delle esecuzioni.","preparation_checklist":["Versione e edizione del database","Schema delle tabelle coinvolte o accesso in lettura","Esempio delle query o dei dati problematici","Ambiente di test o copia del database, se disponibile"],"indicative_cost_eur":{"min":150,"max":400},"indicative_hours":{"min":3,"max":7},"difficulty":"low","is_example":true,"published_at":"2025-10-15T09:00:00+02:00"},{"title":"Generare automaticamente la fattura elettronica dal gestionale PHP","url":"https://devrequest.it/richieste/php/generare-automaticamente-la-fattura-elettronica-dal-gestionale-php","category":"PHP","technologies":["Fatturazione elettronica SDI","PHP"],"summary":"Emettiamo le fatture nel nostro gestionale PHP ma poi le reinseriamo a mano nel portale per la fattura elettronica. Vorremmo generare il file XML e inviarlo tramite un intermediario, ricevendo le notifiche di esito. Circa 400 fatture al mese, alcune con split payment. Obiettivo: Fatture inviate dal gestionale senza doppio inserimento.","typical_approach":"Generazione dell'XML secondo le specifiche vigenti con validazione, invio tramite API dell'intermediario, ricezione e archiviazione delle notifiche, gestione degli scarti e conservazione dei file.","preparation_checklist":["Accesso al codice o al repository","Versione di PHP e del framework","Descrizione del comportamento atteso","Ambiente di test, se disponibile"],"indicative_cost_eur":{"min":850,"max":2200},"indicative_hours":{"min":16,"max":40},"difficulty":"high","is_example":true,"published_at":"2025-10-14T09:00:00+02:00"},{"title":"Containerizzare con Docker un'applicazione legacy","url":"https://devrequest.it/richieste/docker/containerizzare-con-docker-un-applicazione-legacy","category":"Docker","technologies":["Docker","Linux","MySQL","PHP"],"summary":"Ogni volta che un nuovo sviluppatore deve lavorare sul nostro gestionale perde giorni a configurare l'ambiente, e il server di produzione è diverso da quello di sviluppo. Vorremmo un ambiente Docker identico per sviluppo, test e produzione. Applicazione PHP con MySQL, Redis e un job notturno pianificato. Obiettivo: Avvio dell'ambiente con un comando e distribuzione ripetibile.","typical_approach":"Creazione delle immagini per applicazione e servizi, docker compose per lo sviluppo, gestione della configurazione tramite variabili d'ambiente, volumi per dati e upload, job pianificato in un container dedicato e documentazione delle procedure di avvio, aggiornamento e backup.","preparation_checklist":["Accesso al repository","Elenco dei servizi utilizzati","Server di destinazione"],"indicative_cost_eur":{"min":350,"max":850},"indicative_hours":{"min":6,"max":14},"difficulty":"medium","is_example":true,"published_at":"2025-10-12T09:00:00+02:00"},{"title":"Sostituire le macro Excel del calcolo provvigioni con uno script Python","url":"https://devrequest.it/richieste/excel-csv/sostituire-le-macro-excel-del-calcolo-provvigioni-con-uno-script-python","category":"Excel / CSV","technologies":["Excel","Python"],"summary":"Le provvigioni degli agenti si calcolano con una cartella Excel piena di macro scritte anni fa da un collega che non c'è più. Si blocca spesso e nessuno osa modificarla. Vorremmo uno strumento più affidabile che produca gli stessi prospetti. File Excel con macro VBA e dati vendite esportati dal gestionale. Obiettivo: Calcolo affidabile, comprensibile e modificabile.","typical_approach":"Analisi delle regole implementate nelle macro, riscrittura in Python con lettura dell'esportazione vendite e produzione dei prospetti in Excel. Confronto dei risultati con alcuni mesi già calcolati prima del passaggio.","preparation_checklist":["Documentazione o credenziali di test dei sistemi da collegare","Esempi reali dei dati scambiati","Descrizione del flusso atteso","Ambiente di prova, se disponibile"],"indicative_cost_eur":{"min":400,"max":900},"indicative_hours":{"min":8,"max":18},"difficulty":"medium","is_example":true,"published_at":"2025-10-11T09:00:00+02:00"},{"title":"Web scraping autorizzato dei listini dai portali fornitori","url":"https://devrequest.it/richieste/python/web-scraping-autorizzato-dei-listini-dai-portali-fornitori","category":"Python","technologies":["Python"],"summary":"I nostri fornitori pubblicano prezzi e disponibilità nei loro portali riservati ai rivenditori, a cui abbiamo accesso. Vorremmo raccogliere ogni notte questi dati per aggiornare il nostro listino, nel rispetto delle condizioni d'uso. Tre portali con login e pagine prodotto paginate. Obiettivo: Listino aggiornato senza copia manuale.","typical_approach":"Verifica preliminare delle condizioni d'uso e di eventuali API o export ufficiali, raccolta a velocità contenuta con sessione autenticata, normalizzazione dei dati, confronto con il giorno precedente e segnalazione delle variazioni.","preparation_checklist":["Accesso ai sorgenti o descrizione del programma attuale","Linguaggio e versioni in uso","Esempi di input e risultato atteso","Ambiente in cui deve girare il programma"],"indicative_cost_eur":{"min":300,"max":850},"indicative_hours":{"min":6,"max":16},"difficulty":"medium","is_example":true,"published_at":"2025-10-10T09:00:00+02:00"}]}