Live data from Hacker News

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

thorstenball.com

351–360 of 373 posts

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

#351
post #2

I would happily write code for free (and do so off-hours, with my kids, and for side projects). I have the luxury of working in a field where my employer pays me not because I hate what I’m doing and would rather not do it all, but just because they need me to focus on solving puzzles they choose instead of puzzles I choose.

I feel the same, and liked that you used the word puzzles. I enjoy solving puzzles, and often I use programming to solve them. Sometimes though it's just a process solution, and things like devops puzzles have their own solution space.

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

#352

I've found being too attached to code is a recipe for frustration in the workplace. You code something elegant, simple, dare I say beautiful and inevitably it will be butchered by new product requirements, business needs, that quick hack to satisfy a client or more generally uncaring colleagues who are looking to get their job done as quickly as possible. Perhaps romantic aspects could only be achieved when there are…

> I've found being too attached to code is a recipe for frustration in the workplace.

Not sure why, but I've always viewed code as a means to an end of solving a larger problem. I end up attached to the end result, and not the code itself.

I suspect this is one of the reasons I don't get very passionate about language features. Something that makes my life easier is nice, but I'm not one to argue about them. I've solved problems in Visual Basic to C with everything in between.

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

#353

Earlier quoted context omitted.

"We were running into this issue where we were getting a 504 Gateway Timeout on the update balance call so I eventually found the Slack room for that team and asked about it. They ignored me for a couple weeks,...." Someone could have documented this and/or simply answered a damn question instead of wasting weeks of opportunity cost. Too many dicks and idiots on that website, it seems. "who honestly cares if it gets…

Put yourself in the shoes of the team who was asked to fix this. They probably have a dozen feature requests, two dozen support tickets, and now this guy wants this bug fixed because it does t follow a standard and he had a hard time understanding it. Yes, that is a real issue, and in the ideal world it would be fixed along with every other issue on the list, but in the real world it is unlikely to ever be important…

again, part of the problem was lack of communication and documentation. waiting 2 weeks to be told "fuck off" (in essence) is shitty all around.. it's not JUST that a (stupid) bug exists, it's how it was handled in this case, and, apparently, how they choose to handle it going forward, affecting who knows how many more people/teams in the next few years, and how many more weeks of wasted time. And if this team handles this sort of thing this way, how much more time is being wasted and projects delayed? This is at least as much a communication problem as it is a technical one.

And yeah, I can put myself in those shoes, as I've been on both sides of this. Treating newcomers in your communication channel (slack, etc) with the same level of urgency YOU would want (or need) when you ask for help from some other team is a bare minimum.

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

#354

Earlier quoted context omitted.

> I do it for fun, and I don't really need the work Have you considered that this might cause you to be perceived as a hobbyist?

> Have you considered that this might cause you to be perceived as a hobbyist? I don't care. If anyone perceives me as such, then they are just another person that didn't bother to click on the link, and find out more about me. I'm not particularly interested in working with folks like that. I don't hide a thing. Maybe the [0] thing is confusing, so I'll do it inline, this time: https://stackoverflow.com/story/chrism…

I don't mean a hobbyist in terms of your level of competence. I mean that employers might see your motivation for employment as the pursuit of a hobby -- that is, they cannot rely on you to respond to economic carrots and sticks.

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

#355

Cash rules everything around me. After a few decades of relying on coding to feed my family, I miss the way it felt magical, writing in Basic on a ti 99/4a. I thought I was going to tell computers to do wonderous things. In reality most of us are telling them to serve ads or sell crap to people. Most of the rest of us are telling them to serve data to companies doing the above. It’s just business now, nothing more.

[deleted]

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

#356

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?

2XX level is for the action succeeding. 4XX level is for the action failing due to the user. 5XX level is for the action failing due to the service/code/infra.

In the real world, updating your balance to the same number should be a 200, however in some weird financial world, it may be a 400 because you may not be allowed to set the same balance due to some financial rule. A 500 is a terrible choice unless setting the balance caused an error at your code/infrastructure level.

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

#357
post #94

Earlier quoted context omitted.

Game Development is an example of what can happen when there are too many people passionate about their work. I'm not saying that everyone in that industry is taken advantage of but it's a lot more than the broader tech industry even though there's a lot of overlap between skill sets.

I would like to say that while this is definitely still a thing it has gotten better in recent years. There has been a big push against crunch and there are more and more studios with a focus on work-life balance.

And yet we also see death threats against developers who delay games.

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

#358

Earlier quoted context omitted.

> Have you considered that this might cause you to be perceived as a hobbyist? I don't care. If anyone perceives me as such, then they are just another person that didn't bother to click on the link, and find out more about me. I'm not particularly interested in working with folks like that. I don't hide a thing. Maybe the [0] thing is confusing, so I'll do it inline, this time: https://stackoverflow.com/story/chrism…

I don't mean a hobbyist in terms of your level of competence. I mean that employers might see your motivation for employment as the pursuit of a hobby -- that is, they cannot rely on you to respond to economic carrots and sticks.

Again, I don't care. One look at my portfolio will show you dozens of "hobby" projects that knock a lot of commercial, paid, shipping products into a cocked hat. I'm a Craftsman. I always have been.

I worked for 27 years, for one of the most conservative Japanese corporations in the world, and had a position of ultimate trust. If you know anything at all about this kind of corporation, then you know what that means. I strongly suspect that it would be very, very difficult to find anyone as Honorable, Reliable and Dependable as I am.

The entire tech scene is built around hiring ADHD kids, paying them sick money, and keeping them for 18 months. There's a vast industry, based around providing cultural and technical infrastructure to support this. The fact that you need to test applicants with leetcode says it all. There's no Trust, no Integrity, no Honor, and no Loyalty.

That goes for both corporations and employees. Everyone is out for their own goals; damn the company, the employee, or the team; let alone the customer (who are treated as product, these days).

I am a person of tremendous personal Integrity. Word is Bond. That goes as much for free, open-source efforts, as it does for paid ones. I have an enormous, years-long portfolio of very, very high-quality code, dozens of articles on Medium and my own sites, going into great detail about my personal philosophies and processes, and a decade of checkin history.

If no corporation values that, then that's OK with me. I know some folks that can't afford to hire me, but value my Integrity.

And, as far as "carrots and sticks," they have these new-fangled things called "contracts." I hear they work fairly well.

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

#359

Earlier quoted context omitted.

You could also make 0 dollars a minute standing on a surf board, hiking in a national park or reading a book. There are a lot of things in life that are more interesting than computers.

I've done skiing. Go up, shoosh down. Go up, shoosh down. Go up, shoosh down. It doesn't take too long before I'm off to the lodge to go drinking. And I love alpine views as much as anyone. (When I was a kid, I'd ski until utter exhaustion and could barely walk. But things don't work like that for the adult me.)

If skiing is not your thing, find something else. Almost anything you could possibly do is better than watching TV.

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

#360
That's a sweet childlike view of the world, like the picture postcard of a White Christmas (tm). The real world is like Texas... bad design can produce a black swan failure decades in the making, at any time.

We're like the management at NASA, with their improvised spreadsheet models of O-ring erosion and a theoretic model of how x% of erosion equates to y% of danger, when in reality the original architects wrote down that ANY erosion meant the system wasn't safe, and needed redesign.

As far as I know, none of the code holding everything together is actually suitable for purpose. This is terrifying to me.

---

MS-DOS was fit for purpose, when it ran on floppy disks you could write protect and make copies of. You could run any program you wanted, downloaded from any BBS or copied from any shareware disk, and know full well the biggest loss you could incur would be having to make a new copy of your data, or OS on a fresh floppy disk.

Programming was fun back then, because you didn't have to worry.

That ended when we got hard drives, and when people figured out how to infect firmware, there was no going back.

---

Unless... you start with new hardware and firmware, and don't ever trust applications to talk to the hardware directly, ever. You then minimize the kernel of code as far as practical, and set it up with policies that protect itself, and the hardware by default.

Only then is it possible to get the fun back again. You give the user the tools to decide exactly what to trust a program with, and enforce their decisions. They can be trusted to act wisely, if the tools are sufficiently transparent and easy to use.

Post reply on HN