Live data from Hacker News

How can you not be romantic about programming? (2020)

thorstenball.com

211–220 of 373 posts

Re: How can you not be romantic about programming? (2020)

#211

Earlier quoted context omitted.

Maybe the problem is that you spent it watching TV?

Seriously, I was between jobs for a while and it was the best time I've had in ages. I could (and would) do random projects that struck my fancy all the time, go out, see friends, write, design things... It was much more productive than a job, and I was constantly doing things with the parts of technology that don't suck.

> Seriously, I was between jobs for a while and it was the best time I've had in ages.

I guess that depends on your financial situation. When I've been between jobs it has always stressed me out. I haven't been in a situation where I was worried about making rent or buying food, but I was worried about finding a new job.

Re: How can you not be romantic about programming? (2020)

#212
post #87

Earlier quoted context omitted.

The longer I am in this profession (and it's been over 20 years) the less I see my peers as "dicks and idiots" but more as victims of the same broken game. I work with very smart people, to be honest. It's the technology and the employers and the culture of development that's the problem. Retiring sounds good right about now.

> It's the technology and the employers and the culture of development that's the problem. What is it about those things that you find to be the problem? Genuinely asking.

Examples of stuff that bites?

-Companies that don't know how to recognize valuable work, so they only track output.

-Cult of the hero.

-Places where learning is not part of the job, both in terms of technologies and in terms of business (as it turns out, people still learn, the bad way).

-Focus on individual performance but demands of teamwork.

-And of course, all the kinds of abusive relationship, work edition.

Re: How can you not be romantic about programming? (2020)

#213
post #87

Earlier quoted context omitted.

> It's the technology and the employers and the culture of development that's the problem. What is it about those things that you find to be the problem? Genuinely asking.

i can take a whack - no one works as a team anymore. everyone gets their project, and they sometimes chat about it, but the whole group dynamic has been lost. this is huge. it almost guarantees that someone is pissed off because they dont have a voice. and that at least two developers are working at cross purposes. that someone is off diligently working on their piece without a real understanding of where it fits in.…

> no one works as a team anymore. everyone gets their project

One complaint I have about some agile implementations is that it takes away individual ownership and reduces larger problems to a series of less interesting choices. I agree with a lot of your other points though.

Re: How can you not be romantic about programming? (2020)

#214

Earlier quoted context omitted.

Actually, frontend is my strength. I've written (and shipped) dozens of apps. I'm quite good at "closing" the app development process. I've been shipping (as opposed to just "coding") applications for over thirty years. The backend was just a more challenging project. I won't go into all the reasons that I wrote it, but it works a charm. A dedicated backend engineer could probably do better (actually a dedicated back…

There definitely is ageism in tech. However, there are ways to minimize impact. Become an expert in latest tech stack and experience in delivering solutions to clients. These positions are extremely difficult to fill, so recruiters are more open to older software engineers. Open the door to yourself by expanding opportunities, vendor companies, contracts, freelance, start your own company, etc. There are so many prob…

> When you demonstrate high performance and solution delivery, age becomes less of an issue.

Never even comes up. Like I said, I've been doing this for a loooooong time. I have a massive open-source portfolio[0]. Much of it is days (or minutes) old. I've been surfing the leading edge for my whole career.

No one ever even looks at it. I've learned that if they give me a binary tree test, I might as well just end the process. They want kids straight out of college.

In one case, I was approached for an ObjC job. I sent them links to several repos (shipping apps that they could build, run, and test) that used ObjC.

They completely ignored it, and gave me a 50-line binary tree test in Swift. They also dinged me for using quality coding/documentation techniques.

I did OK, but not great. I generally do mediocre at leetcode. I spend exactly 0.0 hours, practicing it.

It really isn't my imagination. It's real. I have a Facebook "friend," that is a young man. Nice guy. We get along great. We don't mix, too often, as we travel in different circles, but neither of us has any problems with the other.

His profile background is a desert scene with "SHUT THE FUCK UP, BOOMER" over it, in big text.

If it was "SHUT THE FUCK UP B***H" or "SHUT THE FUCK UP N*****R", he would be [rightly] excoriated and shunned by his appalled friends.

But as long as it's oldies, he's actually cheered on.

This is the current environment that those of us "of a certain age" have to deal with.

Kicking back at older folks has been something that has been going on for thousands of years.

The difference, in my opinion, is that companies are now often run by twenty-something CEOs. In the "old days," the companies were run by older folks, and there was always a cultural structure in place, that ensured that youthful exuberance and rebellion would be tempered by experience, age, and meticulousness. It was enforced by fiat; sometimes, to a fault. I think that we need to have a hybrid; not one over the other. Most of the teams I worked on, had a great mix.

Nowadays, no one wants "Grandpa" saying annoying things like "I have found that I can't rely on system garbage collection, because of the memory and performance hit; especially in threaded applications."

So, the solution is simple. Don't hire oldies. You'll be selling the company before the system goes pear-shaped, anyway, so...win/win.

In my case, I like to design and implement software architectures that are supposed to last for many years, and have significant effects on the lives of vulnerable people, so I don't do a slapdash job. That's basically heresy, in today's world. Some time ago, I read a comment that basically went "If you do not get physically sick, looking at the code in your MVP, you are spending too much time, worried about code quality." That's kind of a "zeitgeist," right there. The very fact that I could pick up a project that I wrote on a lark, two years ago, blow the dust off, give it a couple of tweaks (actually, it was a refactoring that took a couple of weeks. Bit more than "tweaks," but I was adding additional functionality; not fixing deficits), and use it as the backend for a fairly advanced app, shows that the way I do things has merit.

[0] https://stackoverflow.com/story/chrismarshall

Re: How can you not be romantic about programming? (2020)

#215

"After a while, more and more, you’ll find yourself in moments of awe, stunned by the size and fragility of it all; the mountains of work and talent and creativity and foresight and intelligence and luck that went into it. And you’ll reach for the word “magic” because you won’t know how else to describe it and then you lean back and smile, wondering how someone could not." I guess I wish I felt like that about progra…

The longer I am in this profession (and it's been over 20 years) the less I see my peers as "dicks and idiots" but more as victims of the same broken game. I work with very smart people, to be honest. It's the technology and the employers and the culture of development that's the problem. Retiring sounds good right about now.

Working with Clojure/Script is fun.

Re: How can you not be romantic about programming? (2020)

#216
post #42
post #34

While I somewhat admire the author feelings, as a direct answer to the chosen title, I have to say I don't share them at all. I view programming with a mix of indifference and boredom and the sad few years I had to do it as a job are easily the less fulfilling of my life. If I had to sum up my feelings regarding programming, I would say it is: - a lot of uninteresting busy work; - intellectually mostly unchallenging.…

I felt that way after a few years of programming. I was bad at debugging and several other things that would have made my life a lot easier. After a decade of programming, I got better at it, and started to like it more (even doing it in my spare time) People like things they are good at. To be provocative: if you only did it for a few years, you probably weren't that good at it. The same can be said for math, playin…

> And that's not to say "good" is a fixed target... The interesting thing is that once you get to a certain point, you can see the infinite world that you haven't explored yet.

> If you like math then there is a ton of stuff in programming that's mathematical, but you can't get a job in those areas until you've mastered the basics.

I don't think you understand my point.

While I don't think I am exceptionally good, I am not a twenty two years old junior. I have a MSc in Computer Science from a (very) good university and an actual engineering degree. I can debug. I was developing real time simulators of complex networked equipments in a safety critical environment. I (thankfully) wasn't doing CRUD business software.

Let me illustrate my point with a story. I once spent three days trying to understand what wasn't working in some random network code in Ada using gdb and tcpdump because I wasn't allowed to install wireshark on these machines. In the end I realized there was a massive bug the version of the GNAT standard library we were using. Sockets were always bound to all addresses rather than the specified ip. I then had to write a work around because we absolutely couldn't update. And you know how I felt after that? Not clever. I felt sad, bored and like if I had forever lost a week of my life (which I had actually). Thankfully the project became bigger not long after and from then on I was able to spend more time managing the team and the project and didn't have to code much anymore. Gosh I hate coding.

My points regarding maths is not that you can't do mathematically oriented programing. It is that there is far more interesting problem in pure maths that have nothing to do with computers.

Nowadays, I work in management consulting on problems I actually find interesting and which thankfully involve more people than machines.

I was just sharing to give some perspective to the article. Some people actually deeply dislike programming.

Re: How can you not be romantic about programming? (2020)

#217

``I think that it's extraordinarily important that we in computer science keep fun in computing. When it started out, it was an awful lot of fun. Of course, the paying customers got shafted every now and then, and after a while we began to take their complaints seriously. We began to feel as if we really were responsible for the successful, error-free perfect use of these machines. I don't think we are. I think we're…

Thanks for posting this! I first ran across this quote in the intro to SICP, and didn't think much of it when I first read it (~2004). In the intervening years, I'd forgotten about it. I ran across it again a couple of months ago, and was surprised at how strongly it resonated. I've picked up Racket programming on the weekends to bring myself back to some of the fun that got me started in the first place.

Incidentally, Epigrams in Programming[0] is also an ongoing source of inspiration for me. I understand them in new ways as I get older.

[0]: http://www.cs.yale.edu/homes/perlis-alan/quotes.html

Re: How can you not be romantic about programming? (2020)

#218

Earlier quoted context omitted.

I can guarantee you that 5 other teams rely on that specific behavior and don't have the will/independence ("budget") to implement that change if the api was fixed. Not only that, but if they did make that change, their manager would instantly have a handful of directors down their throat demanding an explanation why they just added work to their teams that are busy with Feature Work (TM).

don't have the will/independence ("budget") to implement that change So, dicks and idiot middle managers. I think you made his point.

...And once you walk a bit in their shoes, you realize they're equally pressured. In the end, they are neither dicks nor assholes, they're just clever enough to see that corporate words have no meaning, and maybe they turned a bit cynical because of it. And certainly, if their own boss is bullshitting them and their reports can read their bullshit, why should they be the ones taking the hit?

A shitty environment can't foster good work relations.

Re: How can you not be romantic about programming? (2020)

#219

Earlier quoted context omitted.

This is a total failure to follow any sort of standard. A 504 is a gateway timeout due to the server failing to complete the action, hell, a 400-level for "you fucked up" would be preferable.

4xx would be what you want anyway, no?

304 would be fitting.
Post reply on HN