Suggerirei di iniziare con qualcosa di semplice. La lingua e la piattaforma non sono importanti.
Cerca di pensare a quali argomenti trovi interessanti, hai sempre voluto un programma che faccia qualcosa per te? costruiscilo, anche se esiste. una volta costruito, prova a pensare a quale sarà il prossimo passo e come migliorarlo.
Eseguendo un ciclo di sviluppo completo: requisito - > design - > implementazione - > test - > deploy
insegnerai a te stesso come essere efficace nella scrittura del codice e probabilmente a trovare gli argomenti a cui ti senti più legato.
Alcuni suggerimenti concreti:
Crea un mashup : utilizza un'API di un sito popolare che utilizzi o che apprezzi e crea la tua applicazione su questa API. Alcuni suggerimenti:
Consulta ProgrammableWeb per molte altre API e idee di mashup.
Crea un'app Android (mobile) - crea qualcosa di semplice in java che ti permetta di fare una funzione che ritieni sia interessante, non importa se qualcun altro lo ha già costruito, prova a costruirlo te stesso. vedi questo come esempio
Crea una semplice applicazione desktop : crea qualcosa che faccia una sorta di elaborazione dei dati, forse leggerà i feed di dati da qualche fonte online e li memorizzerà in un database. più tardi può usare quell'informazione per mostrare qualcosa di interessante.
Ad esempio: quando ero all'università ho avuto la stessa domanda che hai, ho deciso di creare un'applicazione che preannunci l'esito dei giochi sportivi.
In primo luogo ho affermato raschiando siti di scommesse sportive per ottenere il rapporto di puntate, in seguito ho aggiunto la possibilità di leggere le tabelle del punteggio di campionato / torneo e di memorizzare la cronologia delle squadre. Una volta iniziato, ho iniziato ad aggiungere funzionalità al motore di previsione, lunghezza della striscia, forza di casa, differenza di rango, tipo di sede ... Ho creato una roadmap per la mia applicazione e ho cercato di visualizzare come apparirà il mese prossimo e il prossimo anno.
Alla fine ho smesso di lavorare sul mio progetto quando ho iniziato a lavorare, ma posso certamente dire che le mie interviste sul lavoro sono diventate progressivamente più facili (e più interessanti per l'intervistatore) più avanti nel mio progetto.