a reply to:
FinalAccount2008
Only get a degree if you feel that you need it.
For example, I sometimes feel like I wasted 65k for my piece of paper - Every job I applied for I never mentioned my associates in IT. Why? Because
everything on my resume was stuff I taught myself, and learned to do back in highschool.
If you have the time to teach yourself, here's a couple technologies that have a lot of resources freely on the internet.
PC Based - Windows 8
1. WPF (C# variety). This is slowly starting to be integrated with Windows 8 Apps, XBox 360 games, and other similar Microsoft technologies. It's
fairly easy to learn, as XML + C# is not a bad combination.
2. C# in general - I'd recommend C++, but ever since picking up C#, I've switched my programming language of choice. It's easy to learn, easy to
develop with (on a Window's environment, that is), and sort of fun.
3. Java and/or Python. Both are free to download, have a minimalist IDE to do the programming, and are still actively used both in the making of
scripts and on the web.
For PC-based, focus on:
1. Basic programming concepts (you will need these later on)
2. How to use threads, and when to use them (they will help to make your app run smoother).
3. Graphics, and making controls.
4. Learning about events.
Web Based
1. ASP.net - Although I'm not a huge fan of it, ASP.net is another technology that you can learn fairly easy (most of the entry level jobs I've seen
require some experience working with it, either as a GUI developer or as a backend coder).
2. HTML5 - Start learning the newer versions of HTML and CSS; it's better to jump the bandwagon now, because then when it becomes commonplace, you
will at least be able to claim you worked with it while it was still being developed.
3. PHP - I can't say much about this one, just that I know it's still used on a variety of sites & pages.
For the web, focus on:
1. Proper design across multiple browsers (no-one wants to use IE only to view your website).
2. How to make a site secure.
3. How the site integrates with it's server, the user's PC, and other items.
Database Based
1. MSSQL - I recommend learning this one first, as it's fairly common in the job market. Although you have to be a "Student" or part of the MSDN to
get a free developer edition, the developer edition costs about $50 or so on Amazon (I bought myself a copy, so that I could work on experiments
outside of a work environment).
2. Oracle or MySQL - both of these are also used quite a bit, and have several different syntaxes for how queries are written.
For the database stuff, focus on:
1. Creating objects (tables, functions, procs, views, and triggers)
2. Restoring a database.
3. Learn about the Profiler (this captures everything written to the database, when it's turned on of course).
4. How to write INSERT, UPDATE, DELETE, and SELECT statements without breaking the script.
Bonus section, **cough cough hints**
1. MS SQL Server Management Studio Add-ins. Right now, there are only a handful of people that know how to build them, because Microsoft technically
has not released any documentation on how they are created). I'm in that handful. And, because the handful is so small, there's a good market for
paid products out there, if you know what you are doing
(I cannot release any paid projects, for binding and commercial reasons).
2. Add-ins and extensions for Microsoft Office, Internet Explorer, or Visual Studio. Again, there's a decent market here, where if you have the
know-how, and mindset, you can make some money off of this area.
3. Become good with graphics - GUI development is very, very important regardless of what you are designing, because a user isn't going to want to
see a command prompt window saying "Please log in" - they will want to see a window with their picture on it, and a log-in button, and a textbox to
enter their information in, and well, you get the point.
-fossilera