16 ms·
Work on interesting problems. Not interesting tech
- PaulHoule 5y agoI think many people are "interested" in novelty. https://www.lehmiller.com/blog/2017/4/28/why-we-crave-sexual-novelty https://www.lehmiller.com/blog/2017/4/28/why-we-crave-sexual... There is "interesting", "novel" and "not understood" which are related but not the same thing. In projects I think one should budget novelty. If you understand the domain (understand the problem) then it is not so risky to use a framework, languages, etc. that you don't understand. If you are unfamiliar with everything, however, you have a tough slope to climb. Sometimes you have to do it. To work with ISO Common Logic you almost certainly have to use Haskell. If you want to code for Arduino you're going to have to work with C or a similar low-level language. But if you can have a choice at all you don't want to use new tools for a new problem.
- 908B64B197 5y ago... but if you can't work on an interesting problem (where you get a cut of the revenue to solve it) then please, make sure to work on the best possible tech stack, ie, the one the company you want to jump ship to already uses.
- commandlinefan 5y agoThe author makes it sound as if "interesting" tech only exists for the sake of being interesting, but interesting tech becomes interesting because it (purports to be) a better way of solving problems than whatever the old way was. I'm old enough to have worked on Cobol at one point, and Cobol is "boring" but it's also bad, because it was designed around the constraints that existed at the time it was created (as was Java). If you're interested in something that doesn't seem like a step forward in usefulness, I wonder why you'd actually be interested in it to begin with.
- jonahx 5y ago> but interesting tech becomes interesting because it (purports to be) a better way of solving problems than whatever the old way was. You would think so, but this is wrong for the same reason that "the most popular product is probably the best product" is wrong. Quality doesn't determine who wins. It's a factor but not the factor. In the case of programming languages in particular, tribalism, new-and-shiny syndrome, and marketing are all probably more important.
- jgwil2 5y agoWell, "most popular" is an objective category, whereas "interesting" is not, so it's really up to the individual to determine what is and isn't interesting.
- jonahx 5y ago> so it's really up to the individual to determine what is and isn't interesting. True. The claim I'm making is that what people think is "interesting" is usually (ofc not always) determined by the factors I mentioned, rather than being informed by deep experience with and knowledge of the relevant "prior art". That is, the new framework or database seems "interesting" to you (the general you) because there are so many articles on HN about it, everyone is talking about, Facebook is using it, etc. Not because you are familiar with similar databases in this space, have specific complaints about them based on experience, and know that this new database has specific features purporting to address them, etc.
- bryanrasmussen 5y ago> I'm old enough to have worked on Cobol at one point So, how much money would 'they' have to offer you to go back to working on Cobol. they meaning a hypothetical company that says they can't find any Cobol programmers.
- redis_mlc 5y agoCOBOL is an ok language. The problem is that you'd be updating very old programs, handling money to the cent, and dealing with systems that likely have had multiple hardware and OS migrations over the decades.
- IfOnlyYouKnew 5y agoThat’s my thought every time someone creates yet-another HN reader. Sure, you were interested mostly in the stack you’re learning. But there are endless opportunities with similar scope where you might end up creating something actually useful. For inspiration, Wikipedia is rich reservoir of repetitive tasks to fix minor issues that would be easier with a task-specific GUI for review.
- mcguire 5y agoThere are downsides to this. The early parts of my resume read like a list of major software project disasters of the 1990s. Among other things, I worked on Taligent OS and WorkplaceOS. (Never heard of them? That's my point.) As a result of chasing interesting problems (and a stint as a university sysadmin), my salary history led me to be significantly underpaid for most of my career.
- als0 5y agoFor anyone else wondering https://en.wikipedia.org/wiki/Workplace_OS https://en.wikipedia.org/wiki/Workplace_OS
- andai 5y ago> Workplace OS is IBM's ultimate operating system prototype of the 1990s. It is the product of an exploratory research program in 1991 which yielded a design called the Grand Unifying Theory of Systems (GUTS), proposing to unify the world's systems as generalized personalities cohabitating concurrently upon a universally sophisticated platform of object-oriented frameworks upon one microkernel. > With protracted development spanning four years and $2 billion (or 0.6% of IBM's revenue for that period), the project suffered development hell characterized by empire building, feature creep, and the second-system effect.
- bumby 5y ago>my salary history led me to be significantly underpaid for most of my career. I feel like this misses the point of the article. The author claims its important to enjoy what you're working on. They make no claims that doing so is a way to maximize your salary. I know tech gets paid well now but that wasn't always the case. Decades ago people went into medicine or law or finance if they wanted to optimize for pay and prestige. Only relatively recently has tech joined that list.
- mcguire 5y agoIt's hard to enjoy what you are working on after you realize it's going from your fingers straight to the trash. And then you find yourself junior to someone who was getting 6 figures straight out of programming bootcamp three years ago. (And good luck trying to convince them that their genius idea has never actually worked.)
- legerdemain 5y agoWant to work on interesting problems? Build software for doctors' offices and medical groups! Help lawyers crawl out of their low-tech hole! Work on software to revolutionize public classrooms! Why work on interesting tech when you could throw yourself at intractable problems that we never get any closer to solving?
- lifeisstillgood 5y agoI was talking to my physio today (doing fine thanks for asking), and she was fed up about having to prove that a client had not paid her - manually matching payments into her bank account with appointments etc. It wasted an hour of her time or more. Now the heart of that is 5 lines of python. It could be written by anyone after a days "starting from zero" coding experience. But actually solving that in real world is a mess of just trying to access the data - it's her data and she only wants to see her bits. But the level of effort is ridiculous. Anyway my point is that solving problems like software for doctor's offices is not the point - that's just building another silo. A doctor who has (secure) access to a industry wide common open data layer can do all the work to run their office themselves. In short we are trying to solve the wrong problem - usually because proprietary code is not a profitable as proprietary data
- MontyCarloHall 5y ago> usually because proprietary code is not a[s] profitable as proprietary data Bingo. This is why Google et al. would never sell your data; they just keep it for themselves and merely sell to advertisers the ability to precisely target you (“pick a demographic down to the shampoo brand and we can target your ads to it”). But those advertisers (or anyone else) will never see a single iota of your data. It’s simply too valuable.
- datameta 5y agoIn a weird kafkaesque way this makes me feel better about my data.
- gampleman 5y agoAs someone who has spent their entire career working on interesting problems using boring technology, and now work on an interesting problem using interesting technology, I can only recommend the latter.
- aslkdjflkajsdf 5y agoI do both. Shall I be ostracized?
- notJim 5y agoShun! Shun! Just kidding. We all want to know what you're working on.
- one_off_comment 5y agoIn my experience, it's fun to work on interesting problems and it's fun to work with interesting tech. But it quickly becomes overwhelming if you try to do both at the same time.
- smt88 5y agoThe thing is that interesting problems are never just tech problems. That's why they still exist. There's still a massive, complex human side to those problems.
- caymanjim 5y agoThese things are fairly orthogonal. There are interesting problems, there's interesting tech. Sometimes interesting problems require interesting tech to solve, but not usually. Often boring problems are best-solved with interesting tech, but they can optionally be solved with boring tech. In my experience, solving interesting problems with boring tech is far more frustrating and unfulfilling than solving boring problems with interesting tech. But again, they're pretty orthogonal. There are a tremendous number of jobs using interesting tech to solve boring problems. This is really the bread-and-butter of most tech careers. You might be selling widgets or building another social network or something that is mind-numbingly boring and unfulfilling, but if you're into the tech, you might still enjoy your day-to-day. That's certainly been the bulk of my career. I've also worked on solving interesting problems using boring tech, and while it was nice to see the results at the end, the path leading there wasn't as fun. If you're lucky enough to land both, that's great. I've worked on interesting problems with both interesting and boring tech (NASA projects), except it didn't pay well. I've worked on boring problems with interesting tech (fintech) and that both paid well and was actually more challenging and more fun. And I've worked on a whole lot of boring problems with boring tech (countless ecommerce web projects). At the end of the day, if I can't have both, interesting tech is probably more important to me, because that's what I spend almost all my time dealing with, and I'm still a hacker at heart and appreciate the tech in itself. It does leave me feeling, most of the time, like my work has no meaning, but I can find meaning in other endeavors. There aren't enough interesting problems that also pay the bills to go 'round, so most of the time I just want my day-to-day to be engaging.
- erokar 5y agoThe author doesn't say who or how what about the project was interesting, just that it was interesting and that it made him endure Java. My experience is the opposite. I don't care so much what I'm making, as long as it's not something making the world a worse place. I care about what technology and methods I can use to do whatever. That is interesting to me from a craft point of view.
- vgel 5y agoI'm getting tired of this take. There's such as thing as programming for the joy of programming. You can love a clever algorithm with no "business value". Code can be beautiful and fun to write without being useful, or optimally-useful-per-unit-of-time-invested.
- kazinator 5y agoWork on iteresting¹ X, not interesting² Y! ───── 1. to me, not necessarily you. 2. to you, not me.
- finiteseries 5y agoYou’re pretty much in agreement with the article from my POV. “Work on interesting ideas, or ideas that you are genuinely interested in” is the bolded message. Spending time painstakingly beautifying your impl of a clever algorithm or, like the author, homegrowing the 8000th iteration of a PM tool with kanban functionality instead of working with k8s/cassandra/<tech> just to have worked with it. Kinda feel like we all end up doing this naturally most of the time after a few years or so, and they’ve just decided to write it down tbh.
- deleted 5y ago[deleted]
- 1vuio0pswjnm7 5y ago"I picked up the project because I was genuinely interested in it, and because it was extremely challenging." I pickied the OS as a project because Im generally interested in it. Its challenging. I had to learn Bourne shell and C, and a bit of assembly. I am genuinely interested in the OS because I use it everyday to help solve problems.
- username91 5y agoRecommend striving for both.
- oytis 5y agoAs much as I agree that solving (technically) interesting problems is more fulfilling than selling ads using distributed clusters, I think that finding an interesting problem that helps business make money is a non-trivial problem by itself and usually requires a separate person doing it full time. If you have such a person in your team, you are in a great luck
- rukshn 5y agoYes I totally agree with you. I did not write it in that POV where you work or do hobby coding. I saw that some comments here has mentioned it as something of a hobby coding pov. If you find working on selling ads interesting then that’s what you should do. Buy doing that you will create something innovative, and new. And you might even be able to merge cool tech into it as a result of it. But don’t learn cool tech just because it’s cool. Do it because you want to solve a problem.
- Abishek_Muthian 5y agoI agree with you, Emphasis needs to be put on finding an interesting problem to solve in the first place, Finding problems is a hard skill. I've been running a problem validation for 2 years[1], 1/10 new posts each day is actually a problem and rest are just ideas someone want to build(there's nothing wrong with it per se, But with problems as first class citizen they're not allowed). And then not everyone who can identify a problem can also have an idea to solve them and that's fine too. It's just the distinction between problems and ideas need to be understood. [1] https://needgap.com https://needgap.com
- eurasiantiger 5y agoImportant note: the writer says they started on Java and had trouble grasping OOP concepts. No wonder, because Java is not an object-oriented language—it is a class-oriented language. This is especially apparent from the inheritance mechanisms. JavaScript, on the other hand, is an object-oriented language down to its prototypal inheritance. There are no classes, only objects and primitives (which can get transparently promoted to objects).
- darthrupert 5y agoNaah. I'll work on interesting tech. Mostly because life is too short for things like php or windows, but also because sometimes (admittedly not very often) it gives me a significant advantage.