This came up in another post, but I thought it was good enough for it's own thread. So...who taught you what you know about computer science? Who taught you about security in "real world" application development? There seems to be a disconnect between
what universities teach in terms of real-world programming and security, and what a job teaches you.
Who gave you, your "first break"? We all have to start somewhere.
This came up in another post, but I thought it was good enough for it's own thread. So...who taught you what you know about computer science? Who taught you about security in "real world" application development? There seems to be a disconnect between what universities teach in terms of real-world programming and security, and what a job teaches you.
My college IT department. In fact I don't have a CS degree at all, but learned everything the hard way through trial and error and just plain doing it.
Cornelius Ellsonpeter wrote:This came up in another post, but I thought it was good enough for it's own thread. So...who taught you what you know about computer science? Who taught you about security in "real world" application development? There seems to be a disconnect between what universities teach in terms of real-world programming and security, and what a job teaches you.
Who gave you, your "first break"? We all have to start somewhere.
My 3rd Grade Teacher.....after he handed me the instructors manual for BASIC for the Apple ][c
A combination of University and lots and lots and lots of books. Not necessarily in that order.
j0217995 wrote:My college IT department. In fact I don't have a CS degree at all, but learned everything the hard way through trial and error and just plain doing it.
Ditto! I too do not have a CS degree. I got my first computer when I was a sophmore in highschool - seriously. The same day I bought a computer game, Jedi Knight Dark Forces II, and began playing that.
I soon learned that I could edit the graphics in the game with photoshop, which I had been using in art class at school. So I started "Skinning" characters.
I then learned that I could customize the functionality of many aspects of the game. The weaponry, the life-cycles, the force-powers, all with c-style programming in cog files. This was all in my first year of owning a computer.
After a year of repeating all of that, I was invited to teach Photoshop in Chicago at the IATC. This was my Junior year in highschool. Following the IATC, I was asked to visit Chicago once again and teach an ActionScript class to a group of AP middle-schoolers. Those kids were amazing! Many of them were already writing apps in c++ at the time.
Following highschool, I eventually moved to Alabama, near the beach. I started looking in the phone book for Internet companies, and soon found one. I emailed the contact address from their website with an array of JPEGS showing my Photoshop work, and also redone version of their own site done in my own code.
That email is what made them call me. I went in for an interview, and landed the job based on my experience, and not my formal education.
I'm 100% self-taught, and it will probably stay that way Unless you could the numerous books I buy and read And I owe my life and career to JediKnight Dark Forces II
Since i wont be able to study Computer science before i get about 19-20 years old(Im 15, so theres stille about 4-5 years to go), i have been studying it myself. And ofc. i have had alot of help from proffesional people, when i was trying to figure something out.
Books have made me what i am. Especially "Code Complete" have learned me ALOT of what i know!
I did attend an ASP and HTML course when i was 10. But HTML was so easy, i knew about everything the teacher had to learn us, in about 3 hours, and it was a course that strecthed a weekend(About 24 hours long).
self taught at everything..music,computers,design,web,art (2 years of high school art course is all)
Who taught you? - Up to which level of CS understanding is the context?
I learned HTML on my own. I made most of my sites with FrontPage (hey Jamie! ). Later, I began looking at the code FrontPage produced, and I soon caught on to what each individual tag did to the design of the page.
Later, I got interested in game development (it was a random motive at the time... basically it was more like "You know what, I want to create my own game!) I went to a one week course to nail the basics of C++. Made some simple programs here and there. Then I became sort of attached to web site designing. I always wanted to create one of those "professional" sites with the cool forums and user accounts, etc. So I started learning ASP, set up an IIS server, fell victim to a halfbaked and utterly pointless variant of the CodeRed worm the first week, set up the IIS server again this time with a firewall and IIS lockdown/URL scan (this is when I started caring about security), and finally built a few asp+access sites for my school.
I stayed with web designing, and started focusing more on the aesthetics and standards. At this point, .NET caught my eye as a way to reduce the amount of time coding sites so that I can focus more on the UX and design.
Right now, I'm just learning on my own from online articles and reading posts on C9.
I can't say I'm very far in programming in general. I tend to care about everything at once (the design, the UX, the coding), and therefore I can never get entirely good at one particular area.
EDIT: Added more info.
I guess I started with a few basic courses, and then went nuts with the "self-taught" angle...eventually the real-world work side of things has caught up and the two experiences have complimented each other nicely.
Holy smokes, Jamie, you are "self-taught" in all those areas? If I may ask, where do you get your ideas for graphic art? Any good magazines? I may attempt to do a book cover for a friend of mine, and although I have the "ideas", I can't always execute them very well. It's getting better, though, but mainly through trial and error.
I taught myself; most of my professors were clueless, but a few were really good.
DoomBringer wrote:I taught myself; most of my professors were clueless, but a few were really good.
I think everybody, at one time or another, gets one of those "Clueless" professors!
While in highschool, I decided to take "Business Communications". It was a web-development class, but the teacher had absolutely no idea what he was talking about - actually, he was the school basketball coach, the business teacher, and the computer-teacher!
I come from a small town
He ended up "using" my abilities to better his class. He would "invite" me to teach the class for the week. And of course at that time I was just a kid, and public speakign was difficult! He was making me teach the rest of the class HTML. I mean, I had to walk around and instruct my friends and foes. My teammates from the wrestling team were there, I had to teach them. The "Hot" girls were there, and had to teach them. Understand the pressure!
Quite a few self teachers aren't there
I also fit in that category as well. Got good grades at GCSE (not all A's, only failed one (German)). Did not do too well at A-levels though (despite picking two courses I got A's in at GCSE) - distracted by playing Baldurs Gate and Alpha Centauri - basically failed them.
But due to an aptitude in computers I still could get a job (with my father - still there today, part time). Not initially programming (more general word processing and creating posters etc). Did a National Certificate in Computing - couldn't do a Higher National Certificate, despite being more than capable to do it (too young to be classified as a 'mature' student, but lacked A-levels to do it as an immature one (under 21)). Seems like a waste of time now as it doesn't even count towards a degree.
An opportunity came to maintain a local Intranet, as while as the county-wide Extranet (which is called an Intranet for some reason). So I then decided to look at ASP (VBScript) and a bit of client side scripting. This was all before ASP.NET and even XHTML (so uppercase tags and non-semantic code).
Decided I prefered the JScript syntax, so started developing ASP JScript. Databases followed (first Access, then MSDE) and I eventually was asked to do the Intranet as a part time job (so now have two jobs), rather than on secondment.
First task was to redesign the Intranet - using Dreamweaver UltraDev and ASP. Tasked with creating a contacts database, so used SQL Server to store the information and Dreamweaver's behaviours to update and search/list them.
Got fed up with Dreamweaver's code, so tweaked it or even wrote my own code. More ASP development until it was decided a redesign was needed.
By that time, ASP.NET was out so that was used for the new site. Started with VB.NET, but moved onto C# (still maintain some VB.NET code) to develop the site (including document management, training, events and an admin side (for others to update the site)). All done by hand (with some code generation for business entities), so no IDE's getting in the way, just a text editor with syntax highlighting (I wish I had Intellisense at least, but there isn't many tools (free/cheap) that can do this).
During this time I have been doing Open University courses - counting towards a Certificate in Web Applications Development (just finished the last course required to get it) and eventually a degree (BSc - still a few years (6-8) to go to get it).
In some ways, failing my A levels was a good thing as I went straight into work and so don't have to worry about debt that would have been picked up by going to University - although I would have met like-minded people (which I still haven't, except online) if I did go.
self taught... learned a lot of things the hard way.... I did attend two colleges but found them boring and left.
Mr. Hand, of course!
Self-taught. I think that's how it is anyway, no matter what ideas you have gained from others. Because in the end, you have to be willing to learn. You have to connect the dots. Its up to you whether you wish to learn or not. All knowledge comes from somewhere, but all of this knowledege, you teach yourself in some form or another.
This is a really interesting question, I don't know all that much, but I would class myself as self taught.
Schools in the UK tend not to have great IT lessons, on my recent work experience placement I was talking to one of my colegues who told me that IT lessons when he was at school were not compulsory, they learned about programming (in BASIC if I remember correctly) and how computers actually worked, thus giving them a better knowledge base for future learning. These days lessons are more like an ECDL (European Computer Driving Licence), or possibly an even more basic form of exam. We learn about basic Microsoft Access Databases, word processing, spreadsheets, and Microsoft Powerpoint Presentations; these skills are vital, but they are also easily learned, and in a country where many people are on the computer before they are at school the IT lessons provided cannot be seen as stretching really.
My lessons at school have taught me a few things, but even these things were self taught as the teacher would usually give us a project and say: "You have 6 weeks, if you have any questions ask me, but otherwise, begin.".
I have learned how to operate computers by using them, reading manuals, looking at help forums, etc.; but this doesn't really match with what others have talked about.
I first got into programming with HTML, when I first got onto the internet I didn't think too much about how the websites worked, but it only takes a few days/weeks for an enthusiastic person to wonder. After some searching on the internet I found out about HTML and learned some. I remember that my first computer themed learning book was "Teach Yourself HTML" which until recently has been on my desk since I bought it.
After I had done some HTML I remember wanting to make an online calculator, however, only knowing about HTML I got to the end of making the form to look like a calculator and became stuck. I searched for tutorials, but always adding the keyword: "HTML", needless to say the nearest I got to completing it in HTML was by adding a "mailto:" on the submit button so that I could send the answer to the calculation back to the client.
I received a piece of software that was basically a compiler for a form of BASIC that was specifically orientated towards game development. I played around with it for a while, but I didn't use tutorials, rather, I opened the example games and edited the code looking for what changes they caused. After a while I became a bit bored; I wasn't a gamer, and my graphics card was messed up.
The friend that was interested in computers then introduced me to C++, he helped me learn the small amount that I did, and I made my second and last computer related learning book purchase, the book was: "Teach Yourself C++ in 10 Minutes". This book didn't help too much, and I just learned through trial and error.
My friend helped me learn the basics of C#, I remember we were working on a really basic calculator, but got stuck on converting the 'string' to an 'integer' for mathematical operations; much to my glee I found out about 'int.parse()' and quickly finished the application. From then on I have basically taught myself from tutorials online such as:
Recently I have looked into PHP, I have self taught with that also, but as I have experienced other languages it makes it a bit easier to understand; also, all of the projects I have done in PHP have been fairly similar. Very recently I have looked into CSS, I have never used it before but I have already created my first website using it; I have self taught all of the CSS I know through the use of tutorials and other materials, I have found that CSS unlike many of the other languages I have looked into has been quite easy to learn the basics of through self teaching, leaving me feeling that my knowledge of it, even after just a few days is good enough to make a website look good without any '<table>'s.
I have never really found that self teaching has worked for me massively as you need a very strong will to carry on studying when you know that if you don't study there isn't a detention, or other punishment to discourage you. I have found that self teaching has left my knowledge with 'gaps', thus giving 'uneven' knowledge that can be very useful in some circumstances, but most of the time it is not useful at all.
It is interesting to see what I remember about it actually. It is also interesting to note that this has all happened in the last 4 years.
jsampsonPC wrote:He ended up "using" my abilities to better his class. He would "invite" me to teach the class for the week. And of course at that time I was just a kid, and public speakign was difficult! He was making me teach the rest of the class HTML. I mean, I had to walk around and instruct my friends and foes. My teammates from the wrestling team were there, I had to teach them. The "Hot" girls were there, and had to teach them. Understand the pressure!
Oh, the same here. I was invited to teach my Java lessons (the doctor origionally planned to teach C++ that she knows, but my department wanted her to teach us Java that she don't know, so it's not exactly the fault of her... However, I just learnt Java for a month in that time, so I'm not exactly better either... ). And... where are the "hot girls" in my lesson? [C]
For me, my uncle is a degree holder of Computer Science. When he graduates (I'm 10 at that time, my father is about 10 years older than him), he brought us a new computer(286XT, 4 MB RAM, 200MB HDD) and a few games. We(my brother and I) play the games, and one day, we discovered the ROM BASIC(We're told to insert the floppy disk to boot... but that day we forgotten to lock the drive door). My brother have no interest in it, but I'm attracted and started learning it. There's plenty of books in the public library here. Then I started to feel insufficient and started reading English books(I use Chinese natively, but at that time, reading Chinese books for computing means you're reading something from almost 4 years ago)
So by the age of 12, I started learning assembly language, and by 15, I started learning OOP. One of my brother's friend is also computer fans, his could produce excellent 3D animations at the age of 486s. I was very admire of him. He wrote a few game at that time and won a few competitions. Sadly he decided to abordon his skills and focus in fine art.
When studying Higher Diploma in the university, I reached out some friends in the student union's BBS. The admin of the system is one of the earliest Linuxer. This is one of the "forces" that brought me to Linux. The BBS is still functioning, but have become a chatroom for alumni only.
For the actually reason of learning *nix, in the programming lesson(I'm a Maths. student but still have to learn programming) we origionally are required to use Visual Studio to learn C++, but for some reason I forgot the IDEs of everyone cannot start. So the tutor immediately changed the plan and told us to program on the acedemic cluster - a solaris server running SunOS 5. That brought me to the world of *nux, vi and pico.
At that time, games are forbitten to be installed in the computer lab, but there's rarely anyone in the lab of solaris workstations. I must admit I've enjoyed a good time playing freeciv in XWindow. The longer I stay there, the bonding between me and *nix increases, so in the final year, my programming project is also hold on there.
I also found the university library valuable, there's plenty of books I was out of reach otherwise and I spent much time there reading books and journals. The later decision on implementing LAN across everywhere in the library made my life easier there too (I could reading while reaching people online then).
That concludes my earlier life in computing.