Inizialmente a tutti piace la programma. Così abbiamo deciso di compilare una lista che identifica ragioni e consigli per migliorare le tue competenze di programmazione.
1. 1. Programmazione è per tutti?
La programmazione non è per tutti. La programmazione è per coloro che hanno una passione per la soluzione di problemi difficili da rendere la vita di tutti i giorni migliore.
Ad esempio guardate questo a 16 anni Kid Fa un seguito di milioni di dollari il suo eroe Steve Jobs . L'unico motivo che è così tanto successo è perché egli aveva una passione per quello che stava facendo.
Quindi, se vi trovate manchi qualche motivazione, forse è per questo che non siete grandi.
2. 2. E 'un'abilità che richiede tempo per diventare bravi.
Molti si faranno intimidire da nerd, naturali, bambini prodigio, o anche da quanto sia difficile programmazione. Just fear not, put them aside and focus what really matters, your skills. Nessuna paura, mettetela da parte e mettere a fuoco invece quello che conta veramente, le tue capacità. Non sapevo molto di programmazione, quando ho iniziato la mia carriera CS in università, e prima che io me ne accorgessi , sono diventato un codice Amazon Ninja (Arizona).
3. 3. Molti Hanno un atteggiamento sbagliato
Ho visto in questo modo troppe volte in cui la gente inizia incolpando il professore che non può insegnare, l'AT, il compilatore crappy, l'IDE, o anche il sistema operativo. Finché si continua a lamentarsi, la programmazione sarà altrettanto cattiva. Quindi, cercate un atteggiamento positivo!
Lo sapevate che Roller Coaster Tycoon è stato scritto quasi interamente in assembler? Impressionante vero.
Se c'è la volontà, si trova sempre un modo.
4. 4. Io proprio non capisco questi concetti astratti.
La programmazione richiede di pensare fuori dagli schemi. Quando sei un principiante, vi imbatterete in algoritmi, strutture dati, convenzioni, e un intero miriade di altre cose che sono pasticcio con la vostra mente.
Prenderla con calma, e iniziate ad imparare tutto ciò un passo alla volta. Se non si riesce a capire con Wikipedia, Google, o chiedendo a qualcuno che sa (che per inciso, è la mia ricetta segreta per imparare qualcosa di nuovo). Provate con gli esempi fino a quando non lo capite completamente.
Se non capire le basi, come pensi che si sta per comprendere gli argomenti avanzati?
5. 5. Aspetta, possiamo usare Google?
Quando avete problemi il debug del codice o non riesce a capire come fare qualcosa, Google è il tuo migliore amico. Io non incoraggiano il plagio del codice, lo penso che migliaia di altre persone hanno probabilmente avuto la tua stessa esatta domanda . A E indovinate cosa? Altri li aiutano a capire il loro problema e fornire una soluzione.
Googlalo! Quindi, se vi dimenticate come si fa una coa, non trovate un bug o, semplicemente, non riescite a capire qualcosa, Googlalo!
6. 6. Un'attenta pianificazione e progettazione? Proprio mentre il codice procede.
Prima di aiutare chiunque con il loro codice, chiedo di vedere il loro algoritmo. Se non lo hanno, dico loro di sviluppare uno e quasi tutti scoprono perchè il loro programma non ha funzionato.
Un algoritmo è il quadro, e la base, di un programma. Molti principianti non si impegnagno a scriverlo come va fatto.Quando ciò accade, perdeno traccia della loro direzione nel risolvere il problema e diventa difficile il debug. - Benjamin
Così la prossima volta, risparmiare tempo e scrivete il vostro piano d'attacco su un pezzo di carta. Non iniziate la programmazione fino a quando non sapete come risolvere il problema. Io lo faccio, e funziona incredibilmente.
Non volete il vostro programma simile a questo povero ragazzo, Asimo caduta dalle scale , vero? Pianificare di conseguenza!
7. 7. Ho un sacco di errori! Cosa devo fare?
Calmati e relax. Gli errori sono inevitabili e accadono più frequentemente di quanto si possa pensare. Essi sono di solito accompagnati da un numero di riga, spiegazione semplice e, talvolta, un suggerimento. Basta andare indietro e provare a capire cosa sia andato storto. In caso contrario, basta copiare e incollare tutto il messaggio in Google. Il più delle volte, funzionerà.
Un'altra cosa da provare è compilazione in brevi frammenti del codice. Questo metodo garantisce che non avrai un terminale completo di messaggi di errore poco comprensibile e si accelera la programmazione.
8. 8. Non capisco il linguaggio, la sintassi, o ambiente di programmazione.
Well, if you don't understand it, then there really is a problem. Bene, se non lo capisco, allora c'è veramente un problema. In my senior design class we were making a video game using Ogre3D . Nella mia classe di progettazione di alto livello stavamo facendo una partita a video utilizzando Ogre3D . Let me tell you, it wasn't the best experience since we were all coding as we went and never really had a great introduction to the environment. Lasciate che vi dica, non è stata la migliore esperienza quando eravamo tutti la codifica come siamo andati e mai veramente avuto un grande introduzione per l'ambiente. We ended up starting from scratch 8 weeks into our project and had to put in about an average of 8 hours a day for two weeks. Abbiamo finito per partire da zero otto settimane nel nostro progetto e ha dovuto mettere in su una media di 8 ore al giorno per due settimane. The last few days we were putting in easily over 14 hours while taking 3-4 other classes… Gli ultimi giorni siamo stati facilmente mettendo in oltre 14 ore durante l'assunzione di 3-4 altre classi ...
This taught us to put in the time beforehand to really understand everything about the language, syntax, concepts, and programming environment before we started programming. Questo ci ha insegnato a mettere in tempo prima di capire veramente tutto ciò che riguarda il linguaggio, la sintassi, concetti e ambiente di programmazione prima di iniziare la programmazione. This would've saved us not hours, but days . Ciò non ci hai salvato ore, ma giorni.
9. 9. But the problem is so hard! Ma il problema è così difficile!
Do you have an algorithm? Avete un algoritmo? Well, that's your first problem. Bene, quello è il tuo primo problema. If you still can't solve it, try taking a break. Se ancora non è possibile risolvere, prova a prendere una pausa. People usually figure out how to solve a problem when they are away from the computer. La gente di solito a capire come risolvere un problema quando sono lontani dal computer. I've had many times where I even came up with a solution in my sleep . Ho avuto molte volte in cui ho anche trovato una soluzione nel sonno.Many times all a programmer needs is some fresh air or even a distraction. Molte volte tutto un programmatore ha bisogno è una certa aria fresca o anche una distrazione. This will free up your mind and possibly let you see what you didn't before. Questo consentirà di liberare la vostra mente e, eventualmente, ti permettono di vedere quello che hai fatto non prima.
Even sometimes, the best way to solve your problem requires an elegant solution. Anche a volte, il modo migliore per risolvere il tuo problema richiede una soluzione elegante. So the next time you try coming up with a convoluted idea for an iPhone game, check out Doodle Jump . Così la prossima volta si prova a venire su con un idea contorta per un gioco iPhone, check out Doodle Jump . All you do is jump and this game has managed to sell over 5 million copies. Non fai altro che saltare e il gioco è riuscito a vendere oltre 5 milioni di copie.
10. 10. I'm waiting for my friend here to solve this problem Sto aspettando il mio amico qui per risolvere il problema
This is probably the top reason out of all listed above why some people just plain suck at programming. Questa è probabilmente la ragione superiore di tutti i sopra elencati perché alcune persone solo a succhiare piano di programmazione. If all you are doing is waiting for your buddy to help you out, then you aren't learning anything at all. Se tutti si sta facendo sta aspettando il tuo amico di aiutarvi, allora non stai imparando nulla. Sure, they might spend hours trying to figure it out, but in the end that experience is what counts. Certo, potrebbero passare ore a cercare di capirlo, ma alla fine che l'esperienza è ciò che conta.
So stop depending on other people and learn to become independent. Quindi, smettete di dipendere da altre persone e imparare a diventare indipendenti. If you aren't, maybe that's why you aren't that great (Or hey, maybe you can become lucky like Mark Zuckerberg ). Se non si è, forse è per questo che non sono così grandi (O ehi, forse si può diventare fortunati come Mark Zuckerberg ).
Thanks to Tony, Jay, Chris, William, Miguel, Al, Roby, Joseph, Felicia, Benjamin, Jesse, Pierre, Erick, and Tony for your amazing input on my Why do people initially suck at programming? note on FB. Grazie a Tony, Jay, Chris, William, Miguel, Al, Roby, Giuseppe, Felicia, Benjamin, Jesse, Pierre, Eric, e Tony per il vostro input incredibile sul mio Perché la gente inizialmente aspirare a programmare? nota su FB.
Have any other reasons you encountered that brought you down? Sono altre ragioni che hai incontrato che ti ha portato giù? Feel free to post them below and how you managed to do better, if you did! Sentitevi liberi di postare qui di seguito e come è riuscito a fare meglio, se avete fatto! We'd love to hear from you. Ci piacerebbe sentire da voi.

18. 18. Aug, 2010 Agosto, 2010

