Self-taught as a programmer, but it's a similar mindset.
Self-taught as a programmer as well, but it's a totally different mindset.
Currently studying MSc in Computation, also at the UPC, Spain and working as a programmer (mainly in Perl and JavaScript).
Programming since I was 14 (currently I'm 23), lot of self-acquired knowledge.
I started out in CS and hated it, but I still spend a lot of my time coding.
Most of my math classmates can program a little, but all the engineers I know are hopeless.
Essentially had to self-teach myself programming after graduation, because all they taught was Java and C++ and Windows NT. Real programming is a totally different mindset.
BS CECS and MS CS, USC, '07
Started programming with 16, started to love it when I wrote the code to run my lab automatically (adjust the lasers, pump the vacuum chamber, run the electron gun, calibrate the spectrometers and do the measurements), while I was downtown having a beer with my friends. Did it in ansii c on a eltec os 9 lab computer using a camac crate.
I still had to type the thesis myself.
Maybe I drop a word about why. CS was an option for me, but I would have done it only to learn more about programming (and maybe how the hardware works). Since I already knew a lot about programming when I was 18, I decided to go for physics, because Astronomy and Quantum physics were both also strong interest of mine.
Basically this decision opened a bunch of very interesting job opportunities in science programming that would have been hard to get into without a scientific degree. I can wholeheartedly recommend to not study CS, but a different science, especially if you know that you want to write software. You can easily learn programming by yourself and get detailed knowledge in another topic. This combination is hard to beat (most scientists are very bad at programming).
It was a lot of fun to program in my own lab environment. Maybe because I controlled the whole pipeline starting from requirements to finally using the software for my own scientific work.
Its a pity that this is rare. Currently I develop software for an ESA space observatory. Sounds incredibly cool, but sucks a lot because of the size of these scientific projects (and because of the bureaucracy of ESA and NASA).
Too boring, especially macroeconomics. It was quite clear early on that they had absolutely no idea how things actually worked in the real world, and were just dreaming up theories.
I'm not a programmer, but I'm learning. It's so hard to get good programmers that I thought I would learn how.
An EE friend of mine (who helped me survive PChem, since I taught myself linear algebra and multivariate calculus, poorly) went back for his MBA recently. He began a standard engineering exposition of market forces in terms of structural equations and nearly the entire class glazed over. Afterwards, the professor (a former physicist) told him that, while his math was spot on, you can't use calculus in front of businesspeople and expect them to follow.
He almost cried. I laffed when he told me about this. (We both worked at JGSM and also at the supercomputing center as undergraduates -- even still, I think he was disappointed.)
Scientific programmers (what I was trained as) and everyday build-something-that-works programmers (which is more fun) are as different as FORTRAN77 and Lisp. Just an observation (related to your final sentence), not a tautology. There is, however, a divide between systems/performance-centric programming and logic-centric or symbolic programming, and the latter is more efficient in terms of man-hours IMHO.
One of the wonderful things about this field is how much is possible to do on your own, if you have a computer a decent internet connection.
In terms of Hecl itself, taken from (http://www.hecl.org/docs/j2me.html#javame_tutorial)
"I became interested in writing cell phone applications several years ago, after a rainy day high in the Italian Dolomites near Cortina d'Ampezzo - my old phone ended up in a mud puddle and died, leading me to purchase a new phone with J2ME (Java) capabilities. Writing applications in Java was okay, but I thought to myself that it would be an interesting experiment to try and create a scripting language that runs on top of the J2ME (now known as Java Micro Edition or Java ME) environment."
BA Philosophy from Ripon College MS Information Systems University of Maryland Baltimore County (in progress).
been a avid "hobbyist" programmer for 7-8 years now... just recently started getting paid for my programming.
Sometimes it's a php script to scrape data, other times it is a vb macro to make excel work more efficiently or a bash script, etc. etc.
Working as a C++ developer at a big online retailer.
the '& Engineering' just means I took more math and physics classes and some intro to (insert Engineering Discipline) classes.
I liked the program, I definitely learned a lot from it, although I can't honestly say I've used it much in my career (ended up lower level than UI often times).
My only gripe is that I wish that (at least at CMU) they had taught more graphic design. We had a few classes, but they were quite basic (I took as many as I could, but ultimately the interesting ones were restricted to Design majors).
Before you go get a Master's -- think about which part of HCI are you most interested in? Usability (evaluating, running tests), UI design, the programming?
Computers are made for making life easier, and in a capitalism that equates to making money if you can teach a computer to do a human job. Just waiting for that dynamite concept to take to market.
I love this site btw.
Started coding at about 8 or 9 years old on a C64 and Apple IIc/IIe. I have always been a tinkerer of sorts... taking things apart then wondering why I have extra parts left over when I put it back together.
I have done it all, networking, development, support, QA, moving up the food chain so to speak. These days, I spend a lot of time in Project/Process management.
Daggum Californicators.
You can do it, if you can find a good cofounder where you are. When people like me talk about it being a net win to be in the Valley, we mean no more than that. It gives you an advantage. But it's far less important than the quality of your cofounder(s).
I-L-L!
All UIUC/Chicago hackers interested in meeting up should email me: jared [at] aftervibe [dot] com
GTHC! GTHC! ;-)
I did my undergrad at Canadian Bible College - B.A. in Religious studies (with Music History and ancient Greek). Thought the subject matter doesn't help coding, I think the college work did. I'm also a "started at age 8" story.
BS Comp Sci Kansas 2006 here.
(also B.S., Physics, Case Western Reserve)
I had one formal course in software: Motorola 68k assembly language programming, in college. Three months of super-tedious review for the slow students ("this is a hexadecimal number") followed by perhaps one month of interesting new knowledge ("this is a stack frame"). I never tried to learn programming from a lecture course again.
I self-taught my own way through ArsDigita's web programming curriculum in the late 1990s... reading Greenspun's stuff was what convinced me that software was actually worth doing, and the reading list was great: SICP, Learning Emacs, Fogel's CVS book (hey, that's all they had in the elder days... :), Internetworking with TCP/IP, SQL for Smarties, Tufte, etc.
After taking some more classes part-time, I've probably got about 1/2 the requirements for a degree in mathematics from a couple of different schools, but never seem to find the time to go back full-time and finish it out.
I do work at the college I dropped out of all those years, ago, though.
So at Waterloo you can now get a BCS (in the math dept, school of comp sci), BMath - CS, Comp Eng, or Software Eng. I think the diversity in the programs is a good thing. Hell half the Electrical Engineers end up as programmers, but I would never hire one :P
They were restricting the students going into the major and I flubbed up the first semester. (I got a D in discrete math. None of the concepts were difficult for me, but they combined it as a proof class and I just couldn't get the hang of them.) Also, I knew I was pretty good with the computers, it was the interaction with people I was lacking.
I'm strongly considering going back for a Ph.D in cognitive science, but I'll likely have to shore up some of my undergraduate weaknesses first. (The years in industry have taught me that as much as I am frustrated with academia, it suits my personality much better.)
I dropped out of grad school (computer science) a few years back after completing 1 year only because it wasn't enjoyable. It felt like high school, no enthusiasm, like every HAD to be there. Classes were painfully slow and sequential, stripped of any creativity.
I graduated from a 3 year Computer Programmer / Systems Analyst program and couldn't be happier. Now working at a retail startup doing all their tech / web/internal development / online / offline marketing and I couldn't be happier
Apart from that I stick in some freelance and my own projects on the side. Currently working on my own startup. I live code, I loves it
So to the initial question: No major degree, but I can code!
An engineering degree really emphasizes problem solving. We had homework sets where you'd be lucky to solve all of them. Spending hours on a single problem. But you learn a lot. I see software development mainly as creative problem-solving.
Getting my first job was a combination of luck and persistence.
Most of a second bachelor's in psychology, University of Pennsylvania
A year-and-a-half in a Clinical Psychology PhD program, University of Texas, Austin
MS Information Systems, and MS Library Science, Drexel University, Philadelphia
Web developer at a not-for-profit medical publishing company, doing Rails and pretty much anything else related to the web.
code part-time, not as good as I'd like. Thinking about going back to school and finishing a CS degree, but I'm 40 with 5 kids to support (geeks get lovin too)
PS: You might want to warn someone if they have cookies turned off... the error message is counterintuitive.
Still learning, of course...
I stretch but know my limits.
My degree is in sanskrit. Programming was as obvious a detour as any after that, once I figured I wasn't cut out to be an academic.
My partners are:
BA PPE & CS, Claremont McKenna BA Economics & CS, Claremont McKenna
Self-taught in programming from age 9. Had 1 long-term job as a game programmer, got fed up with it, now working on my own tech. (I'm 23)
A party school, so my gpa wasn't perfect, but I had a good time. I had a full academic scholarship though.
I've been programming for about 12, or 13 years now, I think.
- Stanford U, Masters in Engineering - UC-Berkeley, Engineering - UC-Berkeley, Computer Science - UC-Berkeley, Business Admin.
7 years out of college. Web programmer for a startup. Still learning the ropes, hoping to have my own startup someday.
Applied for it after I had started programming professionally. (Already had the credits, so why not? ;-)
Guess you could call me a programmer as I wear many hats, but web developer is my prime role...
Will finish this year: MS CS University of Washington
programming for other people for 5 years
BS Comp Science (both at Appstate)
Former Java programmer; current language is Ruby, professionally.
Writing software that bills gas pipelines.
Programmer ... hmmm ... someday I will!
learning as3/ruby/linux shell
Depending on who you ask, I was either trained as a rocket scientist or a propellor head.
Java programmer for a Defense Contractor.