The Metaprogrammer
codersnotes.com
codersnotes.com
I don't want an Apple at all, but I do want a beefy machine because my job doesn't only involve typing text you see - for instance I also need to build the result of all that typing, and if it takes ages, guess what, the time I waste waiting for it to complete is not worth whatever money they cleverly save by supplying me a "CP/M from '78"
"To insult a new hire by providing only a single 4:3 monitor? I can't work like this."
I can work like this, but I prefer two monitors. How much does a monitor cost anyway? Having two displays is much more convenient.
I can program sitting on a kitchen chair, but I prefer an ergonomic office chair, because I spend a large part of my life at work and I see no reason why it should feel uncomfortable.
Oh, how pampered I am!
"- You were lucky to have a LAKE! There were a hundred and sixty of us living in a small shoebox in the middle of the road.
- Cardboard box?
- Aye.
- You were lucky. We lived for three months in a brown paper bag in a septic tank."
etc.
As time goes on (16 years as a dev now) I find myself a lot less concerned about this stuff.
> As time goes on (16 years as a dev now) I find myself a lot less concerned about this stuff.
That's the point, we shouldn't be concerned, and it's best achieved by giving us equipment that lets us take this stuff off our minds
Engineers tend to grow out of it.
Not that many coders 'often' travel on the job, as a proportion. Most are office-bound.
If I may be blunt, bullshit. Working on a remote server, especially one not on your local lan, is a lag filled pain in the ass.
Even if you decide to work on a local editor and upload to the cloud, your write-test cycle will be slower, and the best editors will require quite a few CPU cycles themselves to provide (their version of) intellisense, syntax highlighting, and documentation.
And this doesn't even cover ensuring that the computer is capable of handling remote conferencing - a resource drain to end all resource drains on laptops.
I'd go one step further and say that as I gained experience, I realized the value of the productivity gains from low latency and the freedom offered by working locally (I even keep local copies of documentation websites, so I never have to worry about them being down).
> Not that many coders 'often' travel on the job, as a proportion. Most are office-bound.
Internet can still go out in an office. So can power. People travel, work from home, and sometimes work from a conference. Why limit your employees for the sake of saving 1% of a software developer's salary (less, actually, when you consider amortization)?
Not all software is designed to run on servers.
In some cases, building locally will give a quicker response cycle.
Editing locally is almost always a better user experience. Especially if your servers aren't in the same building.
And plenty of other reasons (travel, flexibility, ...)
Anecdotally, I had to work this way once for an employer. It worked rather well, but our "development" machines were on-premises, and when they went down, everybody was down. I was also extremely limited in what I could download and run, since the machine was shared with other developers. Not very productive.
Though, I did get really good with Vim, so I am thankful for that.
Occasionally you encounter weird toolchains where some stuff is much more convenient to do from the IDE, so you end up editing files in emacs then having Quartus or Vivado open to look at their reports.
(People should be a bit more specific about their working environment before confidently declaring the best way to do things!)
I've attempted to write Java using VIM. I've even been moderately successful. But it's still easier to do with Eclipse or Intellij.
Why? I have a full command line suite running on my laptop, because I'm running Linux. Why would I log in elsewhere, when I can run stuff locally?
I'm personally an emacs user for most purposes, but I'm not going to claim it's the right tool for everyone, all the time.
I run emacs locally. In X. That way I can browse the web, view PDFs & images, play Tetris in colour &c. I wonder how advanced the nethack mode is these days …
> I can work like this, but I prefer two monitors. How much does a monitor cost anyway? Having two displays is much more convenient.
I now prefer a LG 21:9 34". They are fairly cheap, have a good quality screen for long viewing, and the extra width is a real help. I wouldn't buy the thunderbolt version as it really doesn't do the thunderbolt properly.
I think any programmer or manager bitching about developers chairs or screens is a sadist and doesn't really get we have to live with this stuff and it affects our health.
Instead of the 34", wouldn't make sense to just go 4K (3824x2160) and get it over with? You're getting more vertical AND horizontal pixels. Personally, I'm salivating at the Seiki SM40UNP (40"). Anything smaller at 4K resolution and you'll need display scaling, negating the size gain. I don't think my 2013 ultrabook can drive it at 60Hz, but there are apocryphal reports that I may be able to eke out 50Hz.
I have 32" 16:9 Benq at 4K and it's perfectly usable without scaling. You can think about it this way: 32" is double 16" monitors, and 15,6" monitors (rather popular in notebooks) with 1080p are quite usable. And it took me few days to adapt from previous 27" 1080 monitor.
Monitors are cheap, at most one or two developer-days of salary. If you can't get a monitor, what happens when you need to buy some more specific piece of equipment?
A previous employer had an extremely liberal policy on letting us just buy anything that cost <£100. Obviously we recognised this was a privilege that would be taken away if abused, so we didn't use it much, but it was tremendously liberating. Want an evaluation board? Need a cable? Or a book? Done!
Previously I've had to do a PO for a box of M5 bolts. That's the morale-draining opposite, especially if you have to sit around wasting several orders of magnitude more than the cost for the paperwork to be done.
(Aerospace people excepted where it's actually required)
Oh, and it is too noisy to concentrate in this open plan office without headphones.
But when you've only got 64K RAM there's a limit to how sophisticated a program can be. And when you're writing the type of tools we could write back then, your compilation cycles would be fast too.
Would I go back? Some of my CSS files are bigger than the hand-coded assembly language programs I wrote back then but I still love what computing has become. Many facets of today's systems seem almost unimaginable (except that I was an avid sci-fi reader). So I'll join you in demanding a fast machine so that I'm not waiting for code to compile. And who knows what we'll be building in another 30 years?
"Programmers spend too much time attention-seeking, or debating online, instead of actually writing code" is a valid topic to debate over; I can see arguments on both sides, but it's certainly a thing that could be argued. The work we do is more important than all the meta-stuff surrounding that work.
"Programmers are too pampered and we should just give them all shitty old computers in shitty offices without perks", though... workspaces are important, as are the tools. A large monitor means I can have more stuff open at once, and I know that I'm more productive when I have an external monitor than when I don't, and I need to cmd-tab a bunch between editor, terminal, and browser.
Companies don't offer good equipment and perks because they're charitable, they do it because it produces results (more often than not).
Conversely, companies that don't offer good equipment are making a terrible decision. I once worked at a company with a single 14-inch monitor on every desk. In 2010. I was astonished.
I had to experience this for myself when searching for new hobbies. With most of them, I spent most time with the meta, e.g., which fountain pen to use for my writing or what the best ball bearings for my skateboard are.
I think in comes down to "I want to be a writer, but I don't want to write. I want to be a photographer, but I don't want to take pictures. I want to be a skateboarder, but I don't actually want to skate." Why I want to be something but not actually practice the trade is another question (prestige, self-identification?). I wonder if others have experienced the same.
You don't have a vetted guitar, amplifier, mixer or a microphone? Yep.
That said, they sometimes have a point.
The big thing we tangle on is always digital vs. analog. Oh boy.... Zzzzz... I've cut tape and editing on analog sucks. Noise on analog is not ideal. Compression and 'natural' bottom end warmth are nice. But that's where it stops. Most of (all of?) these things can now be simulated by plugins. We don't even have to say digital has won because it's so obvious. Analog is there for the minority purists.
This debate has between us has taken many hours over many years. Oh yah, let's not forget vinyl too!..
I've had to recently redirect the argument to musicianmanship, which I feel is really where the rubber meets the road. It all starts at the source. If your source sucks, then you'll have some work to do to fix it. Stuff like autotune, sample triggers, etc. In this way, analog is better as it will demand more of the musician's performance. Hard to swap out the kick drum on analog.
All in all, I personally don't think any non-studio experienced audiophiles would know if something was recorded digitally vs. analog. There are so many things you can do now and unless you know those studio 'tricks', you can't even tell. This has already been the case since the 90's I think. Everything can pretty much be simulated, processed, filtered, chopped, moved, etc.
One great resource for all this is Ken Andrews. Look him up. He's got a lot of great stories and insight on recording.
My advice to my friend: learn the tools and use what make sense artistically. But debate for theory's sake is pointless in my mind.
I do think there's a few areas where analog still is a bit better technically (mostly from the musician perspective, things such as distortion and resonant filters), but digital is both often better and just so much more convenient for 90% of things. Those that embrace analog as a religion are rather annoying.
Now, I do remember in the 1980s there was a huge push of digital everything -- digital playback, "digitally remastered", etc. A fair bit of that at the time had major issues -- eg not very nice sounding DA stages, aliasing problems, etc. Perhaps this is where some of this attitude comes from.
Most of the anti-digital people I know fall into two overlapping camps - technophobes that don't know how basic DACs work (believing that digital audio means output of literal square and stepper waves into the air) or those that simply prefer older recordings from a point of nostalgia or artistic taste. Showing conclusively that some of their favorite records were mastered digitally before being compressed and filtered for LP is similar to watching climate change deniers try to reason via strawman and red herring arguments.
You can only master abstract ideas through concrete practice and active thinking about the problems.
I'm not sure if it's exactly the same as your examples though, as a lot of people into this particular hobby definitely do use and enjoy the different products. "Shave of the day" posts on forums typically show posters different set ups, with the same users having a vast rotation of gear. I guess it'd be like having lots of different pens or skateboards.
But I've also seen many different people say that they started using a DE safety razor to save money, but have ended up spending a small fortune on new gear.
Some video-games also have this in spades. I know I've pored over weapon stats to see which gadget is preferable, when just getting good at the game would have had a bigger impact than 10 more raw power points or the slight speed bonus that a particular hat gave me.
Pick a wikipedia page and chances are that scattered across the world, you'll find a handful or more of purists dedicating themselves to that subject. The internet has made it much simpler for these purists to indulge in their obsession with the meta.
Meanwhile most of the people into a hobby keep on just doing it with the equipment and materials they have. The purists do the hobbyist [1] a service in that they discuss every myriad detail at great length, frequently. The hobbyist gets free research this way, and the purist can continue to feel satisfied in their knowledge of the subject.
1. It's not that purists aren't also hobbyists - but their hobby as often the meta of the subject as much as the doing of the subject.
I just bought a 20 dollar vinyl board and some plastic touranment staunton pieces from ebay - the exact same ones the local chess club uses.
I'm also into Cycling and it's much the same there as well, My carbon bike was £800 and I ride it 2-3 times a week, I have friends who spent £4000 and ride it once a month (and have to have full carbon everything) always struck me as crazy but it's their money.
It strikes me as an incredibly stupid argument to make if anyone thinks you someone is spoiled for preferring good tools to do the job. Imagine a mechanic who can only use even-sized spanners, or a drywaller who can only use 5-liter buckets at a time.
(double the keyboards)
But it doubles the power! Isn't it how this work?
But that's how I work, I won't force it on anyone else.
Doing other stuff you can have stackoverflow, your code, and a gui for version control.
Doesn't hurt to have the extra real estate for command lines, file explorers, email, a crm, remote support sessions, etc.
I think I need more monitors...
2 -> 3 much less (so much so I went from 3 to 2 at home because I wanted the desk space back).
Working on one screen for webdev though is frustrating I agree, I hate working from my laptop now.
So my code would be on monitor 1 and stay there forever, but the various things that I'm reading, e.g. input (documentation, specification, sample data) or output (debug output, logs, testing app) would be on the other screen. The alternative is a large monitor and keeping things side-by-side.
My first programming job was $32k/year out of college(this was in 2011).
On edit: I should clarify there is another meaning, which is that a good craftsperson can do whatever they need to in their chosen craft with substandard tools - this is also the viewpoint the original post seems to ascribe to.
I personally like to use the simplest tools possible to achieve a task, even if that means I have to do more work to achieve the task, because then I don't spend time learning my tools. This means I use a crappy laptop with no external monitor, a simple text editor, the command line for just about everything. When I do end up on someones machine where they have the good tools I find that I am but a simple caveman, confused and enraged by the complexity of other people's worlds. All this does not mean I am a good programmer or craftsman, it just means I find doing without the better tools and hardware suite me better.
But it seems that there are people intent on cutting programmers off from the same perks that MBA types consider essential. It would be one thing if this backlash came from management; at least that would make sense as a cost-saving measure, but in the case of this article, it's coming from other programmers. It seems that not only are programmers undercompensated, but other programmers are actively seeking to keep us undercompensated.
Is this crab mentality [0] at work or just ignorance of how non-technical people get compensated?
Either way, it makes me wonder if I went into the right profession. I went into software engineering because I love computers, and coding is fun, but I have to wonder if I'd be better off if I got my MBA instead of a CS degree and went into finance or marketing or something (I know I don't have what it takes to do sales).
Talking about this stuff is only natural.
As for the rest of the OP, not knocking it (or the book), but it sounds like he just read Catcher in the Rye or something. Employees have been jockeying for status inside firms and across firms as long as there have been employees and firms.
This isn't necessarily true all the time, although it is in many contexts. For example millions of people are eagerly awaiting the new, shiny, same-as-before-but-slightly-more-expensive-and-with-a-couple-new-features, iPhone 7 but the number of people who get excited when there's a breakthrough in a particular scientific or technological field can be counted on one hand (and multiplied by 10^[2-4]). The explanation is pretty simple: I can get the iPhone 7 when it comes out but it's hard to get excited knowing I might go to Mars in 2060.
I had a similar experience myself. As a human being I'm naturally inclined to, sometimes, consider short-term rewards more valuable than long-term rewards. They say the quickest way to change your lifestyle is to change the environment around you. In the case of software developers that environment is often their gear/tools. In my case it was my laptop. When I was still a student I was using the not-so-crappy-but-still-kind-of-crappy laptop provided by my university. The problem was not the laptop, of course, but the fact that I was doing something I didn't enjoy.
One day, frustrated by the fact that a few Chrome tabs and PyCharm would literally devour RAM and swap alike, I started considering buying a laptop of my own. Fast forward to a couple of months later, and on the edge of a serious depression, I bought a shiny Macbook Pro with 16 GB of RAM. I started getting more into web development (I was doing research in a very specific field of cybersecurity), studied machine learning (and used it for my thesis project), found a very good job (where EVERYBODY was using Apple hardware) and slowly transitioned to doing web development full time.
The Macbook acted as a trigger. I might have gotten the same results by moving to another country, changing house, changing friends, maybe by dropping college altogether, but that shallow, nonetheless very useful, purchase (I'd go as far as to call it an "investment") did the trick. I got my degree, I'm still working, and enjoying what I do, I even moved to another country eventually. Could I have experienced the same thing doing something else? Probably. But it's easy to say so afterwards. :)
A) victim of it's own success. Computing hardware is cheap, 10k desks + masseuses + on site food service + all the other perks that are constantly individually compared against "well it's only % of your programmers salary" all started adding up
B) phones made people remember that the user's hardware matters more than the developers build farm.
The user doesn't have to recompile their code every few minutes to do testing (or every few seconds for intellisense and other coding aids).
Developer hardware still matters. I can be productive without a masseuse. I can't be productive when it takes five minutes to run unit tests because my laptop sucks.
A quick search pulls up results that would contradict that statement.
https://news.ycombinator.com/item?id=7436401
https://news.ycombinator.com/item?id=10901054
https://news.ycombinator.com/item?id=8735892
https://news.ycombinator.com/item?id=10177716
I realize four search results isn't enough to completely debunk the author's statement, but in my experience programmers love to talk about programming languages. If you start a conversation about an interesting new language, more often than not people will want to give their input.
Programmers also love to talk about their ideal working environment. Things like office chairs, keyboards, monitors and office perks are important to them because the majority of their time is spent at work.
I had a boss once that thought programmers just typed away for hours, how hard could it be? This portion is like that.
Programming, well software engineering, is much more than that. I have a half-dozen spec documents to pull in from. I have databases to look at. I have log files to parse through. I have code to read and write.
Yes, this is all primarily text. But it's not just typing.
Using a single 15" 4:3 monitor is like trying to steer a submarine with the only knowledge coming in through the periscope. But you have to turn the whole sub to rotate the periscope.
It's the extra monitors, or let me print off 5000 pages or so of text and bind them and keep them on my desk at all times. Probably more, I'm on several projects. And the bindings won't last. I need to see content on page 100 and 712 at the same time. Oh, and then I'll have to print out each revision unless they're provided with a good diff. Or don't let me do either, require me to keep way too much information in my head and let me fuck up the project.
EDIT: That said, his other points may be valid. But I've never met the people that fit his description. I've "programmers" who don't program. I've worked with them. Well, I've worked, they've hung out. But the cafe stuffs and other things, I've never seen anyone that cared. Chairs, maybe, but he had a bad back so that was a valid concern.
> Some of the best programmers I've ever worked with don't have twitter accounts. It's almost unthinkable, isn't it? How can they possibly be one of the top programmers in the world, building the most successful projects out there, without being seen to be doing it? You can write beautiful code, the best code in the world, but it doesn't mean a damn today if you didn't blog about your new standing desk.
I also find this a little ironic, reading this metaprogrammers blog deriding metaprogrammers with a "follow me on twitter" link at the bottom.
Just look at the movies. "Hackers" always manage to break in to remote systems by typing lots into a terminal very fast. The more difficult the system, the faster they need to type. (Mr Robot has been a refreshing change to that stereotype).
And in most of the startups I worked so far there were only cheap chairs not so good for my back. In a way I understand the owners: they have startup they should buy the cheapest things possible because they don't know how long their startup will survive, but I like when someone makes an effort to provide good working conditions for the programmers.
I also used to care about the noise level, but again working in startups I had to get used to noisy open spaces.
Maybe you won't get something cutting edge in economics, but definitely very good still.
"You post an article about a new programming language, you'll get 10 replies. But start a discussion on what headphones you wear while you work, and ten-thousand people will rise up from nowhere, pushing the thread ever-skywards on a tower of upvotes"
Not many people care about your new programming language, but everybody understands the importance of a good chair, monitor, or headphones, and when you ask people for an opinion, they'll express it.
IMO, code with whatever you want, but I'll stick to my Herman Miller Embody, a self-modified 45g-uniform Realforce Silenced Keyboard, a 4K 30-inch dell monitor (UP3216Q), and 2 27-inch dells (U2713HM).
For anyone who doesn't program or create all day on a screen, it's hard for them to empathize. But all these things are real to me. Knocking 30s off a build can knock off 10-30 mins of wait time a day. It all adds up. On a scale from 1 - 10 (10 being an ultra maxed out everything machine) I usually hover around 7-8. I know after all these years that my concentration and execution are the most important thing I have and I don't need workspace things to get in the way of that.
Sadly, headphones are a part of that now. ;-(
Headphones are a big topic of discussion because default working environments are so far from what many of us find optimal (and, indeed, what seems to be empirically optimal if you look at the studies in Peopleware).
You nearly got me.
But this comment isn't meta(meta(metametametaprogramming)), because of this sentence :D
"You might have thought that metaprogramming meant macros, type introspection, that kind of thing. Nope, I'm hijacking the word for today:"
One programmer asked for 3 1440P 27" monitors, a specific trackball, and maxed-out RAM. We had to figure out support for a new video card for that. Four years later, I think it's time for an upgrade to SSD, but they are not likely to think about it until I suggest it. Everything works, and they are comfortable, so they are productive.
I don't do twitch. Come back to me in ten years if it's still around, maybe I'll have time for it.
But I make videos of my programming and add commentary as I go. I doubt anybody watches it, but I found it most enjoyable -- makes me think and vocalize each thing that I'm doing. Plus it gives me a good excuse to talk to myself.
Otoh, as an Emacs user my mouse costs about as much as one of the black espressos I exclusively drink for coffee. :-)
Edit: This made me feel like the wimp I am. Time to stop the singer songwriters on my headphones and play some black metal. (And go to the gym for deadlifts or squats this evening.)
I didn't know a mouse can be an Emacs user. Where did you get one?
(Just got the best feel I could find in the stores. I paid 70 Euros, maybe not cheap but fram from extreme. I only play a snob on internet. :-) )
Well, the artist probably has a Mac laptop, with the horrible glossy screen, which basically requires that there be no light in the room …
I think a few of these items are a bit more than debating the unimportant. I don't personally feel like I need "the perfect" setup, however there are a few things that I think make me leaps and bounds more productive. Working on a few older platforms that you have to build locally can cause some machines to really bog down and chew up a ton of your development time - taking us back to the the old, "hardware is cheaper than programmers" concept that another commenter mentioned. There have been many productivity experts saying that in every field, having an extra monitor can give you huge efficiency gains. I find I got the most gains adding up to 3 monitors.. the 4th wasnt as much of a gain. I think this is domain dependent though. When working as the sole developer on small websites for clients as a side business, I really only ever use two monitors at most. Headphones, keyboards, and chairs I think are the most "diva" things to spend a bunch of time on. Yes, the chair has to be comfortable, the keyboard has to be accurate, and the headphones have to work for your work environment. However, like delivering software, sometimes good enough is better than perfect. Having an office diner of any form I think is a productivity play. If you are hungry, you are not at your best. If you have to figure out what you are going to go out and get you are taking more time - plan what to get, travel to get it - instead of just grabbing something quick across the office and eating it at your desk. I want to be productive. Not productive to the max, navigating through every single minuscule inefficiency, but making changes to get the most gain. Everyone has their preferences and friction points. If you are pissed off at your tools a good portion of the time, you probably aren't going to be as productive.
And I was thinking I ought to be content with my 27"
But, 2 * 21" (FHD LCD) became 2 * 24" (FHD IPS), which I upgraded to 2 * 27 (Apple 2560 * 1440), which I now consider to replace by 2 * 42" (4K). Have I became 10x more productive by it? No. Can I work without them? Sure. Do I enjoy working on those huge screens? Hell yes! And since screens are not that expensive anymore, why not? I spend 10+ hours a day in my office, so why not try to make that time the most enjoyable I can?
I agree with the last one, not with the first one. For example the more time you spend programming, the better you get but also the more important it becomes to have a good chair, desk, tools. Especially the chair, it is a health problem!
Then there are the perks he complains about, like food. They say 20% of your energy is consumed by the brain. What you eat directly affects how good you think and how much you can produce with your brain. Almost all the perks I have seen at top companies are nothing more than a recognition that employees are more productive if you give them these perks. It's all about money.
The other tools, so long as they're adequate, don't need to be that shiny... IMHO
Most of the consequences of choosing a particular programming language or technique will only come out months or years later, and often those results will have a very muddy connection between cause and effect. I'm way less likely to go on a forum and talk confidently when I would have needed to do multiple projects taking years to have a definitive answer.
On the other hand give me a keyboard for a day and I'll happily wade into an argument about it after typing a few thousand letters on it.
In all the noise, however, there is a lot to be learned so I decided to extract some of the information on various topics. For example, On the topics of standing desks, keyboards, RSI, etc, I've created some org-mode notes on Github.
Of course I and others I know have preferences about chairs, keyboards, and monitors, but not so much that they claim they can't to their jobs. Quite frankly, I wouldn't want to work with somebody like that. Who wants to work with somebody who thinks their skill set gives them licence to bitch and moan? Who wants to work with somebody who bitches and moans, period?
why people complain about their tools instead of programming? Well, tools are important... I like to wait less time to see my program compile and I want a good keyboard so I keep RSI under control. These are relevant parts of my profesional life that, yes, are not exactly programming...
Sure, people like to argue about these things because everyone have an ass and an opinion about chair and non Swift developer don't have a lot to say about Swift, and sometimes too much...
But this is pretty much a textbook example of a straw man argument...
I did some math. If the money they spent halved my build time (easily possible at the time, since we were on spinning rust and they wouldn't spring for SSDs "because everyone will want one, and then what?") then they could afford to buy me a new computer every couple of weeks, more often if you computed the $ lost from the average imputed load (of $500K/year) of an employee.
Bean counters. Feh.
But I was wise to the ways of this company, and I also needed a bigger HD, so I simply requisitioned a whole new PC and it arrived the next day. Its about whatever makes the paperwork easier...
Chances are if they want to shave USD500 of your equipment once every three years they will also want to fleece you everywhere else to.
Says the man who works off a single laptop that he hates, I know my company cares anyway. ;-)
Never? The arguments presented are really just hyperbole that applies to all industries.
Yes I can code with an old machine, yes I can code with a small monitor, but give me a beefed up OSX and two monitors and I'll be insanely more productive. Why shortchange something that will pay for itself almost immediately?
Like arguing with AI on the requirements of a new project it will implement.
And those damn clacky keyboards of course. Not a real programmer if you don't have one of those.
(I'd also like to add that deliberately trying to fracture a word into having two completely different meanings just because you think that word sounds cool is to deliberately reduce the accuracy and unambiguity of human communication and perpetrate a damage to the English language, which is pretty obnoxious.)
Then Aristotle wrote a book called "Physics" (though its subject was broader than what we now call physics) and another book whose title has been lost, about more abstruse things. It was typically shelved next to the "Physics" and listed after it in catalogues, and it was alleged that Aristotle thought its contents should be taught later than those of the "Physics", and it therefore came to be known as "Metaphysics": the thing that comes after the "Physics".
Because the stuff in the "Metaphysics" was felt to be deeper and more advanced than the stuff in the "Physics", "meta-" came to mean something like "beyond" -- with indeed a connotation of "X about X", but by no means always. "Metamathematics" is mathematics about mathematics, but "metapolitics" is theorizing about politics, not doing politics about politics.
(The above may sound ridiculous, but it really is where this usage of "meta-" comes from.)
I agree that it's weird to take "metaprogramming" to mean "discussion of things like office furniture, big monitors and text editors", and that "metaprogramming" already has a meaning and that that isn't it. But the problem isn't that "meta" can only mean "X about X"; that simply isn't true.
About five minutes before complaining about how the message isn't important any more became more important than the message.
I think what you described can adequately be called something like 'hipster programming'.
Not hijacking. Overloading. ;)
Writing a blog entry discussing about how the community discusses about things surrounding their jobs rather than actually doing it, rather than actually doing one's job is either a very clever pun, or very short-sighted.
This entry also documents how one-liners can get a bit confusing.
Why are stuff like this on HN?