I'm reaching out to you guys in the hopes that may be you can help guide me in the right direction. That is, I'm a guy who uses computers everyday, understands the general concepts of how web sites and computers work together, but has no real connection to the world of programming to know where to really start learning the tools he needs in order to get what he needs done. To give you a better idea of where I'm coming from, here's my history:
TL/DR: I can use computers, I understand programming concepts, I just don't know which languages to learn or how to interface with them professionally.
I started using computers when I was ten. At the time, I was playing Oregon Trail in our sixth grade computer class on Apple Power PC's. I got really attracted to games from my old SNES and wound up getting a computer in seventh grade, a crummy, but at the time awesome, Compaq connected with AOL 3.0 - beeep buzz beeep beep buzzz "Welcome! You've got mail!" - my mom hated my computer lol.
I used computers mostly for chat but had so much fun with them that I took a class in ninth grade on computer programming. We learned how to use QBASIC and that started me on the track to understanding computer programming logic. The class was paired with my geometry class, so we wrote alot of math type programs. At the time, I played an online game called Everquest and became really fast at typing.
In my senior year, I took a class offered at our school from CISCO to understand how networks worked, though by that time I was already putting computers together by getting parts from the local computer faire; getting called on to fix other people's computers; installing and configuring my own operating system; and always playing with software.
In college, I took a computer science class that introduced me to C++ and taught me some more fundamental concepts of computer programming and logic such as recursion. Also at the time, my friend got me a job as a medical biller and through that job, I learned concepts of database management, storage and maintenance.
I went to graduate school to study public health and learned biostatistics in great detail, learning how to program in SAS and SPSS (and very minorly in R).
The problem I have is this: computer programming was never a pervasive discipline taught in my areas of study (biology, medicine and public health), even though so many of the problems in those fields require innovative solutions that can be reached with new software development. I know how you might feel about having even one more coder out there, but I feel that I fall into that category of a person for whom programming is important... in the right context.
As it stands, I've studied public health (specifically epidemiology and biostatistics) for over six years, have a deep understanding of it's methodology and realize that one very critical weakness is that countries who need to improve their public's health the most are also the countries that have the least understanding of how public health works at all. My objective therefore is to provide free, rich, educational material to the world in a web or mobile format.
Toward this aim, I've already begun to create YouTube video tutorials that teach how to program in SAS, but I would like to provide more help and content than I can through YouTube. I believe creating a web site or mobile application that would incorporate user profiles, track course completion status & award achievements and even provide a community forum where users can discuss the lessons they learn - would help bring this type of much needed education to the lower socioeconomic countries that need it the most. The most critical aspect to learning is to be able to see and do that which you are learning, which is why I feel like a public health education system needs to be able to track users progress and provide them with actual real-world examples that they can work through to apply what they're learning.
From a technical point, I feel like I have a general idea of which way to go:
I need to learn how to save user profiles, including information on course completion, achievements and other user-specific data in a solid back-end database. I don't know which direction is best to go in this regard: SQL? MySQL? Also, how do I tie it to the data on the web site? My background in epidemiology is heavily data-centric, so storing data efficiently is important; but I want to create a way for the web site to let users sign in and continue where they left off, and what would be used today eludes me. I simply can't find resources out there which explain what is the better back-end option.
I need to design and format the entire web site. I'm already working on this by drawing out each page of the site physically, preparing literally hundreds of pages of actual content to fill the site with and preparing lessons using actual data and problems that are current, in the scientific literature, and will be educational and applicable for lower socioeconomic countries. From the technical standpoint, I know I should use CSS and HTML5 to design the web site itself and am learning those concepts on Codeacademy as well. I am also getting Dreamweaver to try and tie everything for the site together through there as I once took a web design class that taught me how to use Dreamweaver in a very basic sense as well.
I know this is a seriously long post and I'm sorry if it's unwelcome. I've just been frustrated trying to find out where to learn these things and thought that someone here might be able to set me in the right direction.
Thanks again for your time and hope this letter can make it through to you without interfering with your time too much. Thank you!