News for hackers. Stuff that matters.
Re:Feynman: I am burned out and I'll never accomplish anythi... by Netcob on Sunday April 25, 2021 @06:41AM (#26931740)
Goal-oriented work, creativity and motivation definitely have a difficult relationship.

In programming, I learn the most things simply by experimenting at home on my own. I'm thinking about switching jobs, so I wanted to learn some new frameworks and concepts to help with that, and I decided to make my personal projects a bit more "professional". Use continuous integration, focus more on web stuff, build and automatically deploy containers and so on.

Big mistake. I don't want to spend my leisure time fighting with tools, debugging build processes that break all the time, make sense of docker's tagging system and so on. I don't mind programming all day, because I love programming, but I do mind working all day.

So I let it go. I'll come up with my own tools. They won't be great, but I'll have fun making them. And then it'll feel nice using them. And then I'll work on whatever excites me.

Once in a while someone will ask me "how do you know all these things?" and my answer has always been "I don't know that much, I just randomly got interested in this particular topic and decided to play around with it". Over the years/decades, that adds up!

Re:Feynman: I am burned out and I'll never accomplish anythi... by swat535 on Sunday April 25, 2021 @10:32AM (#26932999)
This is exactly why the more I think about it, the more I just want to git-push-heroku-goodbye and be done with it.

I don't care about setting and maintaining AWS instances, docker containers and jenkins.

The older I get, the more I realize how precious my time is and now I have very little patience for anyone or anything that wastes it.

This is also why I've basically cut off all social medias from my life (except HN occasionally), have always preferred working from home to avoid wasting time in traffic, have cut off people who I don't enjoy spending time with and spend more time with my family instead.

Re:Feynman: I am burned out and I'll never accomplish anythi... by hpcjoe on Sunday April 25, 2021 @12:26PM (#26933957)
This 1000x.

Sadly the extended out of state family seems to like FB, and I try to follow science/math twitter.

As you get older, something in you clicks, that you realize that time spent being angry, or combative, reduces the time you have for enjoying things (family, life, etc.).

Your time on earth is a zero sum game. Maximize its utility, maximize your enjoyment, minimize your negativity (e.g. outrage of the day on social media). Your life will be better.

Re:Feynman: I am burned out and I'll never accomplish anythi... by prox on Sunday April 25, 2021 @02:13PM (#26935051)
Even better (imo) is going beyond the maximization maxim and realise the “beauty” of the analog, a world you directly see, hear, touch. Just existing without a specific goal, which is indeed similar as a vacation / holiday. However people seem to reserve the “no goal” mindset only on vacation, but you could also integrate it into your life.
Re:Feynman: I am burned out and I'll never accomplish anythi... by andrei_says_ on Sunday April 25, 2021 @07:41PM (#26937810)
I’ve been practicing no-goal vacations daily and hourly.

Like, a 30-min vacation sometime after work and 2-3 minute vacations hourly.

The key is to drop all goals and switch to a sense of complete freedom, even for a short period of time.

Re:Feynman: I am burned out and I'll never accomplish anythi... by dkdk8283 on Sunday April 25, 2021 @02:41PM (#26935331)
I have no goals, it’s great!

Absolute freedom. I do as I feel most of the time and I’m very lucky to be able to do so.

Re:Feynman: I am burned out and I'll never accomplish anythi... by Oras on Sunday April 25, 2021 @11:37AM (#26933535)
Hear hear! I wish one day the dev community will understand that its never about the tools and more about the delivery. The customer does not give a monkey if the backend is node, go or PHP. You do not impress anyone by using React, redux, amber, angular ... etc. All people care about is a solution to a problem they have.

However, from my experience, this is not a popular opinion among developers.

Re:Feynman: I am burned out and I'll never accomplish anythi... by bstar77 on Sunday April 25, 2021 @01:45PM (#26934713)
It's not popular because it's not realistic in most environments. In many cases it's advantageous to use those things you listed because that's what the market can provide talent-wise. I'd rather deal with learning new tech that's well documented than some custom lib that "just works" but no one understands because the architect left years ago. My whole career has been about consistent education, so that doesn't intimidate me. Working on undocumented architectures that I have to make substantial changes to (and not knowing all of the side effects) is what intimidates me.

Turnover is a reality that can't be ignored. New people come in and now have to figure out something that reads like a stream of conscience. It isn't well documented, doesn't follow the latest best practices and doesn't support modern paradigms and uses outdated frameworks/libs, but works great.

The apps I build always take into consideration the talent pool my employer intends to pull from. The reality is that they (usually) can't hire general "technologists" that are proficient at all layers of the stack. If the project is something that only you will ever work on, then you can do whatever you want and this whole conversation is moot.

Re:Feynman: I am burned out and I'll never accomplish anythi... by solipsism on Sunday April 25, 2021 @01:53PM (#26934816)
it's advantageous to use those things you listed because that's what the market can provide talent-wise

More silliness. Pay developers enough so that they'll stick around. If they stick around, then you don't need to hire for talent in a particular framework or language. You can hire for intelligence, creativity, passion, drive, whatever... and invest in training people when they get there.

Jumping from framework to framework and language to language as the talent pool does is incredibly wasteful.

Re:Feynman: I am burned out and I'll never accomplish anythi... by bstar77 on Sunday April 25, 2021 @03:11PM (#26935631)
> Pay developers enough so that they'll stick around

It's amazing FANG companies have any turnover based on that logic. Turnover happens for a variety of reasons... like global pandemics... you can't make a blanket statement like that and expect to be taken seriously.

Re:Feynman: I am burned out and I'll never accomplish anythi... by solipsism on Sunday April 25, 2021 @03:26PM (#26935745)
Sorry, I was speaking in common parlance and assuming most readers would realize that I don't mean literally 0 turnover.
Re:Feynman: I am burned out and I'll never accomplish anythi... by Oras on Sunday April 25, 2021 @02:53PM (#26935443)
I believe you have agreed with me in your points especially regarding talent and turnover. The shiny tech today will be a legacy 6 months later or a year if you’re lucky. Then the talent pool will change and you can’t attract the devs who religiously follow new trends. You’ll end up hiring people to deal with your {legacy} system or as you pointed out .. substantial changing it.
Re:Feynman: I am burned out and I'll never accomplish anythi... by bstar77 on Sunday April 25, 2021 @03:15PM (#26935650)
React/Redux/Angular all have staying power so I don't understand your point. I don't know what you mean by "shiny" tech. Other than specific libs that go unmaintained, most popular tech has some staying power.
Re:Feynman: I am burned out and I'll never accomplish anythi... by rapind on Sunday April 25, 2021 @07:38PM (#26937792)
That’s not a universal truth. Java was shiny once upon a time. Rails was shiny once, even C was shiny once. This stuff is still being used (not legacy). I’m sure when rails first showed up, people were calling it a fad.

In JS land there’s a ton of churn though for sure if that’s what you were thinking about. Not all of it though.

Re:Feynman: I am burned out and I'll never accomplish anythi... by Oras on Monday April 26, 2021 @03:03AM (#26940026)
Being used does not mean it is not legacy. Do you consider a system running in Java 6 up to date? But if it is stable, serving customers requirements then there is no need to replace it.

The point I am making is, using the current {shiny} tools might not be the correct answer (it could be though depending on the use case). Just use whatever gets the job done faster and then iterate. Some developers will start solutionising based on technology instead of focusing what is the purpose of the system and how it will help users. AKA: CV driven development :)

Re:Feynman: I am burned out and I'll never accomplish anythi... by paledot on Sunday April 25, 2021 @12:11PM (#26933822)
Which is why I open my conversational interviews with, "There's an emergency, sales promised a customer a to-do list app yesterday. It's getting shipped out and forgotten, you're doing it on your own, only thing that matters is it's done fast. What do you use?". And then of course I spring the, "Okay, now it's becoming a flagship product. How do you onboard co-workers? How do you pivot to ongoing maintenance? What problems do you anticipate scaling it out?". But it's always important to have a tool in your toolbox to hack something together in an afternoon, even if it's just to prove a point.
Re:Feynman: I am burned out and I'll never accomplish anythi... by scottLobster on Sunday April 25, 2021 @02:12PM (#26935041)
As a candidate that would be a hell of a red flag, particularly as an opener. After answering I would definitely follow up with "are situations like those an expected part of my day-to-day?" and minutely examine your response. Even if the rest of the interview went swimmingly that opener would give me pause after the fact.

That question translates to me as "your sister teams/leadership/communication infrastructure are completely incompetent/lacking and you're on the spot to pull an 18 hour shift to clean up their mess. What do you do?"

Sure occasional unforeseen emergencies/breakdowns in communication are expected even at the best of companies, but I'd replace it with a hypothetical that makes the company sound fundamentally competent. Perhaps something like "The company has promised the customer a To-Do List App, however automated testing failed to catch a mission-critical edge-case. This comes to light the day before it's supposed to be delivered. The flaw is so fundamental that the app will have to be re-written. Everyone else is handling other parts of the delivery, so you're on the spot to do it on your own. The only thing that matters is that it's done fast. What do you use?"

Re:Feynman: I am burned out and I'll never accomplish anythi... by paledot on Sunday April 25, 2021 @02:29PM (#26935218)
I'd make a note of that response and count it in your favour. But if you get sidetracked enough that you never end up answering the question, that's also not a good sign.

IMO your counterexample is wildly implausible, and is likely to sidetrack the candidate. "Is nothing salvageable? What was the flaw? What automated testing? Do I have to use that testing in my alternative fix? How does that reflect on the rest of my tech stack choice?"

Re:Feynman: I am burned out and I'll never accomplish anythi... by scottLobster on Sunday April 25, 2021 @02:44PM (#26935373)
True, just came up with it off the top of my head. I suppose it is possible to be too detailed in such questions. Point being it at least makes it sound like the company was doing the right things and got hit out of left field, vs stepping in a pile of their own making and making you responsible for fixing it.

Perhaps a more innocent miscommunication like the customer failed to clearly communicate requirements, and it was just discovered in an email conversation that they were expecting and as-of-yet un-implemented To-Do List App in the current release, which is shipping tomorrow/this week/etc. I've experienced situations like that before, not sure how applicable it is to your business.

Re:Feynman: I am burned out and I'll never accomplish anythi... by paledot on Sunday April 25, 2021 @11:08PM (#26938853)
Perhaps a better way to phrase it would be along the lines of, "You propose a to-do list app at a team meeting, and you want to demonstrate that it's a feasible product. However, you have a limited time box to ship it in. What do you reach for?" It lacks a bit of the urgency of the original question, but still comes with time constraints.

My original example is born of a decade of cynicism, and you're right that it could reflect poorly on the company. Thank you for the feedback, though in fact I'm happily unemployed right now.

Re:Feynman: I am burned out and I'll never accomplish anythi... by Viliam1234 on Sunday April 25, 2021 @03:18PM (#26935673)
Devil's Advocate: Interview questions are almost never related to the actual job. Why would the candidate assume otherwise in this case?
Re:Feynman: I am burned out and I'll never accomplish anythi... by scottLobster on Sunday April 25, 2021 @05:26PM (#26936835)
Fair point. I'd say it's sensible for the candidate to assume that context added to any hypothetical is there to inform their answer. Why add the context if it's not meant to inform? At that point it becomes fluff at best and misleading at worst.

It would make no sense for an interviewer to provide meaningless context unless they were deliberately attempting to distract from the the question, or are otherwise simply incompetent/unfocused. I don't see how gas-lighting candidates would be a productive mode of interview, particularly given that each party only has the interview from which to judge each others' character. Even if the candidate were to successfully discern the gas-lighting, all it would do is prevent trust from being formed. At that point every interaction would be subject to question.

So with the assumption that gas-lighting is not the intent and that the hiring party is competent, the question is how is the context meant to inform the response?

Given that the interviewer is gauging the candidate's ability to perform a job, it is sensible to assume that realistic-sounding context applied to a question is meant to see how the candidate would perform in what the interviewer deems a "realistic" scenario.

If the scenario is unrealistic but meant to impart other information, then it should be obvious or stated as such, so that the candidate can attempt to parse to the correct information from the scenario to inform their response.

If the point is merely to motivate the candidate to answer the question by placing themselves in a narrative, I'd argue they should be motivated enough by the fact that they're in a job interview, without the need for unrealistic scenarios. If they aren't then they clearly aren't taking the position seriously or likely have other issues that would impact their job performance even if hired.

Take the hypothetical removed from context: "You have make a deployable to-do list app as quickly as possible, speed and basic functionality are the only priorities. What tools do you use?..." That format accomplishes the same goal of revealing the candidate's knowledge of what a quick/dirty workflow looks like. The followup questions mentioned "what problems to you anticipate when scaling the solution? How would you on-board coworkers? How would you shift from rapid development to ongoing maintenance? etc" would then flesh out the candidate's knowledge equally as well.

Re:Feynman: I am burned out and I'll never accomplish anythi... by cutemonster on Monday April 26, 2021 @12:45PM (#26944689)
> Even if the candidate were to successfully discern the gas-lighting, all it would do is prevent trust from being formed. At that point every interaction would be subject to question.

Good point I think

Re:Feynman: I am burned out and I'll never accomplish anythi... by ric2b on Sunday April 25, 2021 @01:24PM (#26934507)
That would give me a bad impression as a candidate.

It's like you're aware of the issue (sales doesn't give two shits about the capacity of the engineering team) but you want someone that is good at wasting a lot of time efficiently instead of improving communication with the sales team.

Re:Feynman: I am burned out and I'll never accomplish anythi... by solipsism on Sunday April 25, 2021 @01:54PM (#26934832)
And then as a hiring manager I get the impression that this candidate doesn't understand hypotheticals, which is a big red flag. Happily, we will come to mutual agreement on whether you proceed.
Re:Feynman: I am burned out and I'll never accomplish anythi... by scottLobster on Sunday April 25, 2021 @02:27PM (#26935199)
As a candidate I by definition know practically nothing about your company and how it operates internally save for maybe some glassdoor reviews, and you're supposed to be judging how I would perform as a part of said company, same way I'm judging whether the position is worth my time or not.

If all your hypotheticals revolve around cleaning up the mess of flagrantly incompetent coworkers/leadership I'm going to get the impression that that's what I'm expected to do all the time. You could get the same information with different hypotheticals, so there's no point in making your company sound like a horrible place to work.

Happily, we would come to a mutual decision that I should produce profits for someone else. It sounds like you're one of those managers who wants supplicants, not applicants. Good luck with that.

Re:Feynman: I am burned out and I'll never accomplish anythi... by solipsism on Sunday April 25, 2021 @06:05PM (#26937160)
I wouldn't hire someone without telling them plenty about where they will work. You don't have to guess what the workplace is like by decoding my questions. You are certainly welcome to, but the obvious danger is that you will get something wrong. A mature person would just ask, and that's the type of person I would want to hire.

It sounds like you're one of those managers who wants supplicants, not applicants.

Absolutely not. I want human beings with whom I can have a good relationship with, based in communication. I definitely don't want to hire a robot who is making important assumptions based on questionable (and totally wrong) heuristics, and Not bothering to ask simple questions.

So yeah, someone applying a weird algorithm to the questions I'm asking them isn't going to be a good fit.

Re:Feynman: I am burned out and I'll never accomplish anythi... by moksly on Sunday April 25, 2021 @12:32PM (#26934016)
Isn’t the development community sort of there? I mean, most things are still run on PHP, and honestly, I recently saw an open source “forms for the public sector” thing build in Drupal, and now I’m wondering if we’ll ever need another custom programmed form for our web facing applications.

Yet if I go back to my non-management dev friends and talk about this, they are all like “eeeew, what about X and Y” and I’m just like, but neither the citizens or my IT operations staff gives two shits about any of that.

I’m not going to say what is right technically, because I’m not qualified to do that, but I do know what will happen as it’s my decision, and we’ll be slowly moving all our customs forms to a PHP CMS system and we’re just going to shoot the docket container it comes in directly out into our internal Azure cloud with public access through our national identity system (NemID). My developers aren’t going to be out of work either, but instead of making the same form with small differences 9000 times, they will be building Drupal modules with actual challenges.

Re:Feynman: I am burned out and I'll never accomplish anythi... by Oras on Sunday April 25, 2021 @12:45PM (#26934141)
> Yet if I go back to my non-management dev friends and talk about this, they are all like "eeeew, what about X and Y" and I'm just like, but neither the citizens or my IT operations staff gives two shits about any of that.

That's exactly what I meant. I remember arguing with a colleague who over-engineered a simple ORM table by having 3 classes. One was just an empty class, the other was an empty interface, and the third was the actual class. When I asked why did you make it this way? He said: "What if we decided to use Mongo later?

Technically he was right but practically, he was wrong! I saw this overthinking and over-engineering pattern across many in-house dev teams. But this is just my experience, and I'm not judging what is right and wrong from devs point of view. Every decision has its context, but I saw how these complications affecting the delivery and customer experience badly.

Re:Feynman: I am burned out and I'll never accomplish anythi... by 01000101 on Sunday April 25, 2021 @01:06PM (#26934333)
For some reason the first time I do something I always over engineer it... it took me a lot of self growth to take feedback like yours seriously and not get defensive of my “what-if” thought patterns.
Re:Feynman: I am burned out and I'll never accomplish anythi... by pocketgrok on Sunday April 25, 2021 @03:08PM (#26935594)
I’ve gotten into the habit of just pumping out a naïve solution without worrying about anything and then throwing it away and re-building more thoughtfully because now I have full sense of the scope and some immediate edge-cases. As long as the thing is small enough to do that.
Re:Feynman: I am burned out and I'll never accomplish anythi... by allenu on Sunday April 25, 2021 @02:12PM (#26935040)
Yup, I agree it's likely not a popular opinion. In my experience, developers love developing frameworks and tools, even when it isn't necessary.

I mean, it's just fun. Developers are biased to do things that make work interesting, even if it's superfluous. We think that coming up with a better framework or tool will save time in the future. I think that often it's just a wash or a net negative since you now have to maintain this tool AND when you first start on creating it, you are sort of naive about what it needs to support, so you open yourself up to a lot of hurt later when clients of your tool come up with more requirements than you envisioned.

Re:Feynman: I am burned out and I'll never accomplish anythi... by nkingsy on Sunday April 25, 2021 @12:10PM (#26933812)
Popular open source tools are a poor substitute for standards, but they are better than nothing.

Standards matter if you want to show your code to someone else

Re:Feynman: I am burned out and I'll never accomplish anythi... by SaltyBackendGuy on Sunday April 25, 2021 @11:01AM (#26933248)
Same.

I completely overbuilt a recent side project and ended up scraping the whole thing because it wastes too much time to maintain it. As much as I love building new projects, having children at home reminds me that time is my only true resource and it's better spent with the kiddos (at least at this stage of my life).

Re:Feynman: I am burned out and I'll never accomplish anythi... by yowlingcat on Sunday April 25, 2021 @11:24AM (#26933430)
Asking because I feel this way a lot too -- is this the kind of thing that was avoidable (IE if you built it on Rails/Django + Heroku would that have cut down the maintenance), or was there intrinsic complexity to the project that made it unavoidable?

More and more, I want to build things that are in the former category if I build them at all outside of work.

Re:Feynman: I am burned out and I'll never accomplish anythi... by SaltyBackendGuy on Sunday April 25, 2021 @12:02PM (#26933735)
In my particular case, I opened the CI/CD can of worms using Docker (which obviously has great use cases). My use case could have fit into a Rails/Django + Heroku model that would have saved me a bunch of time. I thought by investing in the infra early it would save me time later, however later will likely never come. So basically I spent more time debugging issues due to adding infrastructure complexity than developing the actual project.

TLDR; Wasn't a total loss as I did learn some, however I would have rather spend more time on developing the actual product (or in retrospect more time with my family).

Re:Feynman: I am burned out and I'll never accomplish anythi... by karolist on Monday April 26, 2021 @01:01PM (#26944914)
This tech is great when someone working full time at your company sets up all the scaffolding and you just code your microservice with magic happening around it. Not so great when devs trying to spice up their resume start implementing these ideas to their own personal projects during their free time. I've spent so many hours fighting Basel, gRCP, API gateways, tracing etc etc, just because it's nice at work. But took too much time to replicate something own my own, and it is of course, fragile.
Re:Feynman: I am burned out and I'll never accomplish anythi... by yowlingcat on Monday April 26, 2021 @04:06PM (#26947386)
Yup, I've fallen into this premature optimization path before.
Re:Feynman: I am burned out and I'll never accomplish anythi... by ativzzz on Sunday April 25, 2021 @11:57AM (#26933693)
Depends on what you're building. Rails/django/heroku are web app accelerators. If you are building a web app, then yea they make it super easy and take away a lot of having to think about complex systems, but if you're building anything else not really
Re:Feynman: I am burned out and I'll never accomplish anythi... by yowlingcat on Monday April 26, 2021 @04:06PM (#26947378)
Are you sure about that? You get a ton from a batteries included framework, but it doesn't prevent from successfully building a complex system, nor does it preclude you from having to reason through the powerful footguns.

The way I'd describe it is that /most/ codebases can fit into what you'd call a "web app" including most codebases that include complex systems -- there are, of course, significant exceptions.

Re:Feynman: I am burned out and I'll never accomplish anythi... by buffalobuffalo on Sunday April 25, 2021 @12:41PM (#26934089)
I still use Heroku for almost all my personal projects. I stopped for a while, but they now allow you to dockerize your projects and push them to their registry. They also allow you to have multiple apps with access to shared resources. Those two changes have made it much more flexible than it was back in the early days.

You never realize how much configuration of AWS is like pulling teeth until you stop.

Re:Feynman: I am burned out and I'll never accomplish anythi... by fakedang on Sunday April 25, 2021 @03:03PM (#26935543)
I'm going through literally what you mentioned last. I had a very simply API built on lambdas for a side project, that worked perfectly fine till last month. But now, every minor change I make to that code results in some error or the other that I can't figure out for the life of me. It has been so bad that I had to quit the project altogether.
Re:Feynman: I am burned out and I'll never accomplish anythi... by dizzy3gg on Sunday April 25, 2021 @01:15PM (#26934432)
Ditto, recently moved from AWS to render.com It's like a cheaper Heroku, it's been stable so far. I do use GitHub actions to run a small pipeline on projects but its a far cry from Jenkins.
Re:Feynman: I am burned out and I'll never accomplish anythi... by TranquilMarmot on Sunday April 25, 2021 @05:57PM (#26937095)
I recently switched all of my personal projects from being self hosted on a linode with a complex nginx setup to just using Netlify... never going back.
Re:Feynman: I am burned out and I'll never accomplish anythi... by goodpoint on Sunday April 25, 2021 @10:43AM (#26933081)
> I don't want to spend my leisure time fighting with tools, debugging build processes that break all the time, make sense of docker's tagging system

Now that CV-driven development is the standard, we are forced to learn new bloated "devops" tools and services every year.

This type of knowledge expires very quickly.

Also these tools and services do not develop communities: business users drop last-year tools like hot potatoes when a new cheaper or shit^ny one comes along.

This hype-fueled corporate-driven culture is not going to end well.

Re:Feynman: I am burned out and I'll never accomplish anythi... by lumost on Sunday April 25, 2021 @10:49AM (#26933151)
Sometimes I wonder if modern corporate culture has adopted soviet style newspeak.

Why are we immigrating to the new thing? For the same reasons as we migrated to the old thing. Why is the new thing better? Because it’s just so much better.

Re:Feynman: I am burned out and I'll never accomplish anythi... by weehoo on Sunday April 25, 2021 @01:36PM (#26934620)
If you can convince the higher ups that migrating tooling provides business value, you can do something that requires zero insight or creativity for a few months and at the end of it be promoted for organizing a successful migration despite delivering zero measurable business value. The effects of the migration are gonna be second and higher order effects that are impossible to separate from the rest of the business so you can just claim the tooling was the leverage that let the people doing first order work succeed. Being a tool astronaut lets you claim a portion of everyone else in your orgs success without ever taking a professional risk, since your odds of being called out for an ineffectual change are near zero, since there’s no first order signals.

I’m not saying modern tooling is useless; I don’t use ed, cc, and make for my development. But there’s a huge difference between a zero to one tooling effort and an N to N+1 tooling effort. The first one requires figuring out all the implicit/implied/manual parts of the process. The second one is often just turning one set of configuration languages into another.

Re:Feynman: I am burned out and I'll never accomplish anythi... by mclightning on Sunday April 25, 2021 @04:08PM (#26936170)
Holy cow. This! Exactly this! It happened in big corp., I am working at right now. As an engineer, I just watched it happen. When I tried to explain to other engineers, most didn't get it. Only a few got the trajectory we were put in by higher ups for credits they were aiming to get. But those few were onboard or powerless as me.

We just observed it happen. As the engineers, we did our job best we could regardless. Things broke, we fixed. Somethings rolled back, and even for those they claimed credit & celebrated for re-inventing the wheel.

Re:Feynman: I am burned out and I'll never accomplish anythi... by goodpoint on Sunday April 25, 2021 @06:03PM (#26937142)
> huge difference between a zero to one tooling effort and an N to N+1 tooling effort

Spot on. There's a serious point of diminishing returns when piling up tools.

At some point the cost of learning, adapting, deploying, maintaining yet another tool becomes a net negative.

Often the solution is to replace 5 fancy tools with 100 lines of Python and Bash.

Re:Feynman: I am burned out and I'll never accomplish anythi... by jeremyjh on Sunday April 25, 2021 @12:26PM (#26933964)
Because there are people for whom "playing" means implementing new devops tools, cluster managers, application servers, etc. In production.
Re:Feynman: I am burned out and I'll never accomplish anythi... by Uehreka on Sunday April 25, 2021 @01:13PM (#26934406)
People on HN are always deriding the “tech hedonic treadmill”, but I find it interesting that this meme seems to have reached maturity in 2015, and the list of things they point to as “the new trendy thing this year” has been the same ever since: Some combo of Node.js, React, webpack, Docker and Kubernetes.

I think this meme was still fairly true then: Node was at risk of splitting into Node.js and IO.js, React was still new-ish and people were (rightfully) panicking over the drastic changes coming in Angular v2, Docker was still new-ish and there were arguments over whether Docker Swarm or Kubernetes was the future. But nowadays Node has stabilized, React and webpack have been comfortably dominant for years, Docker’s model of containers won out a long time ago and Kubernetes is there if you need it, but is mostly useful for people building a PaaS.

If people don’t want to learn these things, then fine, but I do wish the overall mood here would update to reflect the fact that we are now living in a much more stable time than when these memes were created.

Re:Feynman: I am burned out and I'll never accomplish anythi... by majewsky on Sunday April 25, 2021 @02:28PM (#26935214)
New hypothesis: People like to move on to the next thing once they have mastered the current thing, so in a weird co-evolution, those tools-of-the-year evolved to not be masterable and thus people haven't been able to move on yet.

Also, you shall shortly be smited for not having included Rust in that list. :)

Re:Feynman: I am burned out and I'll never accomplish anythi... by ex_amazon_sde on Sunday April 25, 2021 @01:32PM (#26934588)
> we are now living in a much more stable time than when these memes were created

Quite the opposite. The cambrian explosion of tools and SaaS is getting faster and the average useful lifetime of anything released today is getting shorter.

Re:Feynman: I am burned out and I'll never accomplish anythi... by schindlabua on Sunday April 25, 2021 @07:19AM (#26931908)
Hah sounds like you described me perfectly. But I do have to say, ever since I'm programming full-time I seem not to be able to just code for fun anymore.

I used to program all day long.. and I guess I still do, but now it's for work, and after 8h of work I'm just done, you know? The "stuff I want to look at" list is growing longer and longer and there's no hope of me ever catching up.

(I can't imagine how it is for people with kids. How do you get anything done in your private life at all?)

Re:Feynman: I am burned out and I'll never accomplish anythi... by CalRobert on Sunday April 25, 2021 @08:51AM (#26932318)
Dad of two - we basically don't, if I'm honest. I've had to give up on an immense number of things and while lots of people tell you "having kids is expensive" very few will tell you that the most expensive part is the opportunity cost. I have so many things I want to do and it hurts, almost physically, to watch other people doing them because they could hack on stuff after work while I had to deal with making sure a 3 year old wiped their butt OK or get yelled at because they actually wanted a _different_ spoon.

Now, it turns out my career was lacklustre, so no great loss, and I'm sure having older kids is different than mine (1 and 3) but right now I get make 40-60 minutes a day to do what I want. Not much time for a side gig. I'm writing this right now with my kid watching a cartoon next to me when I originally wanted to work on some UI stuff for a side project, because I'm exhausted. Speaking of the above, she's scratching her butt so maybe we need to discuss the importance of thorough wiping.

Re:Feynman: I am burned out and I'll never accomplish anythi... by earhart on Sunday April 25, 2021 @09:05AM (#26932393)
FWIW - in my experience, if their demands upset you, it’s not going to go well (you’ll get more demands and feel more exhausted); if you laugh at the ridiculousness of the situation, remind them to ask nicely, and still help them with what they need/want, you’ll be much less stressed, you’ll be teaching them that being unpleasant doesn’t bother you and doesn’t help but does have the natural consequences of slowing down what they want, and you’ll be teaching them a better way of being; at least with my own kids, they picked up on it pretty quickly, and they started being much more fun to hang out with.

(Good luck!)

Re:Feynman: I am burned out and I'll never accomplish anythi... by CalRobert on Sunday April 25, 2021 @11:57AM (#26933699)
True, and oddly given my comment, I adore them and love being their dad. But they destroyed my old life so I've had to build a new one around them. The pandemic hasn't helped.
Re:Feynman: I am burned out and I'll never accomplish anythi... by pbronez on Sunday April 25, 2021 @01:13PM (#26934404)
I’m right there with you man. Same ages even.

The first few years of kids were infuriating and terrifying. I built my career by constantly exploring and learning after hours. Kids made that impossible, and that made me frustrated (because there’s SO MUCH I want to do besides diapers) and scared (because how can I maintain my career without learning).

It’s somewhat better now. I’m seeing them grow and can believe that this stage of life won’t last forever. I’ve managed to keep up with work by increasing efficiency during core hours, though I still look forward to getting back on the wagon with side projects when I can.

Here are a few beliefs that have helped me build & maintain a positive mind set:

- An engaged parent is priceless to a child. They desperately need you and you are irreplaceable. There is huge value in showing up for them, it’s just very different from your prior experience.

- COVID is terrible and we’re all struggling to get by. You must ruthlessly prioritize where you spend mental, physical, fiscal and chronological resources. Nobody expects you to maintain the same pace as before; we are all suffering through this together.

- Family and Profession both benefit from strengthening your mind, body and habits. Level up your time management game to improve exercise and diet. When the kids get easier, you’ll have more capacity for professional endeavors than before.

Re:Feynman: I am burned out and I'll never accomplish anythi... by CalRobert on Sunday April 25, 2021 @05:56PM (#26937089)
All true, and there are days I'm writing posts more like yours than mine. But today was hard.

A lot of it is fear - I honestly don't know if I can compete with people who can work all weekend or put in late nights.

Re:Feynman: I am burned out and I'll never accomplish anythi... by seer on Monday April 26, 2021 @02:00AM (#26939675)
Having your own time to try out whatever you like is immensely helpful for a developer, thats why at the companies I work for I campaign (successfully for now) to have “learning days”. You do whatever coding / learning you want, but you are obligated to share your discoveries with your colleagues. Companies benefit with more motivated, engaged and loyal employees, and you get to progress as a dev.

Sometimes managed to convince people to do this once a week, sometimes once a month, or somewhere in between. For example now I’m doing it once a fortnight.

Everyone recognizes that learning is an integral part of the profession, so I think companies should really accommodate that, rather than expect people to carve out personal time for it.

Re:Feynman: I am burned out and I'll never accomplish anythi... by SanderNL on Sunday April 25, 2021 @10:18AM (#26932872)
As a father of two I can relate with some of the answers here, but I'd like to add an alternative viewpoint here just to give young dads some glimmer of hope.

For the first and a half or so we've had a difficult life with the first kid. To be honest, there is just no way around it. Especially your first kid. The SEAL-level sleep deprivation and complete lack of "me time" really takes it toll. I'm also not the type of dad to let mom handle everything. She also has a career and, to be honest, a better one too. So I was regularly up at 2AM, 4AM and 6AM. Then a workday. :) (If you have young parents around you, please try to be compassionate.)

But for some reason I'm more effective now than I ever was. I can remember "not having enough energy" to complete some project for as long as I am alive - even when I was alone. It is clear to me this had very little to do with my actual life and more with my attitude. My life is more complex and demanding than it used to be but somehow I still managed to lose 60lbs, learned to read Latin, took guitar lessons and started a business. Every single one of these items never would have left my todo list without my family. They have endowed me with a keen sense of priority which made planning my life quite easy to be honest.

I know those achievements I listed are not that hard, but for me they are significant. I've found most things in life don't require your eternal soul as a sacrifice, they just take (usually a lot of) time and so you need to be strategic about your goals. Take it slow, don't burn yourself out, but also don't stray from left to right unnecessarily. Keep your eyes on the ball. Don't shift from "write a compiler", "read latin", "write toy OS", "build cpu from nand-gates" to "learn german" and back to "learn to draw realistically" in a month. Focus. A dirty word, I know, but a powerful one.

Re:Feynman: I am burned out and I'll never accomplish anythi... by Iv on Sunday April 25, 2021 @08:30AM (#26932221)
> How do you get anything done in your private life at all?

We don't. It sucks. And if we ever mention the impact of having a kid on our quality of life it makes us bad parents and terrible persons.

I should have resisted more about having a kid. I am happy we made only one.

Re:Feynman: I am burned out and I'll never accomplish anythi... by SamPatt on Sunday April 25, 2021 @08:53AM (#26932327)
Is your child still young?

Because as children age you're able to reclaim some of your life back. At least, if you don't fall into the trap of them living a packed schedule themselves.

I've got three, the eldest is now old enough to babysit the rest if needed. With a consistent bedtime and family nearby to care for them on occasion, my wife and I do get some spare time. We mostly choose to spend that together but we can pursue our own hobbies also.

Re:Feynman: I am burned out and I'll never accomplish anythi... by Iv on Sunday April 25, 2021 @08:59AM (#26932345)
7. Yes I know, it gets better. That's still going to be 10 years off my already too short life.

And how I envy the idea that living close to family would save you time instead of draining some.

Re:Feynman: I am burned out and I'll never accomplish anythi... by MattRix on Sunday April 25, 2021 @12:43PM (#26934111)
As a parent of two kids who are both past that age, I feel like your perspective on this is all wrong. You’ve given 70+ years to someone else. And you haven’t lost those years at all, since presumably you also have a meaningful day job (and if not, that’s not your child’s fault).

It sounds like you and your partner should work on splitting the load more. You don’t need both parents to look after the kid constantly, you can often take turns. Kids can also watch TV and all kinds of stuff. They also have earlier bedtimes, giving you even more free time.

Re:Feynman: I am burned out and I'll never accomplish anythi... by Iv on Monday April 26, 2021 @01:19AM (#26939445)
> since presumably you also have a meaningful day job (and if not, that’s not your child’s fault).

Turns out that you need 3x the money when you need to feed 3x the people, so no, my job is not as meaningful as it could be and while you can't say it is my child's fault, that certainly caused my family status.

Re:Feynman: I am burned out and I'll never accomplish anythi... by piva00 on Sunday April 25, 2021 @08:05AM (#26932098)
I don't know how old you are and for how long you've been programming but your experience mimics my progression.

I started playing with some kind of programming when I was about 9-10, BASIC on a MSX and later HTML that opened up me for web development on ASP 3.0 and PHP at the time.

It was a very big hobby when I was young and turned into a career when I was pretty young, about 16. It stayed as a hobby for another 9-10 years but I got to the point where thinking about programming outside of my paid time was exhausting...

It helped me tremendously, I would never have a career if I wasn't extremely curious about programming for 15-20 years of my life, I just got to the same stage as you did.

There is an evergrowing and endless list of things I want to learn and experience, staying on top of the latest tech on my own free time is just too costly nowadays. I still do it, when I need it for work and during work hours, and all the accumulated experience helps me to figure out things way faster so I don't need to use my free time to catch up. Increasingly rarely I get that curiosity again, to use my free time to study something work-related. When I do it nowadays it's for much larger and abstract concepts such as organisation culture and change, team spirit and building trust and effective communication.

I noticed that the past 5 years of my career has been much more about the human and social aspect of work rather than technical ones. And I didn't try to become a manager, tech lead or product owner, it has just attracted me as I think I always got attracted to gaps of efficiency at work. It seems that seeing this human aspect of work brought me closer to more human aspects of life (arts, music, sociology) and a bit away from controlling the machine I learned when I was a kid.

Re:Feynman: I am burned out and I'll never accomplish anythi... by jameshush on Sunday April 25, 2021 @09:27AM (#26932530)
This resonates with me too. Instead of spending 2 weeks shaving off 100ms in a request I’ll spend two weeks shaving off 3-4 days worth of time for a request from the marketing or sales team by figuring out a better process for them to request changes on the management side.
Re:Feynman: I am burned out and I'll never accomplish anythi... by pomian on Sunday April 25, 2021 @10:55AM (#26933190)
An aside for future or present dad's (and all Parents.) There is so much joy and learning that happens with raising kids, that I think the secret is not fight it, but enjoy it. Almost sounds cliché, but embrace the experience. From the very beginning to when they are adults, to experience a window into your own life, a window into the world. These windows allow you to explore your surroundings and relationships with a different eye, with more understanding. The best way to get into that zone, is to forget your own desires for a bit, forget your schedule. Just live in the moment of the kid (s). After you relax a bit, and surrender to their schedule, then all of a sudden you find opportunities for your time in between. But with passion and effectiveness. As mentioned below in a comment, you can be more focused, I believe because you are more relaxed. If you fight all the time to make 'your' schedule fit, you become frustrated. As you let go, you find a schedule that works, and with enthusiasm for that time to create and build. Cherish the moment with the kids, everything from diaper changing to eating, because they are a reflective window on your own soul, and a fresh mirror to the insanity if the world around you.
Re:Feynman: I am burned out and I'll never accomplish anythi... by moldavi on Sunday April 25, 2021 @11:38AM (#26933549)
How do you let go of the things you want to do? I like to think that my side project is something only I could do, that the world needs but doesnt know it yet... so the thought of giving it up sends chills through me.

You seem to have a really nice outlook on things so I'd really appreciate any hints on how to reconcile this and get to where you are! (I dont have any kids yet)

Re:Feynman: I am burned out and I'll never accomplish anythi... by ativzzz on Sunday April 25, 2021 @12:01PM (#26933727)
For the vast, vast, majority of us, nothing that we do individually is important. Sure we work and provide some value to somebody somewhere, but if we didn't exist or didn't do that job, the world wouldn't be any worse off.

If you think otherwise, it's probably your ego lying to you.

Re:Feynman: I am burned out and I'll never accomplish anythi... by anonymouse008 on Sunday April 25, 2021 @05:40PM (#26936945)
And even still for those “others” - nothing individually they do is that important, it’s how the team they’ve assembled operates when the leader isn’t around... and as much as a belief system can anchor people into habits and behaviors, it’s still the deputies or vps of a cause that must maintain consistency in purpose...

That’s a long winded way of saying, no ones individual contributions are that important... it’s only through the concert of others that any person reaches those heights.

Re:Feynman: I am burned out and I'll never accomplish anythi... by MattRix on Sunday April 25, 2021 @12:48PM (#26934161)
You can still do side projects when you’ve got kids. You just have to treat your priorities seriously, which usually means having to give up most of the netflix/social-media time. You also have to realize that in a two parent household, you don’t usually need both parents looking after the kids, and it’s better for both of you if you take turns (for your sanity AND for your free time).
Re:Feynman: I am burned out and I'll never accomplish anythi... by moldavi on Sunday April 25, 2021 @03:06PM (#26935583)
That sounds pretty promising. Does taking turns work well in practice?
Re:Feynman: I am burned out and I'll never accomplish anythi... by MattRix on Sunday April 25, 2021 @06:06PM (#26937167)
It can, but it really depends on the personalities of you and your partner. It works best if your partner also has some independent work they need to get done (or enjoy doing, ex a hobby).
Re:Feynman: I am burned out and I'll never accomplish anythi... by asoneth on Sunday April 25, 2021 @11:29AM (#26933475)
In talking with fellow parents of young children the biggest variable seems to be whether there is a stay-at-home parent, live-in relative, or nanny who can help with the recurring labor required to run a household like cleaning, cooking, shopping, bills, repairs, yard work, taxes, etc. Otherwise that work piles up until after the kids go to sleep and on weekends.

You can sacrifice sleep, but that's not sustainable for everyone.

My partner and I block out a couple hours each week for the other to wrangle the kids so we can work on our various hobbies/projects. I've found that when I work on my computer-based hobbies I usually end up frittering away half the time reading online news whereas outdoor construction, yard, and bike projects don't seem to suffer from that so they end up making more progress.

Hopefully in ~5 yrs I can actually do some of these things with the kids and it'll get a little easier.

Re:Feynman: I am burned out and I'll never accomplish anythi... by motiejus on Sunday April 25, 2021 @08:06AM (#26932101)
I do have small children, and, for like many others, I get to do my things when everyone are asleep. You seem to have interest (which means you have energy), but the problem seems to be finishing. I have the same issue.

I am maintaining a list of them in a notebook, and am trying to limit the number of them to not more than 8-10 at the same time. And I can only start a new one if I finish an old one.

Everything in that list is a task with a clear Definition Of Done, so I know when I can cross them out. Realistically, each of them would take from 4 hours to a week (assuming full-time). Over the years, many things got done. Slower than I'd like, surely, but I think a SaaS business will come out of those TODOs in a few years.

This way, things are moving forward (since I must complete something), but I am allowing myself freedom to switch effortlessly. That motivates to do *something* when the hour comes. :)

Re:Feynman: I am burned out and I'll never accomplish anythi... by mehphp on Sunday April 25, 2021 @08:52AM (#26932323)
You either don’t or you have to sacrifice sleep, leisure time or something else.

I have a full-time job, two-kids and a small SaaS side-business and it is all consuming.

I either get up early or stay up late to work on my own stuff.

The goal is to transition into working for myself but that is going slowly and I’ve been at it for a while so I’m feeling a bit burned out lately...

Thoughts of just selling the damn thing and just working my 9-5 are becoming more frequent...

Re:Feynman: I am burned out and I'll never accomplish anythi... by nthj on Sunday April 25, 2021 @10:45AM (#26933110)
I don’t mean to stick my nose in, but seeing as we are on HN: I keep hearing the market is pretty good for capital lately, have you explored raising a round to accelerate dropping the 9-5?
Re:Feynman: I am burned out and I'll never accomplish anythi... by mehphp on Thursday April 29, 2021 @04:41PM (#26986427)
My current side project is too small to consider seed capital. It's too niche.

It has replaced about a third of my income so the goal is to start another project soon.

Re:Feynman: I am burned out and I'll never accomplish anythi... by noisy_boy on Sunday April 25, 2021 @07:54AM (#26932049)
Speaking as a person with kids, I get into many things but with exceptions of very simple/small stuff, mostly nothing gets done and there are lots of stuff in various stages of incompleteness. It also depends on your level of procrastinating. Doing all these things also has an effect on sleep because I only get time once everyone has gone to bed.
Re:Feynman: I am burned out and I'll never accomplish anythi... by hibbelig on Sunday April 25, 2021 @08:38AM (#26932262)
I found that the kids running to you and jumping up and down and demanding your attention is an extremely quick way to reset. After an hour or so you completely forgot about work.
Re:Feynman: I am burned out and I'll never accomplish anythi... by fulafel on Sunday April 25, 2021 @08:59AM (#26932346)
Get a job where you can use part of your time to look at cool stuff. With some luck you may already have one.
Re:Feynman: I am burned out and I'll never accomplish anythi... by Netcob on Sunday April 25, 2021 @09:24AM (#26932507)
When things are kinda slow and aimless at work, that's when I really start to do some projects at home again. But to be honest, it all comes and goes.

But yeah, right now I'm both single and in lockdown, and if it was any other way I wouldn't spend a week just programming some sort of custom build/deployment agent.

With kids? One of my colleagues once told me that once you have them, you'll suddenly be out of time you didn't even know you had in the first place.

Re:Feynman: I am burned out and I'll never accomplish anythi... by stefandesu on Monday April 26, 2021 @01:59AM (#26939669)
Ever since I started a "real" job in programming a few years ago, I've had such a hard time doing anything programming-related on the side. Which is such a shame since I have so many ideas. That's why I've been thinking of switching to a different field of work, even if it pays less. Ideally something where I don't really use computers at all. Not sure what that could be though.
Re:Feynman: I am burned out and I'll never accomplish anythi... by fuzzy2 on Sunday April 25, 2021 @07:25AM (#26931926)
Hm, it’s different for me. Since at work I don’t really do the Continuous Integration/Delivery stuff (or anything with “real infrastructure”), I find it very enjoyable to fiddle with it at home. There’s no pressure to accomplish anything and I can just leave it alone for months or even years before coming back to it.

There’s a nice side-effect, too: The CI definition documents how to compile the project. I recently dug out an old LaTeX “project” and there was nothing, no Makefile or anything. Had to look up everything again to get it to run (with XeLaTeX and Biber).

Re:Feynman: I am burned out and I'll never accomplish anythi... by spion on Sunday April 25, 2021 @07:35AM (#26931966)
It also really depends on what you find cool, there are different ways to look at things. For example if I think of pipelines as these execution graphs that run on their own and make sure your artifacts end up in the right place, then its really fun. CI systems that visualize this make it even more interesting.

A little combination of the right personal interests and perspective goes a long way towards building up resilience to deal with the ugly bits.

Re:Feynman: I am burned out and I'll never accomplish anythi... by Netcob on Sunday April 25, 2021 @09:29AM (#26932547)
I had this interesting experience back in university. We were doing some simple web service project in pairs, and it consisted of a program and some devops stuff. My partner in that project turned out to have skills that exactly complemented my own - he had trouble with the algorithmic stuff that I thought was trivial, yet he easily stitched all the services together by editing some configuration files before I even understood what any of them were for.
Re:Feynman: I am burned out and I'll never accomplish anythi... by NBJack on Sunday April 25, 2021 @11:32AM (#26933501)
I would caution against trusting your build process definition to hold up to time. It's definitely better than nothing.

Even within the last few years of my job, we've had numerous disruptions to our automated builds due to everything from repo changes to version bumps in our fundamental deploy tools. I've got a self-assigned action to take just tomorrow due to how a change in how secrets management has now disrupted our performance testing process available to devs. Anecdotally, it seems more and more that as newer build tools move forward, they rarely seem to prioritize compatibility with existing methods (I'm looking at you, k8s, and your API versioning; "where feasible" turned out to be a loose definition).

Re:Feynman: I am burned out and I'll never accomplish anythi... by fuzzy2 on Sunday April 25, 2021 @01:26PM (#26934534)
It may not run to completion in the future, that’s true. However, if it’s something as simple as a shell script or a shell command list, it’s at least relatively transparent.

Unlike, say, tasks on Azure DevOps. Not a fan of those.

Re:Feynman: I am burned out and I'll never accomplish anythi... by majewsky on Sunday April 25, 2021 @02:37PM (#26935292)
> There’s a nice side-effect, too: The CI definition documents how to compile the project.

Okay, sure, but that's not an argument for CI. That's an argument for a Makefile.

In fact, I find myself going back to Makefiles all the time not in spite of all these specialized build tools, but because of them. Even if the steps are straight-forward for someone who's familiar with the tools, just having a Makefile there in the repository root will be helpful documentation to help someone new (or myself in 2 years) get started with how to build the stuff. For example, for LaTeX, it could be something like:

  build: slides.pdf handout.pdf

  %.pdf: %.tex
    pdflatex $*
    pdflatex $*
Re:Feynman: I am burned out and I'll never accomplish anythi... by sqqqqrly on Sunday April 25, 2021 @10:17AM (#26932861)
I love your "it adds up" comment. I will steal this. It is very true for me as well.

Several years ago, I started using make extensively. Not to compile, but to automate. Make understands failing and dependencies. Also, bash and zsh have wonderful completions.

I used to write a bash or python script to do this. They often turned into their own projects and were painful to document.

A great make example (thanks Aaron) is on YT: Using Terraform, Packer, and Ansible Together": https://youtu.be/pkEezNSFWtA. Aaron automated it all with make.

Ya, I know... Make was created in 1976 to compile Fortran. It's old school. I love it.

I use it to test my kubernetes CSI driver on 5 versions of k3s with a single make call. That call is the tip of a dependency tree. The leaves end up being a line or three of bash running Ansible, Go, Helm, etc, but could be anything.

Documentation is simple because the make dependencies are so easy to follow. They are much of the documentation. The docs are correct because we execute them.

Re:Feynman: I am burned out and I'll never accomplish anythi... by teraku on Sunday April 25, 2021 @06:45AM (#26931758)
Your cognitive workload is too high.

There are three forms of cognitive workload: Intrinsic, External and Germane.

Intrinsic is things you just *know*. How to write a class in java, how to write a query in SQL, ...

External is stuff you only need occasionally, and need to look up every time: How to deploy to X, how to set up CI/CD, ...

Germane is context knowledge. Usually referred to as business knowledge.

You want to keep external cognitive load a minimal as possible. You can really dig deployment and stuff, and then this becomes your intrinsic cognitive workload and coding becomes more or less external, but for somebody who just likes to code, it's best to once do a deep dive to deployment logics, write a scaffold and stick with an automated version forever.

Re:Feynman: I am burned out and I'll never accomplish anythi... by Netcob on Sunday April 25, 2021 @09:52AM (#26932695)
I tried that, and at first it almost worked. But that scaffolding just kept breaking. TeamCity doesn't want to execute my unit tests since I've upgraded to .Net 5.0, I still don't get how that docker "latest" tag works, my Ubuntu-TeamCity-Agent refuses to acknowledge it's running in Linux and that it has access to docker. After a while I realized I was wasting precious free time.

But I agree about the cognitive load. I have ADHD so in order to qualify as "high functioning" I need to continuously improve my coping strategies when it comes to keeping that load low. I write everything down. My thought process is anchored in long text files with hundreds of indented lists. My programming style is super verbose and perhaps a bit enterprisey, but each class does one thing and I always spend extra effort making sure the things I can re-use work well enough that it's safe to forget how they work.

Oddly enough, my reserves are much bigger when it comes to programming. I remember having trouble with some linear algebra homework - it involved a lot of matrix calculations, and my results just didn't make sense, and I couldn't focus long enough. So I programmed it instead, and it worked immediately and solved my homework. I think it was about change of basis, which actually got me side-tracked because I realized the same code could be used for a simple 3D renderer. And that's what got me into computer graphics. What was the topic again?

Re:Feynman: I am burned out and I'll never accomplish anythi... by yonaguska on Sunday April 25, 2021 @01:32PM (#26934582)
I also programming my linear algebra homework assignments, and then nearly failed the class. Didn't really learn it until I had to use it for more interesting combinatorics.

Also adhd, and our coping mechanisms are similar.

Re:Feynman: I am burned out and I'll never accomplish anythi... by justinclift on Sunday April 25, 2021 @06:54AM (#26931810)
> it's best to ...

What are you basing this opinion on? :)

---

As an aside, the blog in your profile link ( https://teraku.me) has an invalid HTTPS cert. Seems to be for a different domain.

Re:Feynman: I am burned out and I'll never accomplish anythi... by wizzwizz4 on Sunday April 25, 2021 @07:57AM (#26932062)
Once you're connected, it seems to serve the right cert for some reason. Badly-configured shared hosting?
Re:Feynman: I am burned out and I'll never accomplish anythi... by teraku on Sunday April 25, 2021 @01:58PM (#26934867)
Moved domains a while ago, but forgot to fix it at HN. Fixed it now
Re:Feynman: I am burned out and I'll never accomplish anythi... by nickthemagicman on Sunday April 25, 2021 @08:09AM (#26932115)
I don't know why you're being devoted, this is interesting.
Re:Feynman: I am burned out and I'll never accomplish anythi... by Balgair on Sunday April 25, 2021 @11:48AM (#26933629)
> Once in a while someone will ask me "how do you know all these things?" and my answer has always been "I don't know that much, I just randomly got interested in this particular topic and decided to play around with it". Over the years/decades, that adds up!

"Don't become a well-rounded person. Well-rounded people are smooth and dull. Become a throughly spiky person"

-Bruce Sterling

Re:Feynman: I am burned out and I'll never accomplish anythi... by rhn_mk1 on Sunday April 25, 2021 @07:17AM (#26931901)
There is a sweet spot somewhere between the extreme of not using pre-built tools and drowning in them.

I've been following a similar path: automation and testing give me certainty and peace of mind when I'm working on bigger teams, so they should also improve my personal projects, right?

Well, the difference is that my personal projects are used only by me in limited ways, and I also don't have to worry that someone will break the build when I'm not looking. So the extra work making things super safe would not pay off that much.

Except when I feel I'm losing grip on what I'm doing, either from having to cover many use cases, not being experienced, unstable dependencies, or risk of data loss. That's when I set up CI pipelines for my personal projects.

Re:Feynman: I am burned out and I'll never accomplish anythi... by ryandrake on Sunday April 25, 2021 @09:15AM (#26932447)
Every third party tool (or library dependency, by the way) is something that will have to be well understood, maintained and fixed when broken. Which is why I try to avoid them for the most part in my personal and work projects.

When someone at work says "Hey, lets just use Xyz package I found online! It does just what we want!" you need to ask: Who fixes it when it causes a problem that stops us from shipping? Who does the security audit? What data does it collect, and to where does it send that data? What will adding it do to our software's performance? Who decides when to update it to the next version and verifies compatibility? Is its license compatible with our workflow/software?

All of a sudden, people are less excited about that great doodad they found on StackOverflow! I'm always troubled by the cavalier attitude about relying on external tools and library dependencies. Yolo just pull it in! In some cases it might be the right decision, but not always. And, avoiding third party stuff is not always just blind NIH mentality: There are costs to depending on someone else for your project.

Re:Feynman: I am burned out and I'll never accomplish anythi... by nly on Sunday April 25, 2021 @01:57PM (#26934860)
The cost of the alternative : doing it yourself, is also often underestimated.

"It's just a simple JSON parser, we can write our own" is a dismissal that can sink you down a rabbit hole of bugs and future technical debt.

The most important thing about using a third party library is that its easy to replace with another one if it doesn't work out.

Don't let third party data types or dependencies leak out of the module where you use them, for example via an API, and things go a lot smoother

Re:Feynman: I am burned out and I'll never accomplish anythi... by shawnz on Sunday April 25, 2021 @10:48AM (#26933135)
I strongly agree that bringing in new dependencies is not a small consideration. But at the same time, third-party dependencies will always be necessary and by carefully choosing those that are best suited for the job, you might be able to get a net reduction in complexity.

Old, established third-party dependencies are not necessarily better for the job than new, trendy dependencies. Their entrenched nature can be an advantage and also a limitation. And when you roll it yourself, then that is of course the newest and least established solution of all.

Re:Feynman: I am burned out and I'll never accomplish anythi... by goguy on Sunday April 25, 2021 @10:34AM (#26933004)
If you use third party libs with the appropriate licence then your the one that fixes it, just the same as if you rolled your own.
Re:Feynman: I am burned out and I'll never accomplish anythi... by zajio1am on Sunday April 25, 2021 @12:07PM (#26933776)
If you rolled your own, you invest your time to learn about the problem domain. If you use third party libs, you invest your time to learn about its interface/behavior. That is usually much more ephemeral knowledge. It is good tradeoff if the library does some heavy lifting, but that is not always true.
Re:Feynman: I am burned out and I'll never accomplish anythi... by temporama1 on Sunday April 25, 2021 @09:30AM (#26932553)
> I'll come up with my own tools. They won't be great, but...

They WILL be great. They'll do exactly what YOU need them to do, and nothing else.

Software at present is a disaster, partly because we're just piling on complexity all the time, thinking only of the benefits and never of the huge downsides ("fighting with tools").

Re:Feynman: I am burned out and I'll never accomplish anythi... by shawnz on Sunday April 25, 2021 @10:58AM (#26933228)
Everyone who develops a tool did it because they thought their tool would be great, and do exactly what they needed better than everything else that existed previously.

Everyone has slightly different needs, so that is exactly what creates the complexity disaster you are talking about. I think that being more willing to re-use the existing work of past developers actually works to reduce this problem.

Re:Feynman: I am burned out and I'll never accomplish anythi... by Netcob on Sunday April 25, 2021 @10:00AM (#26932741)
That's true, and personally I'd much rather fight with my own code since I usually 100% understand what it does.

In a team of course it would be different - unless I perfectly document my own code, my colleagues would be better off with something they can actually google.

Re:Feynman: I am burned out and I'll never accomplish anythi... by ta1234567890 on Sunday April 25, 2021 @10:55AM (#26933187)
Reminds me of this slime mold video: https://youtu.be/GwKuFREOgmo

The mold “operates” in roughly two modes: exploring and exploiting. It explores to find the food and then it exploits the best paths to the food to consume it.

I feel our minds work in a similar way, we explore when learning new stuff and then we exploit when using what we learned to accomplish something.

Probably most of the work that majority of people do is mostly exploiting previously learned stuff, with some limited exploration sprinkled into it every now and then.

Re:Feynman: I am burned out and I'll never accomplish anythi... by mancerayder on Sunday April 25, 2021 @06:20PM (#26937272)
I'm struggling with this. Manager managing more and more people. Old school on premmy turned AWS and Kubernetes while I was already manager a few years ago, making it hard to learn first principles of k8s and Docker.

Now here I sit, Sunday, staring at a terminal window to force myself to set up a ruby on rails app on Docker so I can shove it into a EKS setup I will set up with Terraform.

Could I do this at work? Yes. Except No. In the hours of 'free time' between meetings and other work, I feel too mentally foggy to play and learn new things.

Please.Help.Me.

I think I just need a vacation.

Re:Feynman: I am burned out and I'll never accomplish anythi... by bredren on Sunday April 25, 2021 @12:17PM (#26933872)
I had the opposite happen. I had been building servers for my (largely Django-based) projects using long txt files from old digital ocean tutorials I had customized.[1]

I fought docker and all of that but had some time last year between gigs and spent a few weeks examining the state of things and experimenting. The most influential of works were recent guides by Michael Herman. [2]

In the process I learned to set up not fully reproducible server setups but branch and commit message-specific CI/CD workflows using Github Actions.

It turns out it is like most things, hard and complicated until you know and have living samples and then it seems relatively straightforward and efficient.

GA is still fairly young and there is still opportunity to create and share flourishes of art in devops there.

[1] https://www.digitalocean.com/community/tutorials/how-to-set-...

[2] https://testdriven.io/blog/deploying-django-to-digitalocean-...

Re:Feynman: I am burned out and I'll never accomplish anythi... by shawnz on Sunday April 25, 2021 @11:20AM (#26933400)
Is this really a matter of tooling versus programming, or is it a matter of wanting to create rather than wanting to re-use the work of others?

Even purely in code, you always (EDIT: usually) have the choice of implementing a solution yourself or finding the work of someone else, packaged into a library, which solves the problem for you.

Implementing the solution yourself may be the most satisfying way to scratch that instantaneous creative itch. But does it create the end result which you can be most proud of or satisfied with?

Re:Feynman: I am burned out and I'll never accomplish anythi... by klyrs on Sunday April 25, 2021 @11:46AM (#26933606)
> Even purely in code, you always have the choice of implementing a solution yourself or finding the work of someone else, packaged into a library, which solves the problem for you.

In my experience, this isn't remotely true, especially if you're constrained to use a particular language and don't want to pay the overhead of wrapping another language

Re:Feynman: I am burned out and I'll never accomplish anythi... by localhost on Sunday April 25, 2021 @10:56AM (#26933194)
I can't agree more! I make the same argument, but much less eloquently than you did "I just randomly got interested in this particular topic and decided to play aorund with it".

Using the same motivation: "let's play with things and see what I can figure out", I created a video [1] where I figure out what I need to do to create a silly version of the cat command that prints text out upside-down.

I did it for a bunch of reasons: figuring out how to replace system commands, learning a bit more about Unicode, trying out our C extension for VS Code, learning the process for building YouTube video (which was a very deep rabbit hole) ... all to produce a single video. It was fun, scratched an itch that I've had for a while that I'll continue to work on.

[1] https://www.youtube.com/watch?v=OJ2ivP2llFs

Re:Feynman: I am burned out and I'll never accomplish anythi... by void_mint on Sunday April 25, 2021 @12:29PM (#26933991)
For me, true programming joy comes from not having to look at docs. To be able to just write code for long periods of time, without running into something weird happening with a library or tool is the "zen" feeling that I hear lots of others talk about.

At work, and in this domain:

> I wanted to learn some new frameworks and concepts to help with that, and I decided to make my personal projects a bit more "professional". Use continuous integration, focus more on web stuff, build and automatically deploy containers and so on.

It's all docs. It's all "This thing was supposed to happen but ____ didn't do what I expected". Fighting with tools and configuration and triggers and stuff like that is the opposite of zen.

Re:Feynman: I am burned out and I'll never accomplish anythi... by WrtCdEvrydy on Sunday April 25, 2021 @12:22PM (#26933925)
> Big mistake. I don't want to spend my leisure time fighting with tools, debugging build processes that break all the time, make sense of docker's tagging system and so on. I don't mind programming all day, because I love programming, but I do mind working all day.

Yeah, I've basically moved on from anything that isn't Caprover + Portainer. Fuck the rest.

Re:Feynman: I am burned out and I'll never accomplish anythi... by utxaa on Sunday April 25, 2021 @02:56PM (#26935470)
this is why if you don't enjoy leet puzzles, you don't learn anything, or can't even do them.
Re:Feynman: I am burned out and I'll never accomplish anythi... by MeinBlutIstBlau on Sunday April 25, 2021 @10:38AM (#26933044)
Quit normalizing work in your free time for this field. There is no other field that has such a brash concept that we all should work for free to do this. We have a skill. If an employer needs a highly specialized version of it, they better pay to train you to learn it.