Live data from Hacker News

I no longer build software

github.com

581–590 of 891 posts

Re: I no longer build software

#581

It seems like nowadays you just can't make money building interesting things anymore. Most of the available programming work is really just writing glue code to make big software systems work as intended, to the point where it can feel more like writing configuration files than actual programming. Put simply, 98% of programming these days is scripting. On the other hand, you have lots of fun things one can do with co…

I've spent the last 3 years building the whole solution suite for 2FA banking devices. We have our own hardware devices with secure elements that use your computer as an internet proxy (connected via bluetooth low energy or USB). If you find a small company doing interesting work, your job looks very different than just writing configuration files. Especially when hardware is involved and the firmware is written in house.

From my experience, if you find a post startup small business with fewer than 10 developers, you end up wearing many hats. Both times I've been at large corporate jobs, though, it's exactly as you describe.

Re: I no longer build software

#582

Earlier quoted context omitted.

It goes without saying that your feelings are personal ones, totally valid, and nobody can really question them. I'm 20 years behind you, and I don't know what effect that will have on my views. But I don't really recognise the picture you're painting. Compared to the first steps I took as a developer about 15 years ago, almost everything about software development seems better to me. I find developing software to be…

I think you are right to say that the methods are vastly improved, but the ends to which those methods are applied have become ever more uninteresting (for a lot of people), and often morally suspect. We have built exquisite tools, but we use them to extract profit, to manipulate behaviour and often for no discernable purpose at all. Programming has become joyless. There are ever-shrinking spaces where a developer ge…

"The brightest minds of our generation are working on making people click ads".

Every time I hear this quote, I remember all the small businesses and ventures that only exist because of Instagram, Facebook and Google Ads. Housewives baking cakes, a leatherworker making custom backpacks, a blacksmith restoring antique knives - those are just personal friends of mine who wouldn't be able to build their businesses if not for what those brightest minds of our generation are doing.

Is all of this really worthless to you?

(Copied over my recent comment on this exact topic, I hope it's OK with the mods).

Re: I no longer build software

#583
I see a lot of comments here from folks wishing they were working on something more fulfilling than a CRUD app. Maybe the problem isn’t what kind of software you work on, but what it means, and what it can help accomplish in the world.

Building easy to use software that solves real problems for real people is hard, regardless of whether it’s a CRUD app or something more exotic.

And building easy to use software that solves real problems for real people feels good and meaningful.

Those real people don’t know and don’t care about the difference between Rust, Clojure, or PHP, they just know that you’re making their life appreciably better.

Don’t find a new career. Go find work that actually carries meaning and worth for you.

Re: I no longer build software

#584

what is the deal with the software engineering -> woodworking pipeline? is it that programmers get so fed up of working with abstract concepts that they immediately pendulum-swing to the most concrete form of building (that can still be done by only one person) that they can find?

It's likely not as common as it seems. Personally I only ever heard of some mythical software engineers from the US pursuing woodworking, but not from anywhere else. Maybe in the US it's a lucrative field and it's common for software engineers in the US to live in houses with plenty of space to do woodworking and where the products of woodworking might actually be useful, so it's something they can play with at home and consider a nice skill to have in case they get fed up with software industry.

Re: I no longer build software

#585
post #520

Earlier quoted context omitted.

There are some economic theories about non-monetary compensation that try to explain this. Basically: Total Compensation = Salary + Benefits + Intangibles Those Intangibles can be things like working environment or commute, but they can also include your affinity for the organization’s mission. People are willing to take smaller salaries when they’re working on something they love & respect. It takes more money to co…

I disagree, one of those intangibles is the easiness to learn, so most of the time you get paid less for working on boring or undesirable but easy to learn things like one CRUD app after another. And you get paid better for more difficult and interesting things, because there are less people able to do it.

i find the contrary to be true, largely without exception. the boring useless stuff that no one wants to touch generally pays alot better.

work that I actualy care about is difficult to get paid for

Re: I no longer build software

#586

Earlier quoted context omitted.

I'm ~23 years behind GP, and I feel the same way as them already. Goes to say, this may be a matter of personality. There were few and brief moments in my career as a software developer when I was truly happy at my work. Most of those involved implementing an architecture or algorithm I figured out from scratch, or took from scientific literature - either as prototype or directly in the product. Sometimes as "hold my…

I like how you describe focusing on your plot of land as a positive coping strategy. I had been doing it instinctively (or necessarily), but had thought of it as some kind of failing. Your comment makes me feel better about it. The end goal of software I work on is to help airplanes land safely. But actually, I work on the software which presents the user interface that displays and sends configuration settings to a…

> but had thought of it as some kind of failing. Your comment makes me feel better about it.

I do it as well; I think organizationally it's a failure, but it is an effective personal coping mechanism. In other words, it's bad for the organization that their codebase isn't really a melting pot of different developers' ideas but instead, if you zoom in enough you notice that it's really a series of hundreds of small fiefdoms each with their own slightly different customs and semantics. This is what creates that software bureaucracy.

For employees though, it works. It's about the only way that I really derive any sense of satisfaction from software engineering. When I can stand back and say yes, this package is mine, I made it and I will take care of it. With the melting pot packages it feels more ambivalent; some portion of the code is mine. Probably not the clever bits, they're probably bugfixes. So I don't have enough mindshare to get satisfaction from achievement, I don't have the satisfaction of at least solving one of the hard problems. No, those people have come and gone, and I'm left with the shale oil of satisfaction: fixing bugs, writing unit tests, and adding documentation. Like shale oil, the joy it brings is very close to the effort it takes to extract it. This isn't the "I accidentally hit an oil vein while digging a garden" joy of really getting to solve something.

Some people derive a lot of joy from doing things that help others (like unit tests, bug fixes and documentation); I'm unfortunately not one of them. Sometimes I wonder if it isn't at least partially because it's so hard to feel the impact. I know HN hates the idea of gameification, but I wonder if it couldn't be applied to good effect here. If someone could make an integration with CI, and with major editors, we could scrape data regarding how many times your unit tests have caught bugs, and how many times your function/class documentation has been viewed. There could be a leaderboard for people that are into that. But for me, just the raw numbers is enough. "Unit tests you have written have exposed 137 bugs in PRs, and documentation you have written has been viewed 138,476 times" would be a huge motivator. It gives me that warm and fuzzy "I actually productively contributed" feeling. Right now I get nothing back; I have no idea if anyone has ever read the documentation I spent hours writing, or if my unit tests have caught any issues.

Re: I no longer build software

#587
post #304
post #287

Earlier quoted context omitted.

I think the implication is that ride hailing, delivery ordering, and flight/hotel booking were possible to do by calling the company on the telephone . Which— if you already know precisely what you want—has almost as little friction as opening an app and tapping a button. (And to make that apply more often, these companies used to distribute fliers containing their “browsable UI.”) “Live streams” of rocket launches w…

Calling has absolutely not the same friction as using an app. It's orders of magnitudes less efficient, more expensive and sometimes just impossible (good luck calling radio taxi in some countries where you don't speak the language). I think comparing what we could do 20+ years ago with what we can do now and saying "meh" is outright absurd. But, hey, everyone is entitled to their opinion.

Not to mention the experience of calling a cab as a foreigner and having the driver take advantage of you by price gouging you or taking you on unnecessary detours.

Re: I no longer build software

#588

Holy shit, this is me! A couple things to clarify: I posted the original issue as a minor complaint about the docker cli and promptly forgot about it. I never expected it to get any traction or follow-up. At the time I posted it, I was working as a contractor for my former full time employer. I had left full-time work there in early 2017 to attend the full-time program at the (sadly now-defunct) Furniture Institute o…

Looks pretty cool. :)

Have you tried out CNC stuff yet? It seems to be a popular thing for people into woodworking too. :)

Re: I no longer build software

#589

Earlier quoted context omitted.

I think you are right to say that the methods are vastly improved, but the ends to which those methods are applied have become ever more uninteresting (for a lot of people), and often morally suspect. We have built exquisite tools, but we use them to extract profit, to manipulate behaviour and often for no discernable purpose at all. Programming has become joyless. There are ever-shrinking spaces where a developer ge…

Unfortunately I agree with this. A great quote I saw a while ago: “The best minds of my generation are thinking about how to make people click ads.” –Jeff Hammerbacher Every paying software job I've ever had was in some way involved getting people to click on ads. Either directly making a product where ad click rate is a measured metric, or products that helped people make products where clicking on ads was a metric.…

It's neither rare or difficult, exactly. The problem is how you look for the job.

Most corporations in the US that are for profit aren't about doing good, they're about making money, and publicly held corporations are even legally encouraged by US law to put the shareholders' bottom line first and foremost.

Non profits can care a lot more, but they generally (at least the ones that exist not) don't focus on something abstract like software, they generally serve an immediate need like affordable housing or surplus food distribution or job training.

Until the business climate in the US changes, about all anyone can do if they want a job where work actually helps people is either work somewhere they get paid enough to use surplus cash to help people or work for a non profit.

I think an idea that hasn't really been tried yet is building a non profit for software... not fitting a non profit base to an existing package, but building a corporation that is made to produce software for the public good.

Re: I no longer build software

#590
Someone mentioned this in another thread awhile back and it really hit home with me. It's a line by the Joe MacMillan character (portrayed by Lee Pace) from Halt and Catch Fire:

"The computer isn't thing. The computer's the thing that gets us to the thing."

That's how programming felt when I got into it back in the 80's and was still there when I started doing it professionally in the 90's. It felt like we were using computers as tools for creativity and exploration. For making the world a better place. Increasingly, as the valuations skyrocketed, that feeling has diminished to the point where I don't see it anywhere anymore. It's not about "getting us to the thing", it's not about making the world better. It is about making a buck.

Now, look; I don't have a problem with people earning a living or even with Apple having a $2T valuation. My problem is the influence that has had on the industry. One might suggest that such a thing is unavoidable and they are probably right, but can't we at least try to be better? Can't we at least try to keep in focus the goal of making lives better and less about showing yet another ad? People are genuinely suffering right now all over the world. I challenge anyone to suggest that health and economic hardships are less important than Facebook.

On a more practical, day-to-day matter: my job as a programmer is, well... my GOD the amount of tooling! When I got started web programming I had a text editor, and FTP client, a server, and a browser. I made a change, uploaded the files, and refreshed my browser. Don't get me wrong. Having a debugger built into the browser is great. Having a proper version control system is fantastic. I think, however, we're missing the forrest for the trees where tooling is concerned.

Here's a case in point that a good friend pointed out to me recently: https://github.com/thecreation/jquery-wizard It's a simple jQuery plugin (please let's not get sidetracked with "jQuery is so old|bad|blah blah blah"!) for building wizards. Just look at all the files needed for the various tooling in relation to actual source code. Babel, Bower, ESLint, NPM, Travis, Gulp, Karma. You have to ask yourself, how much time does the developer get to spend on making his/her product better versus maintaining tooling support?!

And _that_ is what programming is like right now. I hope it changes. I really do.

Post reply on HN