Girl and Computer: Reflecting on the journey that got me to where I am today
rmurphey.medium.com
rmurphey.medium.com
I can barely remember a time when computers weren’t a part of my life, but I know with certainty that that time existed, and that when computers first entered my life, they were exceptional and special.
I can distinctly remember the moment computers came into my life. It was around 1980. My school had just received a simple desktop computer which ran Basic (I forget the make/model).
I remember being dumbstruck that a machine, a machine, could understand what you were typing at the keyboard. What is barely noticed now was completely alien and futuristic then.
I think that was when I started really wanting to get into computing.
http://www.vintagecalculators.com/html/sharp_pc1211-tandy_tr...
He showed me how he wrote programs on it. One of them was a math quiz game.
Later that same year he bought a "real" computer: a TRS-80 Model 16, an absolute beast which could do high (for the time) resolution graphics and even, with a hard disk option, run Unix. He wrote a program in BASIC which plotted the mechanical advantage curve of a piston acting on a crankshaft while simultaneously displaying a crude, 0.5fps animation of the piston assembly. I was hooked. To keep my grubby mitts off his expensive machine, he got me a Commodore VIC-20 for my fifth birthday.
I probably predate you and the author by a decade, but growing up in the 70s in rural Michigan, I did not even know what a computer was until my late teens (and by a stroke of luck at that). When our town got a second TV, it was a huge deal and I still remember that day! I started documenting my journey at [0] but have not written follow ups in the last 2 months as I’ve had to deal with some health issues.
[0] https://romlane.substack.com/p/from-sawnwood-to-software
That was quite a bet.
Thanks Mom.
(he may have been involved with computers before, iirc he mentioned MSX and the like, but that was before my time)
It's both sweet and sad to me to read this woman's account of her childhood where the best thing to come into her families living room was a $99 Timex Sinclair.
What a fortuitous decision her parents made while the rest of the neighborhood jumped on the cable TV bandwagon with their disposable income. (I suppose I should be sad for her neighbor kids instead.)
I guess what I really want is for every child to have the same access to opportunities that this one (only barely) realized.
Maybe people aren't having their ideas ignored in Europe. Maybe they're afraid to leave because there are inadequate social safety nets (wait). Maybe European ideas suck? Maybe it's too hard to start a business so lots of people don't; or they have an easier time leaving the country and starting a business in the US (which we'll call American success, even if it's founded and built by immigrants).
Anyway, if that path was more feasible, businesses would need to pay more to encourage people to stay instead of going alone.
I know “immigrant thinks america is great and welcoming” doesn’t fit the “make you angry so you click and share” narrative currently present online with regards to immigration, but it certainly fits the lived experience of myself and many immigrants I know, both legal and illegal.
[edit: forgot to write, I agree with you about the difficulty of starting a business in Europe vs the US, as well as maybe the cultural pressure in favor of running businesses in the US vs general attitude of discouragement in the UK. ]
The UK market is not big enough to bear big successful companies (by HN and VC standards). The first thing a UK company has to do is extend to the US to be able to grow.
If you were into video games in the 80s and 90s, there are lots of stories of developers starting their own thing; the barriers were quite low (a lot of people distributed floppies in ziplock bags going to stores talking to store managers); and you see that in UK and US, and sure there's more in the US because there's more people. But I can't think of any internet sites/products that started that way in the UK.
The author got started on the US version of the British ZX81 computer. Horrible keyboard and version of Basic, but cutting all those corners to get the price down made an opportunity for a lot of people to get into computers at just the right moment!
Where to start and what to learn these days is almost overwhelming. It’s a good and a bad thing there is so much that is so accessible now.
I still have the manual on my bookshelf - and as a matter of fact I'm having this print framed at the moment: http://www.alisoneldred.com/john-harris/fine-art-prints-1/sc...
Just as you say, it feels as if I'd need another lifetime to get a comprehensive understanding of a single modern machine.
At night, I would write out BASIC programs in pencil in my school tablet, to type in the next day.
I tried writing a basketball program that would generate a court in ASCII, with X's and O's representing players. I typed in NBA stats from USA today, to model various players field goal percentages and other attributes.
I tried writing a fantasy game with a generated map. I remember drawing a meandering river, randomly plotting the direction of the next pixel within certain parameters.
Needless to say, I was hooked, and have been programming computers for decades since.
But I am extremely happy with my capabilities today. I build incredible things. And I got to experience moore's law from pong to today.
I wonder what it's like for those born after 1990 or so. Is the opportunity for this type of magic still available? How do the younger generations develop our level of love and passion for computing without these experiences?
I don't think this will ever change. Creativity will always find a way out whether that is building in Minecraft or writing Minecraft mods in Java. Sure, it's a bit more "luxurious" with a computer at home or even a personal device and JavaScript rather than BASIC but at the end of the day nothing fundamental has changed.
On the simpler side, plenty of my friends got started in the early 2000's with Texas Instruments graphing calculator Basic. I'm glad to see the ticalc.org scene is still alive, but recall that the really magical stuff was almost always intimidatingly written in assembly!
Edit: ...And perhaps not surprisingly, I went to ticalc.org to see that TI is locking down their ecosystem as well and removing native code execution. Obviously today's world has more out there for learning and tinkering despite all these walled gardens, but the flipside is that each microcosm is relative obscure compared to the past when there were a handful of mainstream ways to learn to hack and each was just as welcoming or intimidating as the other.
"z2, we are very disappointed in your behavior, and there needs to be a consequence. So I'm afraid you really leave us no choice...YOU ARE GOING TO GO OUTSIDE AND PLAY WITH YOUR FRIENDS!"
Yeah, I was similar. Reading comic books or other geeky pursuits, and my Dad asking me to go outside and play catch with him. :)
Totally! The landscape was/is definitely different since there have been so many abstraction layers placed on top of the hardware, but even web programming is a fun first experience that creates that “woah I made that happen??” feeling.
Personally my first real exposure to programming was playing with Atmel microcontrollers after watching some youtube tutorials and writing video game cheats after seeing a friend use one and wondering how the heck it worked. There was a lot of stuff to figure out, but each time you conquer some new detail of the overall system you’re immediately hungry for more.
It’s actually assuring to hear folks older than myself ask these questions, because I find myself looking at the increasingly locked down computing tech of today and wonder new folks are going to get into this wonderful hobby if there’s no ability to mess around with it.
We’d just hired a new guy after his masters. I guess I am older than him by say 5 years.
I grew up on command line dos, hacking around on config.sys and similar to reconfigure the “extended memory” (above 640 kB) to get say, Tie fighter to run with gouraud shading and stereo sound, little tasks like that kept me burrowed into manuals and using the dos shell as a kid, just before the Win 3.1 era. After becoming a teenager I ended up not touching a computer for maybe 10 years, so the dos shell was always this thing I hacked around on as a kid.
Fast forward to seven years ago, and our new hire has never seen the dos shell (cmnd prompt/whatever) So I am explaining how to navigate, commands to issue etc. and it’s the weirdest thing, reaching into my childhood to tell this guy about some work related particulars here and now. It kind of did feel like he missed out on something good. Then again he was probably hacking together a website at similar age and wonders what in the world we did growing up a few years before.
The fact that I think you're a philistine going with Gourad over Phong shading is something totally incomprehensible to that person that came five years after you.
I feel like my relationship to computers vs. newer generation is very much like my parent generations relationships with cars vs my own. My father in law can tell me about every car he's owned, upgrades made to it, etc. Similarly, I can recall every PC I've built, as well as all of the incremental upgrades along the way.
At this point in my career, I've directly managed close to 100 different software engineers, and only a handful are terribly interested in the inner workings of the machines they use. For them, they're tools, some better than others, for doing the job.
Had a programming class in high school in which the teacher gave us a lot of free time to work on whatever interested us. I made dozens of games in Java during that time, mostly pretty simple ones, but by senior year I had written a sort-of advanced ray casting engine (Think Wolfenstein 3D but with textured floors and a fully-rendered ceiling layer) and I worked with two of my friends to develop it into a sci-fi RPG that we entered into a Game Development competition.
There was a definite moment in high school where I realized that I liked programming, and not just making games with it, and decided that I'd study computer science at university.
I don't think my experience is typical for my demographic, however.
When I finally woke up and came to, it was a mix of laughter at how out of it I was and worry that I was slowly going mad.
Dolores, bring yourself back online. Analysis.
This is so important, as we seem to have become a society engineered by technology, rather than a society that engineers technology
mathematicians fall to wall street. Artists to Advertising. Engineers to silicon valley. and even in nice jobs, all of us succumb to the pace.
I would rather say that we're a society that is engineered by the market, and that the market is engineered by lobbyists. And one particular consequence is that the price of our work is determined largely by its value to those whom the lobbyists serve.
The verbiage evokes a sense of conspiracy theory, but I think it's not only true but perhaps even eminently intuitive.
Frankly, there is no need for conspiracy implications. Deliberate policy steps were taken down this road to where we are now.
The simple truth is the outcome does not match needs, many legitimate expectations.
We can also take a no blame, no shame path to a better overall scenario and should.
> This is so important, as we seem to have become a society engineered by technology, rather than a society that engineers technology
It's still people behind tech. It's just that they can reach much farther today than they ever did. But phrasing it like that sounds like yet another attempt of the humanities to demonize something they can't understand (or control). Like regimes pushing for internet censorship.
Girls and Computers - https://news.ycombinator.com/item?id=3757796 - March 2012 (84 comments)
and is at https://web.archive.org/web/20120328175728/http://rmurphey.c...
I once got into elevator, pressed wrong floor and then found myself staring at the rows of buttons looking for the one marked "Esc". I was overworked at the time.
I also have sometimes wished I could use an Internet Archive-like interface to see places at different times in the past, before buildings were torn down/new ones built/etc. Google Street View does this to an extent, but limited by what could be seen from a camera driving by.
I think my moment of awakening was in 1995 when I watched someone send an email from Liverpool to their son working in Africa. Just couldn't get my head around it.
I myself typed stuff on a machine in the early 80's and was hooked.
Good times.
There's a big difference there, managing a few people is what I know as a Team Lead while managing a group means managing a few teams with their team leads.
An engineering manager is not an engineer at all (although they may have been in the past): they only do management (of a team of engineers). The idea being that they remove that burden from the rest of the team. A team with an engineering manager would usually have a separate tech lead who lead on technical decisions.
I thought the "ing" made the role specifically one for engineers.
The idea being that engineers could continue to work doing engineering whilst moving into management. An engineering manager would be a senior engineer who also manages people: particularly those people's engineering activity.
But, I don't have much experience of this, so I might be wrong.
Engineering is being used here as a categorical rather than descriptive adjective. This person is a manager; the category of people they’re managing is engineering.
If they were happy and you described them as a smiling engineering manager, smiling is descriptive (and used as you were surmising) and engineering is categorical.
1. Project manage your team's deliverables.
2. Interface with other teams/EMs to unblock your team's progress.
3. Interface with product manager/owner to plan for the upcoming quarter/half.
4. Represent/sell/market your team in appropriate forums so that you keep getting high impacting projects/work.
5. Keep an eye on inter-person dynamics within the team. Address them early.
6. Hiring. For your and other teams.
7. Plan for your team member's career growth within the org. Promoting someone takes active participation of the manager with a plan in place.
8. Keep abreast of the tech-architecture that team owns. You don't want to accumulate too much of tech debt.
Typically, a "team leader" works mostly within the team; infrequently interfacing with other tams; I'd say it's 80-20 split between within team outside team focus.
EM on there other hand spend about 60-70% of their time interfacing and interacting with people outside of their team.
Of course, exceptions exist but this is how it's been in my experience.
An engineering manager manages engineers. They understand the technical work about as well as the people they manage, so that they can give relevant coaching. They also understand management principles that make engineering projects successful (WIP counts, release process pros and cons, etc). In other words they know how to structure work flows.
EM is a technical role in the sense it includes managing technical projects. However, it is not an engineering role. I hold Engineering Managers accountable for the following three things:
1. People Management. You are the line manager. You must deal with hiring and firing. You should know the intrinsic motivations of everyone on your team and be able to feed those motivations. There are rote parts of the job as well, such as signing expense reports, vacation requests, and performance reviews.
2. Project Management. You are responsible for your team's delivery. If the team is blocked by something external, you need to resolve that.
3. Program Management. You should "own" your area. You should understand why the company is investing in your area and you have an opinion and a view for how your area can best accomplish the company's goals. You should understand your users/customers as well as or better than anyone.
Even if you can code, as an Engineering Manager you should not take work items for your team. If you need to switch your focus to interviewing a candidate, or a valuable team member is getting poached, or you need to talk to a customer, etc... your team needs you to take care of these things. If you have to make a choice between doing your EM job and keeping your team unblocked by delivering code, you messed up.
That's a very brief overview of how I treat the role. I know many folks disagree, so YMMV.