Benvenuto Ospite,
per utilizzare il Forum ed avere accesso a tutte le sezioni e poter aprire un tuo Topic, rispondere nelle varie discussioni, mandare o ricevere Messaggi Privati devi seguire pochi passaggi:


Leggi il nostro Regolamento -> PREMI QUI <-
Segui il link su come Iscriversi -> PREMI QUI <-


Ricordati di aggiornare l'Avatar usando una immagine che ti distingua nel Forum

Sito web Arcade Database

Il database che raccoglie tutte le informazioni sui giochi, video, screenshot e tanto altro ancora

Moderatore: Moderatore ADB

Avatar utente
motoschifo

Gold Medal Donatore
Progetto Arcade Database
Progetto Arcade Database
Messaggi: 3333
Iscritto il: 12/07/2013, 20:29
Medaglie: 2
Città: Parma
Località: Parma
Grazie Inviati: 35 volte
Grazie Ricevuti: 41 volte
Contatta:

Re: Sito web Arcade Database

Messaggio da motoschifo »

ho attivato la compilazione automatica delle dll, quindi ogni release nuova la potrai trovare qui:
https://github.com/motoschifo/mame-tools/releases

Normalmente quando aggiorno il sito poi cambio anche quella e i tool associati se necessitano di aggiornamenti.
Se vedi errori ovviamente segnalameli, ad ogni modo verifica prima se ci sono nuove versioni.

La dll MameTools.net48 farà tutto il lavoro di lettura o generazione di qualsiasi xml (giochi, software, cartelle hash ma anche chdinfo di progettosnaps).
La dll ArcadeDatabaseSdk.net48 si occuperà di interrogare il sito e caricare ogni informazione, dalle info sul gioco al download di immagini/video, ricerche, ecc.
In futuro se ne avrò necessità aggiungerò le chiamate come utente registrato, diciamo che per il momento non mi servono.
Tutto pubblico ed accessibile, quindi poi quando avrò raggiunto una stabilità decente tra alcuni mesi inizierò a togliere le vecchie chiamate e a trasformare pian piano le pagine del sito.
Motoschifo
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 WebArcadeDatabase
Avatar utente
Gothrek

Helper
Moderatore
Moderatore
Messaggi: 5617
Iscritto il: 13/07/2017, 13:30
Medaglie: 1
Città: Roma
Grazie Inviati: 20 volte
Grazie Ricevuti: 320 volte

Re: Sito web Arcade Database

Messaggio da Gothrek »

si mi sono "iscritto" quando aggiorni mi notificano :D
Avatar utente
motoschifo

Gold Medal Donatore
Progetto Arcade Database
Progetto Arcade Database
Messaggi: 3333
Iscritto il: 12/07/2013, 20:29
Medaglie: 2
Città: Parma
Località: Parma
Grazie Inviati: 35 volte
Grazie Ricevuti: 41 volte
Contatta:

Re: Sito web Arcade Database

Messaggio da motoschifo »

La riscrittura procede bene, non ricordavo di aver messo così tante cose in questo sito.
Sto ridisegnando tutta la parte dietro le quinte, come strutture, classi, funzioni, per allinearlo all'ultima versione di PHP e cercando di migliorare/ottimizzare tutto.
È un percorso lungo ma necessario, parliamo di centinaia di migliaia di righe di codice (php, js, html), scritte quando non era possibile usare linguaggi "moderni" e quindi più restringenti e più regolamentati.

Il mese prossimo spero di spostare già alcune funzioni su queste nuove routine (tutte le nuove api ne fanno già uso) e poi procederò anche a migrare il database verso una nuova struttura.
Alcune funzioni le abbandonerò, così come pensate non vanno bene, quindi le rifarò ancora più complete e performanti.
Tra le cose positive c'è il fatto che con lo stesso hardware dovrei migliorare drasticamente le performance.
Motoschifo
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 WebArcadeDatabase
Avatar utente
motoschifo

Gold Medal Donatore
Progetto Arcade Database
Progetto Arcade Database
Messaggi: 3333
Iscritto il: 12/07/2013, 20:29
Medaglie: 2
Città: Parma
Località: Parma
Grazie Inviati: 35 volte
Grazie Ricevuti: 41 volte
Contatta:

Re: Sito web Arcade Database

Messaggio da motoschifo »

Dopo più di una settimana di incubazione, credo di averci lavorato tutti i momenti utili e un week-end intero, sono riuscito ad implementare un giro di funzioni e classi per gestire finalmente in maniera degna di nota le cose lato server.
La cosa negativa è che lo sviluppo richiederà ancora più tempo di quanto preventivato, quella positiva è che in questo modo il sistema sta diventando molto più sicuro, veloce e a prova di errore.
Sicuro nel senso che non devo ricordarmi di verificare ogni singola cosa che passa dalle pagine, veloce perchè sto separando le competenze di ogni oggetto (quindi isolando le routine risulta intrinsicamente più forte come struttura, tipo CQRS per chi mastica nomi di pattern), veloce perchè usando strumenti moderni riesco a fare controlli più rapidamente e a prova di errore perchè mi viene evidenziata subito la mancanza di parametri/oggetti.
Al termine spero di passare a PHP 8.3/8.4 così potrò finalmente avere codice più manutenibile.

Per chi fosse interessato ai dettagli, 10 anni fa usavo questa catena di software: Linux, Eclipse, Mysql, PhpmyAdmin, Apache2, Subversion (tutto in servizi locali).
Oggi utilizzo in maniera molto più intuitiva e sicura vscode con plug-in intellisense, sempre sotto Linux, 3 docker configurati nel progetto stesso con le versioni identiche del server (Apache2, MariaDB) più un MysqlAdmin se devo lavorare sui dati in maniera rapida. A corredo ci sono GIT (su repository pricato github.com), plug-in di gestione dei servizi docker, composer con autoloader per PHP e debug integrato con Xdebug.
Da questa base di partenza ho poi aggiunto la logica software con pattern come singleton, repository, logger e storage, che stanno dando una grossa mano per riscrivere tutto quanto da zero.
Rimangono fuori la parte grafica ma da alcuni test sono orientato ad usare twig per i template html, tailwind per css, heroicons per le icone/svg e tutta la nuova gestione api che sarà forse un sito separato (sto pensando a diverse soluzioni).
Insomma sarà tutto diverso... nel bene e nel male, comunque ci voleva una ventata d'aria fresca.

Anche le url saranno scritte usando pattern appositi (tipo il self-contained url), quindi ci saranno link di questo tipo:
* da /dettaglio_mame.php?game_name=mslug a /mame/mslug
* da /lista_mame.php?search=pacman a /search/mame/pacman

Tutto questo lavoro lo sto facendo con un ochio di riguardo alle prestazioni: 10 anni fa ho scritto classi un po' rapidamente e senza pensarci troppo, adesso le istruzioni più eseguite saranno implementate per minimizzare l'impatto sul server (cpu/ram), quindi farò uso di cache molro spinta dove necessario.

C'è poi tutta una parte che non ha evidenza, ossia i tentativi di scrivere indirizzi fake e di forzare il sito web a mostrare dati non accessibile pubblicamente. In questo caso, se i parametri non sono conformi, prima cercavo di andare incontro all'utente pensando fosse un errore di digitazione, ora vedo che ci sono tentativi di attacchi continui a tutte le ore. Quindi se il parametro contiene codice maligno o se ci sono sentori di questo tipo di chiamate, giro la segnalazione alla pagina di errore senza pensarci troppo.
Insieme a questo aspetto c'è anche quello della privacy che oggi è sempre più importante: farò pulizia di dati che oggi salvo ma che non utilizzo e pulirò il profilo utente da opzioni inutili.

Al termine, sto ripensando la struttura del database per migliorare le velocità di risposta e le operazioni di import mensili, che oggi occupano almeno 10 ore di elaborazione (sparse nel mese non concentrate in un solo giorno). Sono tante, secondo me troppe, e tolgono risorse utili al server. Ma questi aspetti li tratterò dopo aver pubblicato la nuova versione, magari quando inizierò ad occuparmi della parte grafica.

Insomma tanta roba, come si sa l'appetito vien mangiando e quindi queste sono le cose principali, il lavoro sarà molto lungo (anni?)
Manterrò la vecchia gestione fino a quando riuscirò, ma avviserò per tempo tutti quanti.
Motoschifo
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 WebArcadeDatabase
Avatar utente
Gothrek

Helper
Moderatore
Moderatore
Messaggi: 5617
Iscritto il: 13/07/2017, 13:30
Medaglie: 1
Città: Roma
Grazie Inviati: 20 volte
Grazie Ricevuti: 320 volte

Re: Sito web Arcade Database

Messaggio da Gothrek »

la famosa LAMP,
mi sembra un gran lavoro e sicuramente quando metterai mano al db ci saranno altrettanti miglioramenti

io ogni volta che prendo in mano il mio codice vecchio esclamo :" ma che C..zzo avevo fatto qui e cambio hahah, praticamente vivo in un refact continuo

grazie moto
Avatar utente
pucci
Moderatore
Moderatore
Messaggi: 4934
Iscritto il: 19/07/2005, 18:52
Città: San Clemente (RN)
Località: Rimini
Grazie Ricevuti: 70 volte

Re: Sito web Arcade Database

Messaggio da pucci »

Sono un informatico di vecchia scuola e quindi faccio fatica a comprendere molti dei tecnicismi che hai iscritto, ma sono comunque orgoglioso di sapere che il tuo sito made in Italy è usato in tutto il mondo. Spero si possa provare quanto prima la nuova versione, e spero anche che ci sia prima o poi un posto per la gestione delle ricerche con gli insiemi

Inviato dal mio LE2113 utilizzando Tapatalk

Pucci - The Bastard Son of Arcade Italia
"MODerrare humanum est"
tutte le copertine di The Games Machine
non combatto guerre di intelligenza con gente disarmata
Avatar utente
motoschifo

Gold Medal Donatore
Progetto Arcade Database
Progetto Arcade Database
Messaggi: 3333
Iscritto il: 12/07/2013, 20:29
Medaglie: 2
Città: Parma
Località: Parma
Grazie Inviati: 35 volte
Grazie Ricevuti: 41 volte
Contatta:

Re: Sito web Arcade Database

Messaggio da motoschifo »

Gothrek ha scritto: 04/06/2025, 9:06 io ogni volta che prendo in mano il mio codice vecchio esclamo :" ma che C..zzo avevo fatto qui e cambio hahah, praticamente vivo in un refact continuo
Credo sia la normalità quando fai programmazione... almeno prima di scoppiare del tutto <-lol->



pucci ha scritto: 04/06/2025, 9:09 Sono un informatico di vecchia scuola e quindi faccio fatica a comprendere molti dei tecnicismi che hai iscritto, ma sono comunque orgoglioso di sapere che il tuo sito made in Italy è usato in tutto il mondo. Spero si possa provare quanto prima la nuova versione, e spero anche che ci sia prima o poi un posto per la gestione delle ricerche con gli insiemi
Grazie e anche a me fa piacere, per quello ho deciso di investirci altro tempo per portarlo ad una gestione moderna e manutenibile. Arriveremo anche agli insiemi, perchè avevo tentato di estenderli e forse avevo pubblicato anche qualche screen, ma di fatto la complessità stava raggiungendo livelli troppo alti per un sito hobbistico come questo.
La ricerca avrà molti altri filtri da usare, direi che saranno almeno il doppio rispetto a prima ma saranno anche più accessibili e con gestione di operazioni (uguale, maggiore, minore, ecc).

Scrivo tutto qui così serve anche a me per avere una traccia, dato che il tempo libero è sempre troppo poco e la voglia di fare è ormai incontenibile <-gamer1->
Motoschifo
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 WebArcadeDatabase
Avatar utente
motoschifo

Gold Medal Donatore
Progetto Arcade Database
Progetto Arcade Database
Messaggi: 3333
Iscritto il: 12/07/2013, 20:29
Medaglie: 2
Città: Parma
Località: Parma
Grazie Inviati: 35 volte
Grazie Ricevuti: 41 volte
Contatta:

Re: Sito web Arcade Database

Messaggio da motoschifo »

Rispetto a pochi giorni fa ho fatto molti passi in avanti.
Ho gestito in maniera nuova e migliorata la parte di routing, ovvero quando arriva la richiesta e smisto nella pagina corretta con eventuali parametri/chiamate ajax. Era una cosa che mi ero ripromesso di fare e finalmente sono riuscito a trovare un ottimo compromesso tra prestazioni e manutenzione.
Dovrei riuscire, con tanti se/ma/forse, a tenere in piedi i vecchi url quel tanto che basta per aggiornare il sito, ma prima li butto e prima riesco a sistemare a dovere le pagine.

Lato backend sono riuscito a spostare ormai tutto il codice sorgente dietro al sito pubblico, il che significa più sicurezza e meno problemi durante gli aggiornamenti.

Nel sistema locale ho distrutto l'autenticazione e sto cercando di rifare la pagina con le nuovi classi, sembrava più facile quando era ancora nella mia testa...
Comunque la pagina di login sarà l'unica nuova, poi a ruota seguiranno tutte le altre, ma per fare il lavoro dovrò sacrificare i temi e quindi terrò solo quello che ho battezzato come Windows 10 (blu con la toolbar in alto). È quello realizzato meglio dal punto di vista dello spazio a video, sia desktop che mobile.
Poi dal nuovo anno, o quando deciderò di iniziare con il rifacimento del layout, potrò avere più libertà di scelta e sicuramente gestirò le due varianti light/dark.

Nella semplificazione e miglioramento sto anche togliendo ciò che non veniva usato, come la creazione di utenti demo, la condivisione della pagina (basta il copia/incolla dell'url), la cronologia di navigazione (c'è quella del browser) ed altro.

Metto qui i due screenshot dei temi vecchi, così per ricordo.
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
Motoschifo
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 WebArcadeDatabase
Avatar utente
motoschifo

Gold Medal Donatore
Progetto Arcade Database
Progetto Arcade Database
Messaggi: 3333
Iscritto il: 12/07/2013, 20:29
Medaglie: 2
Città: Parma
Località: Parma
Grazie Inviati: 35 volte
Grazie Ricevuti: 41 volte
Contatta:

Re: Sito web Arcade Database

Messaggio da motoschifo »

Ho creato una pagina di prova, giusto per capire se la cosa mi piace come estetica.
Per ora il blu non mi fa impazzire, sarà che lo vedo dappertutto, potrei decidere di tornare al marrone alla fine.

Comunque qui abbiamo un contenuto di esempio della pagina che sto costruendo.
Si accettano consigli, sto usando twig con tailwind come ambiente (icone ancora in dubbio, forse heroicons) ma poi farò tutti componenti isolati per non perdere la formattazione e per creare nuovi temi.
Questa pagina usa i controlli molto larghi, stile mobile, mentre per le altre dovrò cercare di sfruttare tutto lo schermo.
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
Motoschifo
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 WebArcadeDatabase
Avatar utente
motoschifo

Gold Medal Donatore
Progetto Arcade Database
Progetto Arcade Database
Messaggi: 3333
Iscritto il: 12/07/2013, 20:29
Medaglie: 2
Città: Parma
Località: Parma
Grazie Inviati: 35 volte
Grazie Ricevuti: 41 volte
Contatta:

Re: Sito web Arcade Database

Messaggio da motoschifo »

altro esperimento, stavolta un ritorno al marroncino
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
Motoschifo
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 WebArcadeDatabase
Avatar utente
Gothrek

Helper
Moderatore
Moderatore
Messaggi: 5617
Iscritto il: 13/07/2017, 13:30
Medaglie: 1
Città: Roma
Grazie Inviati: 20 volte
Grazie Ricevuti: 320 volte

Re: Sito web Arcade Database

Messaggio da Gothrek »

marroncino...oramai storico
Avatar utente
Rockman84

Donatore
Moderatore
Moderatore
Messaggi: 1388
Iscritto il: 23/10/2015, 18:00
Medaglie: 1
Città: Mondovi
Località: Mondovì (Cuneo)
Grazie Inviati: 129 volte
Grazie Ricevuti: 95 volte

Re: Sito web Arcade Database

Messaggio da Rockman84 »

Anche io, a mio gusto personale, voterei per il marroncino
Avatar utente
pucci
Moderatore
Moderatore
Messaggi: 4934
Iscritto il: 19/07/2005, 18:52
Città: San Clemente (RN)
Località: Rimini
Grazie Ricevuti: 70 volte

Re: Sito web Arcade Database

Messaggio da pucci »

a me piace più il primo blu
Rispondi

Torna a “Progetto Arcade Data Base”