Category: Programmazione

4
ago
Steam Linux Beta Client Leaked & Hacked
Postato da il 04-08-2010 alle ore 17:23:03


E già da un po che in giro si sente tanto parlare della versione GNU/Linux della piattaforma di gioco Steam, che dovrebbe essere in fase di sviluppo e rilasciata in data da definirsi.

Nonostante questo, sul wiki di supporto del sito steampowered si legge :

Il client di Steam è una applicazione pensata per Windows, e al momento non è pianificata la creazione di un client di Steam nativo per Linux.

Qualche giorno fa mi sono messo alla ricerca di informazioni in proposito ed indovinate cosa ho trovato ?!

More…

Popularity: 2% [?]

6
giu


Come preannunciato nell’artcolo precedente sui router Fastweb, mi sono adoperato a studiare la brillante ricerca della WhiteHatCrew sui router di Alice, denominati AGPF, al fine di implementare uno script per la generazione della chiave WPA di default.

More…

Popularity: 100% [?]

5
giu


Oggi mi sono inbattuto per caso in questo servizio, ovvero un servizio per “recuperare” la chiave WPA di un router Fastweb Pirelli.

“Bene” mi sono detto, “Se hanno questo servizio, avranno anche una pagina dove spiegano l’algoritmo e pubblicano il codice” .

Beh, la pagina c’era, e non era nemmeno un loro lavoro bensì quello di un altro gruppo (vedere il link “fonte” alla fine di quell’articolo), ma non c’era il sorgente!

In pratica, queste persone, hanno preso il lavoro che altri hanno pubblicato liberamente e per tutti, lo hanno ri-pubblicato (citando la fonte eh, per carità), ne hanno ricavato un servizio (guarda caso un servizio che fa gola a molti su un sito con degli ads pubblicitari) ma non hanno condiviso a loro volta le conoscenze distribuendo il codice del servizio … un po disonesto non vi pare?

Cioè, se io prendo un informazione libera, sono moralmente tenuto a rendere altrettanto libera qualsiasi opera io ne possa ricavare … non legalmente, ma moralmente.

Ebbene, ci penso io con un mio script fresco fresco :D

More…

Popularity: 73% [?]

10
mag
Google : 0, Io : 1
Postato da il 10-05-2010 alle ore 00:43:31


Chi ha letto questo post, sa che già da un po il sistema di lookup delle variabili, funzioni, metodi, tipi dinamici ecc in memoria di Hybris è implementato sulla base di una libreria rilasciata da Google, più precisamente dal Dr. Craig Silverstein, la quale mette a disposizione alcune funzioni per gestire una hash table, cioè una struttura di dati che consente di collegare una chiave (una stringa) ad un valore e di eseguire il lookup in modo molto veloce.

Il tutto si basa su una funzione di hashing che, prendendo in input la stringa della chiave, restituisce in output un numero intero (l’hash) univoco per ogni chiave o, in caso non sia univoco, gestisce queste “collisioni” di hash frammentando la tabella in più “bucket” .

Fatta questa introduzione, andiamo al nocciolo del discorso.

More…

Popularity: 7% [?]

22
apr
Redis client library for Hybris
Postato da il 22-04-2010 alle ore 18:18:57


E’ disponibile, presso questo repository, una libreria scritta in Hybris per connettersi al database Redis, progetto che sta facendo passi da gigante grazie al supporto della comunità open source e soprattutto del suo creatore Salvatore Sanfilippo.

Questa libreria vuole essere sia un omaggio che un contributo alla scena open italiana e soprattutto agli sforzi di uno sviluppatore brillante, in un paese che sembra ne incoraggiare ne ricompensare menti di questo tipo.

Popularity: 8% [?]

15
apr
StackOverflow : Yahoo Answers per i programmatori !
Postato da il 15-04-2010 alle ore 00:10:57


Gli articoli in questo blog nei quali pubblicizzo un sito sono davvero pochi, questo non tanto perchè non mi piace farlo, bensì perchè sono pochi i siti che ritengo interessanti e utili per i miei obiettivi.

Fa eccezione http://stackoverflow.com/, l’equivalente di Yahoo Answers per programmatori, sistemisti e tecnici informatici in genere.

La logica è semplicissima … ci si iscrive, si fanno delle domande su qualche problema che si ha, si risponde alle domande delle altre persone e si accumulano punti.

Semplice quanto efficace, non ho mai visto tanti guru della programmazione in un unico sito … c’è davvero gente molto in gamba da tutte le parti del pianeta (tutte tranne l’Italia probabilmente, chissà com’è -.-), persone che oltre ad essere tecnicamente brave sono sempre disponibili a darti una mano.

Alcuni problemi che ho avuto con Hybris li ho risolti proprio grazie a loro, quindi mi sembrava carino omaggiare il servizio con un articolo.

Nient’altro … se siete curiosi il mio profilo è questo.

Popularity: 7% [?]

9
apr
Cogito ergo sum
Postato da il 09-04-2010 alle ore 22:01:45


Bonci bonci bom-bom-bò … ehm ce l’avevo in testa XD

Coooomunque … nell’ultimo commit, oltre a risolvere alcuni bugghettini del timer e della classe Context, ho trovato un metodo per rendere

import std.*;

Veloce quanto gli import singoli .

Ma prima riassunto delle puntate precedenti :D

More…

Popularity: 6% [?]

6
apr
Hybris, e così son tutti contenti.
Postato da il 06-04-2010 alle ore 21:38:37


Bon … dopo l’articolo di ieri, ho pensato molto alla soluzione da adottare ed alla fine ho optato per separare le funzionalità in una libreria standard esterna (sempre compilata e distribuita insieme all’interprete) così da lasciare il core pulito e veloce.

Attualmente, bisogna dichiarare esplicitamente quali moduli importare dal namespace standard (chiamato appunto std), tuttavia son venuto incontro alle necessità dei più pigri (me compreso) che, non essendo interessati alla velocità di esecuzione, preferirebbero precaricare tutto il possibile per non dover dichiarare manualmente i moduli necessari.

Ho implementato l’operatore ‘*’ per gli import, ispirato al java, tramite il quale è possibile importare ricorsivamente interi namespace e loro derivati in una sola riga … ad esempio, se volessimo importare tutte le funzionalità di I/O (su file, console, stream xml, tcp/ip e http), basta un :

import std.io.*;

All’inizio dello script, oppure, se proprio vogliamo importare TUTTO, si può scrivere più semplicemente :

import std.*;

Questo operatore è valido SOLO se viene specificato il namespace principale (in questo caso std), ovvero una dicitura del genere :

import *;

Genererà l’errore :

Could not use ‘*’ as main namespace.

Questo perchè ho voluto pensare al futuro … ipotiziamo che un domani Hybris abbia 500 moduli implementati da utenti vari (magari! ^^), importare tutto con * significherebbe tempi di calcolo troppo eccessivi e troppe risorse richieste, invece indicando il namespace padre, rimane la comodità ma è più selettiva.

More…

Popularity: 6% [?]

5
apr


A volte staccare la spina (nel mio caso il cervello) porta consiglio, credo che il cosìddetto distrarsi su cose che non impegnino il nostro cervello faccia si che una parte del cervello stessa lavori “in background” elaborando a livello subconscio e trovando soluzioni a problemi che normalmente non potevamo affrontare, o più semplicemente offrendoci punti di vista diversi da quelli che prima ci sembravano giusti.

Questi tre giorni non sono stato a casa, ho passato la Pasqua (ah, a proposito, auguri in ritardo a tutti! :) ) con la mia fidanzata, la sua famiglia, amici ecc e ho avuto modo proprio di sperimentare su me stesso questo fenomeno …

Ho pensato a come è nato Hybris, al motivo per il quale è nato, a come si è evoluto nel tempo …

Inizialmente era un progetto quasi “intimo”, nel senso che non avevo intenzione alcuna di pubblicarlo, non tanto perchè sono geloso del mio lavoro (lol figuriamoci XD), ma perchè ero partito con la consapevolezza che non sarebbe mai diventato un qualcosa di completo e funzionale come un vero e proprio linguaggio di programmazione, bensì doveva essere il mio piccolo tool personalizzato/personale per automatizzare determinate cose che normalmente facevo a mano (una specie di linguaggio macro + specializzato insomma) e per questo non adatto ad altre persone che potessero avere esigienze e forme mentis diverse dalle mie.

Il tempo ha dimostrato quanto il mio presupposto iniziale fosse sbagliato, il tempo e la mia costante voglia di migliorare me stesso ed i miei software, e me ne sono reso conto benissimo, peccato che non ho (fino ad un giorno fa) considerato oltre al fatto in se stesso (che di per se in effetti è poco più di una sega mentale) le conseguenze sul mio lavoro che questa cosa possa avere.

Ok, giri di parole e pensieri contorti a parte, faccio il punto della situazione (finalmente) .

More…

Popularity: 7% [?]

1
apr
Hybris 1.0 beta, strutture e primo passo per l’OO
Postato da il 01-04-2010 alle ore 21:41:28


Non ho resistito, avevo ripromesso a me stesso che avrei iniziato a lavorare sul supporto agli oggetti (le classi per intenderci) di Hybris dopo il rilascio ufficiale della 1.0 pacchettizzata, magari per una 2.0 o quantomeno una 1.n, ma ho dovuto iniziare a buttar giù qualcosa XD .

Ho appena effettuato il commit della 1.0 beta che, oltre a correggere alcuni bugs che affliggevano il lexer ed il parser di Hybris, presenta una grande novità … le strutture !

Sostanzialmente, una volta implementate quelle e trovato il modo di gestirle al meglio (non vi immaginate che casino scrivere le regole del parser XD), il passo verso l’OO è un attimo, basta qualche piccolo ritocco qua e la ed ecco che Hybris diventerà un linguaggio che supporta al 100% la programmazione ad oggetti, ma per questo, stavolta dico davvero, è il caso di aspettare il rilascio della 1.0.

Ma vediamo un po queste strutture ^^

More…

Popularity: 6% [?]