Development Tools to get if you are going on an island

turn_pike

Senior member
Mar 4, 2012
316
0
71
Heya guys,

I'm leaving the US for a third-world country to teach English for 6 months. I'm actually studying CS but the offer is pretty good and I think the experience could be useful.

Another reason choosing this job is for me to have some time alone to learn software development. I can program a little bit in Python and Java (and obviously other scripting language like Perl or PHP given time to reread the manual).

However I realize my knowledge is pretty superficial. Just enough to pass the class but no actual mastery of the subject. Therefore I think a change of scenery from Hawaii, my current domicile, to a quiet little town filled with children and old people might be good for me.

I've never actually developed a -real- program. Something big and useful. I've never done any development (not even 100 lines code) in C++ or C# and they seem to be widely used in the industry so its a priority. Android programming is also a big item on my list.

My questions are :
1. Given 6-12 months time what can be feasibly learned. I am hoping for 4-6 hours study/programming time a day at the very least.

2. What tools / library should I have ?
I realize this is a rather nebulous question but I myself have little concrete idea what I will be doing.
The internet speed in the destination country will be very slow so I'd like to download most stuff before I go. For the moment I only have Python, MinGW, Eclipse and Visual Studio 2012 Ultimate at the moment.
I do have linux installed but probably gonna install newest CentOS / UBuntu and fill it with just about every library and development tools available in the software manager.
Ideally I would like to be able to try my hand at a little bit of everything from DirectX/OpenGL to linux kernel programming.

3. Any essential books on software developments that I should take with me ? I should be able to access many stuff online / download a digital version of it from library. (and I know a guy who knows a guy who seems to be able to get his hand of just about any tech related books)
 
Last edited:

DaveSimmons

Elite Member
Aug 12, 2001
40,730
670
126
VirtualBox for virtual machines

XAMPP for a local Apache server under Windows

Android SDK

Unity3D engine for playing with 3D -- it's cross-platform so makes more sense than "raw" DirectX. Also go to their model shop and grab a bunch of free models and animations
 

Cogman

Lifer
Sep 19, 2000
10,286
147
106
1. Depends on the learner. You could become a guru in whatever tech you focus on or you could still be a total beginner. There really isn't a good way to tell which you will become.

2. If you want to do kernel programming, make sure you download all the source packages you can for all of the linux libraries that you use. Make sure you also have the man pages downloaded. On top of that, (since you are dealing with C and probably C++ at this point) grab boost and Cmake.

I would suggest you figure out what you want to learn and then buy a book on it, or download a boat load of tutorials for it. For example, if you are targeting Opengl, get everything you can with opengl in it and before you go, get a basic opengl program setup (trust me on this! You don't want to be without internet trying to figure out how to setup a basic hello world program for any library you are trying to learn).

3. Again, it depends on what you want to do. I would first pick out what sort of big project you want to do before just giving you a random recommendation of books.. That being said, look up Code Complete.
 

mjd

Member
Jan 3, 2007
135
0
76
1) You can do a full web app in that time or a mobile app. Decide which before you leave and write some design ASAP

2) An IDE: Setup Pycharm and a django development environment on your machine before you go. Don't forget to grab a database (postgres or Mongo or both) installer before you leave. Grab a sample app from which you can learn patterns and development techniques locally. Make sure you have stackoverflow access at your destination.

3) A sample App, maybe a good django book if you're a book learner, and stackoverflow should be a great start. Plan on implementing something simple, then improving later.

-M