Posted on 11/29/2016 5:32:51 AM PST by spintreebob
Edited on 11/29/2016 5:48:35 AM PST by Admin Moderator. [history]
Trying to find my place in the place I love, and constantly failing
It was dark and cold that night I stomped down Broadway, talking to my then-boyfriend-now-husband about my feelings. I am always talking about my feelings, and he is always listening. He mhms at the right places and doesnt interrupt and sometimes says good things at the end. Sometimes he says wrong things, and then I have to explain why those things are wrong, taking us down an emotional tangent that is frustrating and exhausting, but hes trying to be helpful, I tell myself and breathe. Bless his little heart.
But tonight, he lets me talk. And I do, filling the minutes with long, twisting sentences that make sense to me, but as they tumble out, Im not sure that they do, so I pause and I blurt, Im just not a white man! Or something like that. This was years ago, so who knows what really happened. I may not have been on Broadway at all. But thats where the anger ended, in not being white or a man or coding since I was two or some combination of the three. This wasnt going to work. Coding wasnt going to work. I didnt belong.
Fast-forward three years. Id choked down my feelings and learned to code and built things and knew stuff that even my then-boyfriend-now-husband didnt know. We sat on our couch one evening while I explained how AJAX worked. He leaned back and I leaned in, excited and trembling at the edge of my seat. I heard the words coming out of my mouth, watched them float in the air between us, blooming with buzzwords and jargon and pride and I burst into tears. I covered my face with my hands, hunched over and shook. I couldnt believe I understood the words I was saying. This was going to work. Coding was going to work. Maybe I did belong.
The cracks in that newly laid confidence would soon come, but not for reasons I may have lead you to believe. I apologize if you assumed this was a story about a difference rooted in race and gender, because it is not. Thats not where we are going. This is about a difference of values, beliefs, perspectives.
I wanted so badly to think like a programmer, which implies that the way I think is wrong. It needed fixing in many ways. This observation is frustratingly fuzzy, cloudy, unfocused, but Ive squeezed it hard enough to make raindrops, something I can taste and feel, and I shall give you three.
I am not solution-oriented. I dont see a problem and get giddy at the idea of solving it, patching it up and sending it on its merry way. I want to poke it and ask it questions. Where did it come from, what is it doing, whats its story? I want to take it to tea and hear about its life and understand it to its core. And if, at that point, Ive come to a wholistic understanding and am able to solve the problem, by all means, let the problem-solving commence! But my instinct is never to solve, but to understand.
This is the part where you tell me that this is a great asset in a programmer! That all programmers would be much better off if they took the time to understand before diving in! My thinking isnt broken at all, you say, its super awesome!
Thats cute. And truly, I appreciate your defense of my broken brain. But no matter what Medium blog posts tell you how crucial it is to understand the problem before coding its solution, this is, at best, an annoying part of an average developers job, and, more likely, a distant idea that is happily ignored.
Developers solve problems. It is the problem-solving, not the problem-understanding, that gets you high. Hm. Maybe this isnt going to work.
I am not comfortable making half-ass ****. Once in a while I look up the famous quote by Reid Hoffman, co-founder of LinkedIn, who said, If you arent embarrassed by the first version of your product, you shipped too late. I say it to myself. I say it again. I let it sit and turn it over and convince myself this isnt insane. I understand this concept at an intellectual level. I get the value of the MVP (minimum viable product) and was excited to learn the pseudo-scientific process of the lean methodology. The quote is a punchy way of encouraging product creators to start small and test an idea before investing loads of money and time in an expensive mistake.
And this advice is great! You should start small and test and learn. But the way this advice manifests itself is often in writing ****** ****that makes ****** **** products, and leaving it in its ****** **** way. Its the shrug that accompanies the mindless defense, But it works. It produces a mentality of doing the absolute bare minimum, not because its whats best for the product or your team, but because, why bother to do more? It works! It condemns everything Ive learned and loved about craftsmanship and quality and just plain giving a ****. There are no As here, there is only pass and fail. Maybe coding wasnt going to work.
This is the part where you tell me that there is such a thing as beautiful code! There are talks that preach the value of well written code, books filled with advice on how to hone your craft, podcast interviews of developers raging against poorly written programs. My value of quality is wonderful, you say, do not fix it, you shout, keep going, you plead!
Thats cute. But no matter how many conference talks youve tweeted about praising code as craft, open up your companys production-level app right now and tell me how much of that has made its way to your product. Dont worry, Ill wait. Because in the real world of death marches, limited runway, and just plain old pressure from the higher ups, quality and care are a dream: sweet, distant, and rarely realized.
But perhaps the biggest way that my brain is broken is less about code, and more about the tech industry as a whole. If youre thinking to yourself, But everyone uses tech so everything is the tech industry, please sit tight while I take a moment to roll my eyes. Ok, Im back. For our purposes, lets define tech industry as companies and professionals who view code as a core part of their business and their self-understanding, both internally and externally.
When I was at NPR years ago, I did a story on public education in California. I dont remember the angle, but I remember looking up a stat to use in the script. I used that stat in a few places, and after fact-checking, I realized there was an updated number available. I went back and changed the references to the new number, relieved that Id caught this mistake before handing over my script to the host. But I missed one. I heard it over the speakers when Michelle Martin, the host, read it out loud during the interview, and my heart stopped. I knew it was my duty to report it, so I went up to my editor and told her. She didnt say anything, but I could feel her disappointment in me. I felt so small.
But heres the thing. No one will ever remember that number. No one remembers it now, and Im sure no one noticed it when it happened. But I knew it happened, that it was an easily preventable mistake, and, in journalism, being wrong in that way is absolutely unacceptable. So imagine my surprise when I first heard of fail fast and break things, one of the famous tech mantras for product creation. Imagine my shock to find out that being wrong is not reprimanded, but, at times, encouraged. Imagine my confusion stepping into a world where people are told to just try it and see. I tell myself over and over that this is different, that this is good, that public experimentation is not a holy sin. Ive managed to convince myself, when Im not busy quieting a nauseous tummy tormented by public broken attempts and shameful failures. But here, I will admit defeat. Being wrong in software is fundamentally different from being wrong in reporting. Except when its not.
When I use your product, Im trusting you. I believe you when you tell me that clicking that button will create my profile, that I am indeed submitting an email by hitting enter, that I will see my moms message when I click on her little, round face. My belief in you is delicate and deep. Do not take my trust for granted. Do not take advantage of me.
We are in a relationship, you and I. Distant and faceless, yes, but a relationship nonetheless. I give and you take and you give and I take, and I believe your words, your lines, your interfaces. It should be precious. It should be handled with care, but the carelessness I see in tech is unsettling. The willful ignorance, the rejection of our relationship, hurts.
It might come big, like playing with my emotions by purposefully filling my feed with sad or happy content, just to see how I respond.
It might come small, like your claim of being the number one this-and-that in your this-and-that field, according to no one. You are so proud of your accomplishments and so comfortable in your grandeur that you forget to be honest with me.
Sometimes it comes deep, like spending months together trying to solve a problem you promised me you could solve to later find out that you got it all wrong, you made it all up, you have no idea what youre doing. You brag about this in your interviews and inevitable autobiography. For some strange reason, you wear this ignorance as a badge of honor. You failed fast and broke my heart.
But you will never see it that way. Youre too excited. I feel you whisper make the world a better place as you drift to sleep, so obsessed with changing it that you forget that the world is made up of little people like me.
You are experimenting, trying new things, and for this, you are great and lean. But sometimes, you forget that Im at the center of your experiments. Sometimes, you forget me.
I take these relationships seriously. So seriously that often Im immobilized and overwhelmed. And in those moments, you push products Im too uncomfortable to push and you win. You get there first, making waves while I sit in last place and watch. So I choke down my values and discomfort and attempt a push of my own, amid the internal screams that this is wrong and irresponsible and how dare I. I dont get very far. My feeble, half-hearted steps cannot compete with your bold, proud strides. So I cower back to my corner with my broken brain and peep at your success through the leaves.
I do not belong. My values are not valued. My thinking is strange and foreign. My world view has no place here. It is not that I am better, it is that I am different, and my difference feels incompatible with yours, dear tech. So I will mark my corner, a small plot of land and stand firmly here, trying to understand you and reconcile these conflicting differences.
Maybe I will change. Maybe youll surprise me. Maybe, one day, Ill belong.
I’m on a project right now that is converting a FORTRAN program. :)
I was in a music store here in Louisville when I first moved here and, after talking to another older customer in the store, found out he was in upper management at Humana. When he discovered my history he mentioned that they were considering bringing in some old COBOL programmers to train the younger people in COBOL because they still need it but nobody is learning it.
I had just been hired for another job that week so I declined. In hindsight, I should have looked into it. I have a teaching background as well, and it could have been a great opportunity, I suspect.
Me: “Nope. Well, I’ll be glad to give you a “What’s new in IT” article once a quarter, or something. But you all will need to generate stories, or find people in the company to generate them. Then, you can upload them to the website. People like to see pictures of themselves. And read about awesome work they’ve done. You better get snapping!”
HR: “.......”
I didn’t make any friends in that meeting.
I feel sorry for the husband.
Pretty much.
I have been here 18 years and we have been trying to implement a successful reporting system for non-IT people. We still haven’t been able to do it. The only successful reporting system is the Access databases that I created to talk to Oracle. Literally, a screen with a pile of buttons and a place to enter year and pay period. It looks like a code monkey version of Hoarders.
Crystal Reports comes with Visual Studio, which we get for free. But Nooooooooooo.....
Yes, it is now. RPG life was from 2000 to about 2005. Now I write scripts for a CA product (Windows), and CL stuff to maintain/monitor the systems (IBM/AS400).
There’s a difference between grasping the root-cause of a problem, and the kind of touchy-feely “why do you feel you need to do that” kind of understanding (which is what the OP author was doing).
Not everyone is cut out to be an engineer, or a soldier, or a musician, or a psychotherapist. My wife is a wonderful person, who loves staying home and cooking, and despite trying very hard cannot really “get” information technology. I am great at IT, music, and several other areas, but am terrible at the finance side of business, and have no patience for people who get wrapped around the axle about their emotions.
“considering bringing in some old COBOL programmers to train the younger people in COBOL because they still need it but nobody is learning it.”
All application programming on our mainframe and AS400 is COBOL. If you can imagine this....most of our programmers have white hair :>) Not kidding. surprised?
The author does point out at one point that she tends to ramble and fall into stream-of-consciousness a lot, even when talking with her (apparently long-suffering) boyfriend/husband. Conciseness is not her strong suit (and might be why she’s had trouble with coding).
Ah - there’s the rub. Guessing about requirements. You shouldn’t have to, but life is messy sometimes. First, let me tell you that I’m a Mechanical Engineer. I tell my Electrical Engineer wife that if I can’t see it happening, I consider it “magic”. In other words, I have considerable respect for people who do understand/design “tech”.
Having said that, I wish more developers would realize that I don’t want to bend my will or my actions to fit how a machine wants ME to behave. The best machines/programs work for me, not me for them.
All right, now I’m going to sound like a Xenophobe (to use a term the liberals like to pin on me), but part of the problem with programming nowadays, I sincerely believe, is cultural. As smart as some folks are, if they grew up overseas, they probably don’t understand how I think. Therefore, they will not program the way I’d like to see it on the screen, and will not understand why I don’t want to bow to their thinking and feed the program “just so”...
Again - I totally understand that developers need full requirements, but to the extent that they have to guess, it would be helpful if they thought like the users did.
Pappy - keep doing your magic. I salute you.
Actually, they wanted "something". Didn't know what they wanted. Didn't want to do any work to maintain it once they got it.
I understand, maybe. For instance in their world a site like "Yahoo" always has fresh content on it, they just log in and it all presents itself automatically. They don't need to think about the gremlins working in the background to put all that stuff up on the screen.
I told them that they were going to be the gremlins. They didn't like that. :-)
I think she is close to getting it but ultimately misses the mark. She does not explore the ability to honestly evaluate exactly where you are and what you have in order to determine whether you need to improve or not. Then her comments on being accurate when she worked for the media is a joke.
Uh,...HAHAHAHAHAHA...
Manufacturing jobs aren’t coming back.
I would argue that welders and mechanics and those who worked in factories have the base education and logical ability to learn how to code, and learn quickly.
These are intelligent people who had to learn specific skills, but also had to solve problems when something went wrong.
That’s even a better example of developers and users not thinking alike. HR is a very different “culture”. You shouldn’t have to pretend to be HR. You should be told what they want to see, and if you have to guess, you need someone who “speaks HR” to do the guessing. (Please see post 69.)
Raises a great point:
We engineers make _tools_. It’s up to the user to use them.
I've rarely been on the receiving end of reports, or generating them. In infrastructure, I just make sure that they get run.
But, I've seen time and again in meetings - 10 people will argue and argue over the placement of this field, or the inclusion of that one, or the other field got cut off by mistake. Hours are spent generating and fixing the report that, if it gets sent out to those same 10 arguing people, nine of them will ignore it and toss it in the trash.
Yes, great article, if a bit too emotional for my taste.
But the core of what she is saying is so simple.
We are all different. We don’t all think alike, nor would that be desirable.
Value the strengths everyone has that are so different from each other.
It’s really simple. Anyone who has children understands how unique and different we all are as individuals and how innate those differences are. You can see it at an extremely early age.
FORTRAN! Abandon all hope, ye who enter here. We still have PL/1 programs in the Version Control system. We are a Linux shop.
Many young people refuse to spend time on COBOL for fear it might pigeon hole them. That’s why I turned down a high paying job in the 80’s writing TrueBASIC and Quickjob. I am the only surviving COBOL/C programmer and no one even wants to learn it even though our most important batch programs are written in it. I am also the last Oracle Forms developer and our Enterprise system is written in it.
No wonder people are so interested in my physicals.
Precisely
Disclaimer: Opinions posted on Free Republic are those of the individual posters and do not necessarily represent the opinion of Free Republic or its management. All materials posted herein are protected by copyright law and the exemption for fair use of copyrighted works.