Live data from Hacker News

The Grug Brained Developer

grugbrain.dev

281–290 of 394 posts

Re: The Grug Brained Developer

#281
post #87

> sometimes probably best just not tell project manager and do it 80/20 way. easier forgive than permission, project managers mind like butterfly at times overworked and dealing with many grugs. In my experience, I have to fight to keep my devs from over engineering their solutions and just get something going. I'd love to work with a dev who's happy to think about how to most quickly deliver value and who's willing…

I think I have a near-pathological experience of coding these days that just so happens to make me the exact kind of developer you want: 1. I still want to produce excellent code that will deliver value, work predictably, be fast, and be robust against future grugs. I am driven to do this by forces I don't understand myself. 2. I also feel a deep dread of being stuck with a piece of code for any longer than absolutel…

Imagine going to a master craftsperson, and telling them you want them to give you the 80% experience for 20% of the price.

How to do that without being disrespectful?

How come programmers accept this kind of disrespect for their craft? Aren’t they supposed to be the masters, the Hattori Hanzos of program code?

Re: The Grug Brained Developer

#282

Earlier quoted context omitted.

I might be willing to give this a shot. I appreciated the charm and humor in the original, but especially for readers who don't have English as a first language it probably gets in the way of the message.

Here are the first few sections: https://gist.github.com/raphlinus/f6b34f85d63c4b73a0242481ed... I'll keep going if there's positive feedback, delete it if the author doesn't appreciate it.

This is so much easier to read, thank you

Re: The Grug Brained Developer

#283
post #87

> sometimes probably best just not tell project manager and do it 80/20 way. easier forgive than permission, project managers mind like butterfly at times overworked and dealing with many grugs. In my experience, I have to fight to keep my devs from over engineering their solutions and just get something going. I'd love to work with a dev who's happy to think about how to most quickly deliver value and who's willing…

It's a question of incentives and accountability. PMs aren't usually accountable when their shortcuts come and bite the team further down the line. Developers feel the pain instead. PMs won't be honest with the business that they sold an undercooked product. Need to suddenly scale up that "pragmatically" designed database? I know in my heart that too many PMs will _never_ manage expectations with their superiors if t…

It's almost like there might be better alternatives than command-and-control structures when building software.

Re: The Grug Brained Developer

#284

Earlier quoted context omitted.

microfront ends work well for self contained components that need to be used in multiple pages, they don't even need to have a "separate" backend, as long as there is an area or code file for the backend code that deals with whatever data the microfront end needs.

In such a component-oriented circumstance, what is the motivation for choosing a “microfrontend” approach instead of, say, a component?

The longer you are a developer, the more you see fads a cylic just like anything else in this world. rebranding happens every 5 to 10 years for most things.

Re: The Grug Brained Developer

#285
post #95

Earlier quoted context omitted.

Whoa now, I was with you until you seemed to imply that "simple" software means shitty code. Simple in this context means a solution with as little complexity as possible. Hopefully written elegantly and carefully, with lots of thought for future maintenance and readability. Maybe you use a 10-year-old, constantly maintained and thoroughly tested library to do 90% of the work instead of writing everything yourself. W…

> Hopefully written elegantly and carefully, with lots of thought for future maintenance and readability. Those are fine things to value even if they are highly subjective. You might think it’s easier to read a while loop with a handful of mutating variables and a few branches. I might disagree. I think it’s easier to read an accumulating function that uses traverse. It’s wishful thinking that we should both hold the…

[deleted]

Re: The Grug Brained Developer

#286
post #259

Earlier quoted context omitted.

That's because such developers know that they won't have to maintain such code. They will probably be gone (switch to another company) in 1 or 2 years.

I think you have it backward. I'd much rather maintain pristine, clear, well-architected code than code that was shipped to a deadline, if I had a choice.

Well, there is always a deadline, isn't there? I mean, not many of us have the luxury to say, "I'll just work on my pristine, clear, well-architected code and it will be done when it's done" (except maybe in side projects)...

Re: The Grug Brained Developer

#288
post #280

How long until you see the first 'grug-brain' t-shirt at your workplace?

Never maybe. People will identify its a modified version of 4chan wojak and cancel Grug.

More likely, the creator might recognize that a lot of people who like this kind of stuff have a habit of "hiding their power level" by not buying it and displaying it on their chest. Going ahead and buying that shirt is something like what we used to call the "Silk Screen Goku Shirt" phenomenon, but the newer generation tends to refer to it as "Ahegao hoodie" Syndrome.

Re: The Grug Brained Developer

#289

Earlier quoted context omitted.

You have the right insight I think. The thing about putting lots of effort into "refactoring" is that the code you refactor may actually not end up in the product at all. I think "prototyping" is better than "refactoring". Prototyping basically means that you write your app more than once. On the 2nd round you know what needs to be there and what not. You may have come up with a much better much simpler design for th…

Refactoring is probably a sign of problems, unless by refactoring one means ”giving abstract structure to yet unstructured code”, i.e. factoring for the first time. That needs to happen after feature-completeness, but before a project goes into maintenance.

Well yeah, if the code was without "problems" (using the widest definition of "problems", including stuff like "code smells"), you wouldn't have to refactor it. But such "problems" don't necessarily mean that the code was bad in the beginning, it might also mean that the requirements have changed in a way that the original code structure can only handle using hacks...

Re: The Grug Brained Developer

#290

Earlier quoted context omitted.

You are free to develop everything in vanilla JavaScript and run your coded scripts straight in the browser. Very non-complex. But the team that uses npm, babel, webpack etc will crush you both on development speed and stability.

Speed maybe. But stability? Hard to imagine how that stack of build tools is going to provide more stability.

The obvious ones: Typescript + eslint + jest + Selenium. More complexity, high return on investment.

The non obvious ones: Without babel you are either writing legacy JavaScript (which is arguably not as clean and easy to read), or users will complain your site is not working on their older browser.

Post reply on HN