Live data from Hacker News

Make for hipsters

mattandre.ws

51–60 of 200 posts

Re: Make for hipsters

#51
post #37
post #25

Earlier quoted context omitted.

(1) I imagine quite a lot of this site's visitors use different platforms/toolchains, and haven't encountered make. (2) Its a fun/joke title, the article is for "hipsters", the kind who know the latest fancy build tools but not make, I suppose. I wouldn't take it too seriously. (3) It's a disclaimer against people attacking him for errors, and also to warn people that he's not an expert. Again, this is written in a l…

If not a ruse, this is a dumb post that discredits itself and calls makefiles hacky, not noticing that they are used by many people for most native programming on most (unix type) platforms. I'm feeling cranky every day, but just today this post is at the top of hacker news, and that's frustrating.

The gist of the post is that make is preferable to modern build systems. The author has used self-depracating humour to defend himself against attacks, but clearly it was too dry.

If we stopped attacking the authors of articles, then it would be easier for them to write openly and less defensively, but unfortunately if you write anything on the internet, people will call you an idiot.

Re: Make for hipsters

#52
Another way is using npm-install-changed for the "npm install" problem and fix everything else with other npm scripts like npm-run-all. Use make if you like it but if everything else is npm you can solve most problems using "npm run" and npm scripts.

https://github.com/oNaiPs/npm-install-changed

http://blog.keithcirkel.co.uk/how-to-use-npm-as-a-build-tool...

[edit: formatting]

Re: Make for hipsters

#53
post #33

Earlier quoted context omitted.

The problem is if you want support (even commercial help) you'll need to follow some kind of prevailing trend. If I've got a system with grunt or gulp and I need help, I can probably find a local web developer. I'm not so sure if I can find someone who's an expert in Makefiles at the moment.

if your devs can't handle learning basic make, all is lost.

yeah, makes you wonder what kind of bubbles some of these developers are living in if they see Make as some magical relic from the past.

Re: Make for hipsters

#54
post #10

Do so many people who go on this site not know how to make makefiles? Also why is it for hipsters? Or is the article for hipsters? Why does the author call his own published notes factually inaccurate? Why is it hacky to use a makefile? Is this all a big ruse?

I've been cranking out code since the 80s and I can count the number of times I've had to create a make file one my fingers. Not everyone is working in the same domain with the same tools as you are.

Re: Make for hipsters

#55

The single biggest piece of advice I can give for Make is to make sure your text editor uses real tabs in Makefiles. My personal preference for everything is spaces (mostly a habit learned from Python's PEP 8), but Make doesn't honour spaces for indentation - only tabs. Despite being an obvious usability hole, this has never been fixed. Exacerbating the issue is the poor error message given upon encountering a space-…

> Despite being an obvious usability hole, this has never been fixed. Well, which implementation of make should be fixed? The thing about these truly ubiquitous nix tools is that eventually people discover that there are unixes other than Linux. …that said, a quick google found that this is* fixed in GNU make; check the docs for .RECIPEPREFIX here: https://www.gnu.org/software/make/manual/html_node/Special-V...

[deleted]

Re: Make for hipsters

#56

The single biggest piece of advice I can give for Make is to make sure your text editor uses real tabs in Makefiles. My personal preference for everything is spaces (mostly a habit learned from Python's PEP 8), but Make doesn't honour spaces for indentation - only tabs. Despite being an obvious usability hole, this has never been fixed. Exacerbating the issue is the poor error message given upon encountering a space-…

Not be sound harsh, but your problem lies here

    My personal preference for everything is spaces 
You want a tool that has been around longer than you do stuff your way. I think it is better if learn to work with the tools and accept that there is a reason some things work in certain ways.

Re: Make for hipsters

#57
post #22

Earlier quoted context omitted.

The problem is if you want support (even commercial help) you'll need to follow some kind of prevailing trend. If I've got a system with grunt or gulp and I need help, I can probably find a local web developer. I'm not so sure if I can find someone who's an expert in Makefiles at the moment.

You already found at least one. Also try anyone with a degree in computer science. I'd wager it's in most first year courses; it was in 3 of mine. Also you could consult anyone who spends a lot of time working on/programming for Linux and/or in C/C++. And it's really easy, and there's tons of literature on it on the internet. And it has a manpage.

I never encountered make in any assignment during my studies. It certainly wasn't mentioned in the lectures. At my university, you didn't learn any tooling at all, if you thought you needed it you had to teach yourself.

Re: Make for hipsters

#58
post #10

Do so many people who go on this site not know how to make makefiles? Also why is it for hipsters? Or is the article for hipsters? Why does the author call his own published notes factually inaccurate? Why is it hacky to use a makefile? Is this all a big ruse?

Unfortunately, many developers have a mortal fear of anything from before the year 2000. They've grown up with this tribal wisdom of unix and it's various tools being a beardy wilderness of byzantine hacks and toxic waste dumps.

Meanwhile they'll merrily pile up a thousand node modules into a towering pillar of bad, just to run the equivalent of a shell one-liner, and call it a job well done.

Re: Make for hipsters

#59
post #56

The single biggest piece of advice I can give for Make is to make sure your text editor uses real tabs in Makefiles. My personal preference for everything is spaces (mostly a habit learned from Python's PEP 8), but Make doesn't honour spaces for indentation - only tabs. Despite being an obvious usability hole, this has never been fixed. Exacerbating the issue is the poor error message given upon encountering a space-…

Not be sound harsh, but your problem lies here My personal preference for everything is spaces You want a tool that has been around longer than you do stuff your way. I think it is better if learn to work with the tools and accept that there is a reason some things work in certain ways.

I've already configured my editors and tools to work with Make, and I'm not so much complaining about Make here as I am pointing out one of its most annoying warts. I am a pretty heavy Make user and I think it's great (not least of which because it's so darn ubiquitous).

And, not to sound harsh, but if you always "accept that there is a reason some things work in certain ways" without questioning if there may be a better way, well, you will always be stuck with the status quo!

Re: Make for hipsters

#60
post #56

The single biggest piece of advice I can give for Make is to make sure your text editor uses real tabs in Makefiles. My personal preference for everything is spaces (mostly a habit learned from Python's PEP 8), but Make doesn't honour spaces for indentation - only tabs. Despite being an obvious usability hole, this has never been fixed. Exacerbating the issue is the poor error message given upon encountering a space-…

Not be sound harsh, but your problem lies here My personal preference for everything is spaces You want a tool that has been around longer than you do stuff your way. I think it is better if learn to work with the tools and accept that there is a reason some things work in certain ways.

Make 4.2 was released this year. Many people prefer spaces over tabs and many editors insert spaces by default. Most compilers can deal with both spaces and tabs in their parsers, so I assume that it's not an insurmountable problem to make both work for Makefiles, or at least improve the error message. So calling it a "usability hole" is completely accurate.
Post reply on HN