La casa dell'accrocchio Pensieri a manovella

01/07/2007

Nessun titolo

Filed under: freesoftware,pensieri,tecnologia — Oscaruzzo @ 22:43

Continua l’esplorazione dei miei vecchi backup, pieni di robacce ma anche di programmini scritti nel tempo libero che veramente mi stupiscono, per tante ragioni. Intanto è evidente che avevo troppo tempo libero. E poi mi rendo conto che ragionavo in modo ampiamente differente da come faccio ora. Probabilmente ero più intelligente. Sicuramente quando si trattava di risolvere problemi per cui ero completamente privo di basi teoriche, ero propenso ad esplorare possibilità che oggi magari scarterei a priori (sbagliando).

Certo, l’università ti plasma la mente. Ingegneria in particolare. Impari a pensare in modo diverso. Impari che dietro ogni problema trattabile ci deve essere un modello, una teoria, una serie di criteri che lo regolano. E insieme con le teorie vengono i metodi da usare affrontare quella classe di problemi. Questo è bello e utile, fornisce un sacco di strumenti, eccetera. Eppure prima, quando avevo un problema, sono sicuro che lo affrontavo in modo assai diverso. Più artigianale, forse, ma certamente più creativo. E quindi, oggi, leggere quei programmi scritti almeno dieci anni fa, mi dà la stessa sensazione che potrebbe dare ad un restauratore la scoperta di un’opera realizzata con materiali e tecniche assolutamente non convenzionali e conservatosi per pura fortuna.

E, a sproposito di restauri, ho recuperato un "pezzo" che avevo scritto in Pascal e l’ho riscritto in C (anzi, in CWeb). Il coso in questione risolve brillantemente (o diciamo piuttosto, che lo risolve in modo non convenzionale) un problema praticamente insolubile in tempi non geologici (ma all’epoca non lo sapevo). Trattasi del problema dello zaino. In pratica, data una serie di elementi ciascuno di una certa dimensione, bisogna selezionarne alcuni per riempire al massimo un contenitore di capacità limitata. Ad esempio, dato un contenitore di dimensione 8, e quattro elementi A B C e D di dimensione 5, 4, 4 e 2 rispettivamente, la soluzione ottima consiste nel mettere B e C nello zaino. All’epoca volevo mettere dei files su floppy cercando di sprecare meno spazio possibile. Bei tempi. Metto qui il file pdf che descrive l’algoritmo. Così. Per i posteri.

PS: No, ok, lo so che non è possibile che l’accrocchietto trovi sempre una soluzione in tempi ragionevoli, ma diciamo che per qualunque caso pratico io l’avessi provato, funzionava. Avevo sistemato tutta la mia collezione di roba porno su floppy, senza sprecarne troppi…

7 Comments »

  1. Sono d’accordissimo su tutto, solo che il link al pdf non funziona!

    In effetti una delle cose che temo dell’università sono proprio i modelli e le teorie dati per scontati, spero di trovare dei professori che ti fanno pensare da solo prima di passare alla roba già pronta.

    Comment by alla.finestra — 02/07/2007 @ 10:04

  2. Aggiustato link.

    Comment by Oscaruzzo — 02/07/2007 @ 10:38

  3. Uffa non ci capisco nulla, e dire che sono “ragioniere programmatore”! Però sono curioso, non riesci a spiegarmi l’idea in poche parole?

    Comment by alla.finestra — 02/07/2007 @ 11:09

  4. In poche parole non sono capace 🙁 Se hai tempo da perdere, puoi dare un’occhiata alle sezioni dalla 13 in avanti, dove c’e` il “nocciolo” della soluzione…

    Comment by Oscaruzzo — 02/07/2007 @ 11:27

  5. Dopo ci guardo! Tieniti libero per eventuali domande, però! 🙂

    Comment by alla.finestra — 02/07/2007 @ 14:22

  6. vorrei che fossero tutti cosi` ben documentati i programmi…ahime`…

    Comment by torelizer — 03/07/2007 @ 14:14

  7. Heh, anche io, ma un conto e` quello che uno puo` fare quando sta curando i suoi hobby, e un altro conto e` quello che si puo` fare sul lavoro, quando hai SEMPRE scadenze incombenti 🙁

    Comment by Oscaruzzo — 03/07/2007 @ 14:21

RSS feed for comments on this post. TrackBack URL

Leave a comment

Powered by WordPress