Orario: 20-06-2013, 12:39 Benvenuto ospite! (Log inRegistrati)


Rispondi 
The demise of the low level Programmer.
Autore Messaggio
dany_dev
Posting Freak

Messaggi: 4,046
Registrato: Sep 2010
Online Online
#1 The demise of the low level Programmer.
0
Una serie di link su argomenti che i programmatori "di oggi", potrebbero non aver incontrato a causa del cambiamento dell'approccio alla programmazione:
The demise of the low level Programmer.
e aggiungo anche una serie di articoli molto interessante (8 and counting...), che introducono il divertente mondo del passaggio c/c++--->asm
A Low Level Curriculum for C and C++
(Questo messaggio è stato modificato l'ultima volta il: 27-05-2012 15:21 da dany_dev.)
26-05-2012 10:10
Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
MonkeySoft
Bloody Monkey

Messaggi: 1,225
Registrato: Dec 2009
Offline Offline
#2 RE: The guide to implementing 2D platformers
0
Che è stato segnalato pochi giorni fa in home:
http://www.indievault.it/2012/05/21/una-...atform-2d/

Paolo Tajè
Follow me on Twitter
Bloody Monkey | Facebook
26-05-2012 10:11
Visita il sito web di questo utente Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
dany_dev
Posting Freak

Messaggi: 4,046
Registrato: Sep 2010
Online Online
#3 RE: The demise of the low level Programmer.
0
sicuro? trololol!
26-05-2012 10:20
Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
MonkeySoft
Bloody Monkey

Messaggi: 1,225
Registrato: Dec 2009
Offline Offline
#4 RE: The demise of the low level Programmer.
0
(26-05-2012 10:20)dany_dev ha scritto:  sicuro? trololol!

Facepalm

Paolo Tajè
Follow me on Twitter
Bloody Monkey | Facebook
26-05-2012 11:27
Visita il sito web di questo utente Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
panzone
Senior Member

Messaggi: 251
Registrato: Sep 2010
Online Online
#5 RE: The demise of the low level Programmer.
0
Grazie mille per i link. Tuttavia mi spiace quotare il primo articolo linkato. Dice troppe verita persino per i miei gusti. Frequentando informatica noto che son davvero pochi coloro a cui interessa davvero scendere nei dettagli e si accontentano di una preparazione sommaria, di una strada che funziona senza valutarne altre che magari più si adattano al nostro contesto. Però se si chiama computer science un motivo ci sarà Asd

Andrea Francesco Iuorio

-Studente di Scienze Informatiche presso L' Università degli Studi di Milano.

"The C Programming Language - A language which combines the flexibility of assembly language with the power of assembly language."
26-05-2012 14:36
Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
shogo
Wannabe

Messaggi: 270
Registrato: Oct 2011
Offline Offline
#6 RE: The demise of the low level Programmer.
0
Il problema non è volerle approfondire. Il problema è ricordare.
Gli argomenti che ha elencato vengono generalmente affrontati anche in un corso di laurea triennale, dubito che un programmatore non gli abbia mai visti.
Due anni fa quando ho preparato l'esame di algoritmi e strutture dati, avrei saputo enunciare la complessità di un bel po di algoritmi di ricerca e ordinamento e scrivere al volo il codice di oguno di essi. Così come avrei saputo calcolare e dirti cosa sono l'epsilon macchina, qual'è la differenza tra floating e fixed point, scrivere l'algoritmo per risolvere un sistema triangolare superiore, disegnare a memoria l'header ipv6/ipv4, scrivere l'algoritmo RED per il dropping di pacchetti ect, ect.

Ma non appena hai a che fare con lavori "pratici" trovi bene o male già tutto implementato, ti viene consigliato di utilizzare le implementazioni esistenti e a dimenticare si fa in fretta. Quel che mi è rimasto oggi è un vago "quick sort meglio di bubble sort"... generalizzando "A meglio di B perché dall'uni ricordo più o meno così". Eppure ho colleghi che magari all'esame sono andati peggio di me ma a distanza di anni ricordano ancora "i dettagli".
Secondo me è una questione di come funziona l'apprendimento in ognuno di noi.. potrei prendere la lista di argomenti citati in quell'articolo, ristudiarmeli tutti e son sicuro che passati 2 mesi senza vederli costantemente mi ritroverei a non ricordare una cippa.

Coddare di meno, codare di più..
hmm.. momento, momento...

__________________________________________
let Mattias_Santoro : ref<TuTubo> = ref FacciaLibro
(Questo messaggio è stato modificato l'ultima volta il: 26-05-2012 16:25 da shogo.)
26-05-2012 16:24
Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
dany_dev
Posting Freak

Messaggi: 4,046
Registrato: Sep 2010
Online Online
#7 RE: The demise of the low level Programmer.
0
credo che il punto non sia: "ricordati tutto a memoria", il punto è: "sappi che esistano, e se incontri un problema dove è richiesta la loro conoscenza, sappi come agire per risolvere il problema al meglio".
26-05-2012 16:39
Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
shogo
Wannabe

Messaggi: 270
Registrato: Oct 2011
Offline Offline
#8 RE: The demise of the low level Programmer.
0
Ma il problema è che non lo risolvi al meglio se non ricordi "i dettagli". E' vero che c'è sempre google, c'è sempre la possibilità di ripassare, e se son cose già viste si fa in fretta a nonostante gli anni.
Però l'autore mi sembrava lamentarsi del fatto che tanti colleghi "di alto livello" non ricordino i dettagli "seduta stante". Ma in effetti a fondo articolo specifica:

"It seems I didn’t do a very good job at explaining the core audience for the article, I apologize for that. The programmers I would like to see learning and absorbing these “low level” details are those who would see themselves working in console games".

E io non leggo mai fino a fondo articolo XD

Coddare di meno, codare di più..
hmm.. momento, momento...

__________________________________________
let Mattias_Santoro : ref<TuTubo> = ref FacciaLibro
26-05-2012 17:02
Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
panzone
Senior Member

Messaggi: 251
Registrato: Sep 2010
Online Online
#9 RE: The demise of the low level Programmer.
0
(26-05-2012 16:24)shogo ha scritto:  Ma non appena hai a che fare con lavori "pratici" trovi bene o male già tutto implementato, ti viene consigliato di utilizzare le implementazioni esistenti e a dimenticare si fa in fretta. Quel che mi è rimasto oggi è un vago "quick sort meglio di bubble sort"... generalizzando "A meglio di B perché dall'uni ricordo più o meno così". Eppure ho colleghi che magari all'esame sono andati peggio di me ma a distanza di anni ricordano ancora "i dettagli".
Secondo me è una questione di come funziona l'apprendimento in ognuno di noi.. potrei prendere la lista di argomenti citati in quell'articolo, ristudiarmeli tutti e son sicuro che passati 2 mesi senza vederli costantemente mi ritroverei a non ricordare una cippa.

Il punto secondo me è un altro. Non si pretende certo di ricordare a memoria la complessità di ogni algoritmo esistente o di saperlo implementare su ogni linguaggio ed hardware esistente, ma almeno sapere che esistono ed le loro forze/debolezze si Asd Noi informatici dobbiamo risolvere problemi e, come tale, dobbiamo conoscere al meglio gli strumenti che abbiamo di fronte e selezionare, di volta in volta, il migliore. Non si pretende certo di ricordare che bubble sort è O(n^2) e quicksort O(n log n) ma almeno sapere che quicksort è ottimale alla lunga a costo di una implementazione più complessa ( cosa che non sempre sottovaluterei ) e uno stack ausiliario si Asd

N.B. Io sto parlando di informatico, non di code monkey o programmatore generico che usa sort() con atto di fede. In tal caso, ovviamente, il mio discorso si va a perdere ma son abbastanza sicuro che non sia indirizzato a loro quell' articolo.

(26-05-2012 16:39)dany_dev ha scritto:  credo che il punto non sia: "ricordati tutto a memoria", il punto è: "sappi che esistano, e se incontri un problema dove è richiesta la loro conoscenza, sappi come agire per risolvere il problema al meglio".

Si, la penso anche io cosi. Studiare a memoria non serve, grazie ad internet, documentazioni, reference ecc. ecc. ed anzi, può essere controproducente. La forma mentis adeguata però non te la può dare certo una ricerca su internet.

Andrea Francesco Iuorio

-Studente di Scienze Informatiche presso L' Università degli Studi di Milano.

"The C Programming Language - A language which combines the flexibility of assembly language with the power of assembly language."
(Questo messaggio è stato modificato l'ultima volta il: 26-05-2012 19:15 da panzone.)
26-05-2012 19:12
Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
TheCrib
Indie Pellerossa

Messaggi: 5,295
Registrato: Sep 2010
Offline Offline
#10 RE: The demise of the low level Programmer.
0
Non e' neanche questione di avere una infarinatura.. l'idea e' di avere un hacker con le mani sporche di codice.

Certe cose devono diventare una seconda natura.. essere efficienti vuol dire non doverci necessariamente pensare.
Se uno deve pensare su qualcosa, vuol dire che sta ancora imparando.. che e' lecito ed e' forse la cosa piu' bella del game dev.. ma allo stesso tempo uno vuole imparare qualcosa di nuovo, non come shiftare i bits 8)

Davide Pasca
http://v5.kazzuya.com - @109mae
http://oyatsukai.com - @oyatsukai
"O frechete !" - M.Magnotta
26-05-2012 20:52
Visita il sito web di questo utente Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
dany_dev
Posting Freak

Messaggi: 4,046
Registrato: Sep 2010
Online Online
#11 RE: The demise of the low level Programmer.
0
mi sono letto un po' i commenti dell'articolo linkato e molti "veterani", confermano il trend dei giovani di allontanarsi dal basso livello e tra i commenti ho trovato questo: I have as simple test that only one in twenty programmers get right. What does the following function do?

Codice:
char *func(char *p1, char *p2)
{
   char *l1 = p1 ;

   while (*l1++ = *p2++) ;
  
   return p1 ;
}

Sinceramente pur non essendo un asso del C++, ci ho messo meno di 10 secondi a capire cosa facesse....mi sento rincuorato xD
(Questo messaggio è stato modificato l'ultima volta il: 27-05-2012 15:35 da dany_dev.)
27-05-2012 15:32
Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
hjeldin
junction specialist

Messaggi: 703
Registrato: Jan 2011
Offline Offline
#12 RE: The demise of the low level Programmer.
0
(27-05-2012 15:32)dany_dev ha scritto:  mi sono letto un po' i commenti dell'articolo linkato e molti "veterani", confermano il trend dei giovani di allontanarsi dal basso livello e tra i commenti ho trovato questo: I have as simple test that only one in twenty programmers get right. What does the following function do?

Codice:
char *func(char *p1, char *p2)
{
   char *l1 = p1 ;

   while (*l1++ = *p2++) ;
  
   return p1 ;
}

Sinceramente pur non essendo un asso del C++, ci ho messo meno di 10 secondi a capire cosa facesse....mi sento rincuorato xD
20 secondi Fifi
Segmentation fault come fosse niente Sorriso

Riccardo Arena
Actionscripttaro da 3.0 soldi e winner di contest Microsoft come unico partecipante Asd


dev/whatever blog

portfolio
27-05-2012 15:38
Visita il sito web di questo utente Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
shogo
Wannabe

Messaggi: 270
Registrato: Oct 2011
Offline Offline
#13 RE: The demise of the low level Programmer.
0
(27-05-2012 15:32)dany_dev ha scritto:  mi sono letto un po' i commenti dell'articolo linkato e molti "veterani", confermano il trend dei giovani di allontanarsi dal basso livello e tra i commenti ho trovato questo: I have as simple test that only one in twenty programmers get right. What does the following function do?

Codice:
char *func(char *p1, char *p2)
{
   char *l1 = p1 ;

   while (*l1++ = *p2++) ;
  
   return p1 ;
}

Sinceramente pur non essendo un asso del C++, ci ho messo meno di 10 secondi a capire cosa facesse....mi sento rincuorato xD

Ma perché.. dovrebbe funzionare? Fermosi
Se si non mi rincuoro per niente!

Coddare di meno, codare di più..
hmm.. momento, momento...

__________________________________________
let Mattias_Santoro : ref<TuTubo> = ref FacciaLibro
27-05-2012 15:57
Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
_tommo_
Mod nerdcore

Messaggi: 6,043
Registrato: Nov 2008
Online Online
#14 RE: The demise of the low level Programmer.
0
(27-05-2012 15:57)shogo ha scritto:  Ma perché.. dovrebbe funzionare? Fermosi
Se si non mi rincuoro per niente!

Seh, copia una stringa null-terminated in dest (compreso /0) e restituisce dest.
L'equivalente sarebbe

Codice:
char* func( char* dest, char* src )
{
    int i = 0;
    for(; src[0] != NULL; ++i )
        dest[i] = src[i];
    dest[i] = 0;
    return dest;
}

Che forse è anche più decente Asd

Tommaso Checchi
< devlog | twitter | Dojo, a C++ game framework >
(Questo messaggio è stato modificato l'ultima volta il: 27-05-2012 16:33 da _tommo_.)
27-05-2012 16:33
Visita il sito web di questo utente Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
fatto
T_T

Messaggi: 1,024
Registrato: May 2009
Offline Offline
#15 RE: The demise of the low level Programmer.
0
(27-05-2012 16:33)_tommo_ ha scritto:  
(27-05-2012 15:57)shogo ha scritto:  Ma perché.. dovrebbe funzionare? Fermosi
Se si non mi rincuoro per niente!

Seh, copia una stringa null-terminated in dest (compreso /0) e restituisce dest.
L'equivalente sarebbe

Codice:
char* func( char* dest, char* src )
{
    int i = 0;
    for(; src[0] != NULL; ++i )
        dest[i] = src[i];
    dest[i] = 0;
    return dest;
}

Che forse è anche più decente Asd

non dovrebbe essere src[i] != NULL ? Asd

Marco Fattorel ╯°□°)╯ ︵ ┻━┻

let's make a MMO
27-05-2012 16:45
Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
Rispondi 


Vai al forum: