umd-coding-workshop / website

Hacking the Shell
https://github.com/umd-coding-workshop/website/wiki
29 stars 6 forks source link

Coding Genealogy/Demographics #19

Open jennielevineknies opened 10 years ago

jennielevineknies commented 10 years ago

Anyone interested in participating in a very informal survey? I know that without some serious methodology, that my study will be flawed and little more than anecdotal, but I am somewhat curious about peoples' history with coding. I'm not sure why or what it shows, but I just wonder. For example:

Jennie

Tidbit: I applied to and was accepted to two colleges, UMD and Dickinson. My parents told me that if I chose Dickinson, I would be in debt. If I chose UMD, they would buy me my very own computer. I chose the computer.


What does this mean? I don't know, really. I guess that's what I'm interested in learning from all of you. A lot of what coding is about has to do with the way you as an individual think. Looking at my 25 years of exposure to computers and code, it seems like there were a lot of times where I could have perhaps pushed harder and gained more in-depth knowledge. I am pretty sure I don't think in a way that is necessarily best-suited for being a programmer. I know I have the capacity to understand, and to edit or modify, but not to create. I was happy doing the Code Academy lessons, but when you get to the final summary and they want you to actually create something from scratch... well, I'm not so into that!

I suppose I also wonder if there is more or less exposure to coding in today's world? It feels to me that when I was growing up, you had to know something similar to code just to operate a computer. Now, products are designed to remove the user from code with our fancy operating systems and so on. But on the other hand, it seems to me that "kids today" are much more aware of the power of programming and what possibilities it can open up. Is that true? What do people think?

I also wonder about the platforms. Can you code on an iPad? I've never tried. Do you still need a conventional computer of some type to get stuff done?

Despite what I said above about not having the mind of a programmer, I often wonder if I could have made it as a computer science major all those years ago. Despite my interest in computers, it somehow never seemed like an option to me. I had a housemate who was a computer science major, and she always seemed like she was doing difficult math. But I wish I could go back and have a talk with my younger self...

jwestgard commented 10 years ago

OK, I'm game.

spurioso commented 10 years ago

Jennie, this is interesting and fun. My background is pretty similar to yours actually.

Steve

Age: <= 37 :)

First computer: TRS-80, 198x

First coding: BASIC (on the above-mentioned TRS-80). My dad did some programming and was really into it and wanted me to learn. Like Jennie, I also went through a bunch of the magazines and typed in programs verbatim and then they didn't run because a comma was out of place and I got angry. I didn't really have the patience for it back in those days but I at least got some exposure. I never really got into customizing the programs or building anything of my own. I just typed and then sometimes the program would run.

And Jennie, yes, you're remembering saving to cassette tape correctly. It was a pain in the neck.

Other early coding: My whole early experience with computers is pretty amusing, at least to me. My poor father was always trying to get me into computers. He'd show me how to use a word processor so I could write my expository writing papers in high school and I'd try for a bit and then give up and hand write them or type them out on a manual typewriter. He was advocating email in like 1990 or something and would go on and on about how great it was that you could send a message around the world instantaneously and for FREE and I would say "yeah but it lacks the human touch" and he'd get really mad. In college I responded to emails with post cards.

Somewhere in the early 2000s, in a fit of nostalgia, I decided to see if some adventure games I was fond of in my childhood were floating around as abandonware. I found a few. But better yet, I found there were actually communities devoted to making the things. I really loved the Sierra adventure series (Space Quest, King's Quest) and I actually found you could download Sierra's interpreter and make your own games for it. I became obsessed with this for a while and it was the first time I was really excited about learning to program. I printed out the code for Space Quest I and would spend my lunch breaks trying to read through it to understand what was going on under the hood. I never really made my own game but I learned a ton. I did manage to make a little "game" where the little animated dude could walk around a room and could pick up and drop a flower pot if you typed: GET POT DROP POT Something like that.

Coding courses: I took a class in high school. It counted as a math elective. Can't remember the language. It was one of those teaching languages. I enjoyed it but didn't really see a practical use for it at the time and certainly wasn't interested in pursuing it as a career, because I just wanted to play the saxophone.

Other computers: We had a ridiculous Sanyo computer for a while that had like a 3" x 5" monitor built in to the CPU. I mostly remember playing text and graphical adventure games on it. I didn't have my own computer until my last year in college. I bought it with my Resident Assistant stipend. I don't remember what it was but I remember people being impressed that it had 1GB of storage on it. The computer science student down the hall helped me load AOL onto it and I was pretty impressed that I could type in "bacon" and actually find Web sites devoted to that topic. Then I found a sound file of the HAL computer from 2001 saying "just what do you think you're doing, Dave?" and made that the sound that would play when Windows was shut down. I loved that. I almost completely sabotaged my college career by repeatedly staying up all night playing Civilization 2.

Library school. I took a course on Information Architecture that covered HTML and a little CSS. I also took Database Design and learned some SQL and I also think that was one of the more useful classes I took. I also remember one single lecture on XML and I didn't get it.

Career. Started off as a cataloger. Learned MARC. Did some HTML, CSS, etc. Eventually started copying other people's Javascript without really knowing what it meant. Really got more into coding when I left the cataloging gig and came to UMD and started doing public services. I missed the "techiness" of cataloging and looked for ways to incorporate it into my daily work. I also became frustrated with out-of-the-box tools that didn't do what I wanted them to do. At first I was annoyed that vendors (i.e., OCLC) wouldn't implement changes I thought were obviously needed. Later I realized that those giant tools can't really be expected to meet all the idiosyncratic needs of various users but that maybe with a little knowledge and sweat, I or a small community could either customize something that already exists or else build something new.

At some point I went to a workshop that Nevenka Z. did on RSS feeds. One of the tools she showed was Yahoo Pipes. Yahoo Pipes is a graphical online interface that lets you edit and manipulate various Web data sources without knowing much or any programming. I started messing around with RSS feeds in Yahoo Pipes, filtering out posts I didn't want to read, adding images to news stories that didn't contain images, merging multiple feeds into single feeds. Lots of lightbulbs came on. From there I started using Yahoo Pipes to work with Web Services and APIs. I used the Aleph API to add call numbers to RSS feeds of book lists exported from Worldcat. I created a little gizmo that would add a UMD proxy prefix to a give URL and then shorten the whole thing using the Bit.ly API. This was all so exciting. For the first time in a while I felt like I had active control over interfaces and data sources and wasn't just trying to convince vendors to build me something. I could do it myself at the point of need. Eventually, I reached the limitations of Yahoo Pipes and from that point I devoted myself to learning how to do from scratch what I had already done in Yahoo Pipes. So started teaching myself PHP and Javascript + Jquery and it took like a year or so but I finally reached the point where I can recreate most of what I did in Yahoo Pipes. I felt so empowered and so energized by this whole process that I just wanted others to experience it too, and that's partly why I was interested in participating in group like the Coding Workshop. (The other part is I want a support group and a network of others to learn from and to work with + plus I have this idealistic notion that learning a little programming can restore some autonomy to library staff, particularly those of us in public services).

And that brings us up to the present, which is, Coding Workshop in one hour!

alifabeta commented 10 years ago

Name: Amanda May

Age: 27

First computer: Something that ran with a green screen and green text. Prodigy? I was very young.

First coding: I learned how to create basic programs in my TI-83 calculator. They were very simple, usually just asking for the variable inputs and solving for the area of a geometric shape. Of course, I had to have a program for every geometric shape. Making programs in the calculator was the only way to get through math classes awake.

Later coding: In college, I took a few web design classes because they were taught by one of my favorite professors. We learned HTML and CSS. We were interested in coding for beauty and ease of use (the book Don't Make Me Think by Steve Krug is an amazing resource for usable website design - I'm looking at you, many UM Libraries sub-websites...) We made portfolio sites for ourselves and mock news sites (I was in the journalism program) and the whole experience was really useful.

Career: Armed with my website design skills, I made small amounts of money making websites on the side (for an example, please visit http://texasaluminumfoundry.com/, though I'm more proud of the logo I designed than the website, and http://studentorgs.utexas.edu/raa/). When I got my first job out of college (graphic designer for a petroleum industry continuing ed company), I taught myself about content management systems to make our website easy on the eyes (it was HIDEOUS) and search engine optimization in order to get our company's website to the forefront of many keyword searches. I also served as the liason between the parent university's IT and our company in order to get improvements made to our website templates - I didn't have the access or the knowledge to do this myself.

Library school: I was so happy that the iSchool let me skip 690 - the core class where you learn how to code. It would have been a waste of time for me and I got to take another class that I was really interested in. I got out of it by submitting some examples of the websites I had designed from scratch in a freelance capacity. While in iSchool, I took the Intro to EAD workshop at MARAC.

More career: Somewhere in there, I've taught myself database design. I'm pretty sure that I picked that up while trying to work with the Beast (the huge database that feeds ArchivesUM) and some other databases that we have here at SCPA. I'm pretty good at learning how to use programs that I use often - I think, "There has to be a way to do this easier" and scroll through help topics and Google searches until I figure it out. Now I'm learning Python with this group and will probably go on to learn the other languages that Codecademy has to offer. It just opens up more options for my future, and I love having options. I might have continued on as a graphic and web designer if I knew some of the more advanced scripting languages.

jennielevineknies commented 10 years ago

Just wanted to say thank you for all the responses so far. This is really fascinating, and I did not know I had so many "twins" here at the Libraries in terms of background.

Steve - my dad tried to got me to type high school term papers on the Commodore64 and print them out on his snazzy new dot matrix printer. I hated it. I couldn't do any formatting like I could on my mom's snazzy Brother word processor.

Amanda - when I built the first iteration of "the Beast," I did so with all of my library school Database Design notes at my side. I even drew entity-relationship diagrams before mapping everything out. It's still not the best database, and certainly I think use of MS Access for that is like, so 2000s. But I also think it would have been a lot more terrible if I hadn't taken database design.

I should add that a few years ago I took a course taught by Doug Reside, then at MITH, called "Programming for the Digital Humanities." I breezed through the first three lessons - HTML, XML, CSS. Then we got to mySQL and PHP and Javascript and I fell apart (luckily, I was auditing). I get how to design a database, but I had a lot of mental trouble trying to get the data out of the database using PHP. I think one problem was that I had used MS Access for so long, and Access does so much of that linking and relationship building for you. The other problem was that I just didn't devote the time to the course that I might have if I had been a full-time student. My fault, entirely. I'd like to try PHP again someday.

ecaringo commented 10 years ago

Name: Liz

Age: 26

Early coding: I have vague memories of taking a summer class in programming for gifted middle school students offered by Carnegie Mellon. I don't remember what language we learned, but we programmed frogs to jump and the like for 2 weeks. I remember finishing the exercises before the other kids and being really bored and wishing I could be outside instead.

Other early coding: In high school, I taught myself HTML. The first website I built is still online (a fansite for my favorite TV show), but I'm too embarrassed to share it. Sorry! ;-) I dabbled in CSS to make my website pretty, but I didn't really take the time to understand it. I just knew where to copy and paste it to make it work. I think I played around with JavaScript a little too, but again, didn't understand the mechanics behind it.

Library school: I learned zero coding in library school. I think I might have been the only person in my cohort who didn't create EAD finding aids as part of my internships.

Career: Some HTML, some XML. Nothing fancy.

So despite showing some sort of natural knack for programming in my younger years, I haven't had much formal training. It'll be interesting to see if that helps me (maybe I'll find creative unconventional solutions for problems) or hurts me (I'll waste a lot of time coming up with elaborate solutions to problems when a really simple one exists) when we get going on some real projects.