dmcdm's comments

dmcdm | 6 years ago | on: A Backpacker's Guide to Maps

I've been an avid backpacker for about 20 years now, and my go to for paper maps has always been USGS 7.5 minute quadrangles. As the article mentions, they are the "gold standard" for many.

Recently I've had some fun playing around with making my own in https://inkatlas.com/ which is a great idea and hope it stays viable for the creator.

dmcdm | 6 years ago | on: The Worst Businessman of the 18th Century BC (2018)

Really? I take this as evidence indicating basically the opposite - fundamental human nature, as reflected through our communications and business practices, hasn't changed significantly in thousands of years. Some folks might be courteous, giving others the benefit of the doubt in hopes they'll "catch more flies with honey" or, more-likely, due to pervasive social norms and taboos. Others might issue thinly-veiled or direct threats, hoping to coerce the desired outcome. Either way, there have been shady business people and the ripped-off, the scammers and the scammed, for going on 4 millennia, at the very least, and there really is no sign the status quo going to change. If anything, this should dispel our romances of the human condition. The form is immaterial to the underlying function of the communication. "I feel ripped off, please deliver the goods."

~1800 years later, and 2 millennia ago, the graffiti at Pompeii http://www.pompeiana.org/Resources/Ancient/Graffiti%20from%2... tells a similar (and somewhat more humorous) story but in a different context.

dmcdm | 6 years ago | on: Computer Files Are Going Extinct

I also teach computer science (part-time adjunct, I have a regular industry job too), so the quality of computer literacy in the incoming student body is on my mind pretty regularly. This has been especially troublesome when teaching operating systems, because the OS is the deepest layer in the pile of abstractions students have to peel-back over the course of their CS education. The pile of abstractions is only getting higher - the day is not far off when we have to peel-back the abstraction of "persistent data generally" in terms of files before we can get on to peeling-back the abstraction of files themselves. Or who knows, maybe we'll all abandon the desktop analogy of computing altogether, with it's hierarchies of files and links, to move on to some new purely-graph-theoretical database notion of persistent data. Somebody will still have to talk to the disk controller, however, and I can only imagine how distant that reality will be (and already is) from most students' day-to-day experience with computing.

At the same time, I can see a great equalizing force in all this. Computers have reduced the technical acumen demanded from their users to the point that owning a computer and using a computer and even being a "computer enthusiast" doesn't put you very much ahead of anybody else on-average when it comes to starting out towards becoming a computer scientist. I think this, in combination with that everybody wants to be a software engineer these days, will eventually put us somewhere around the 1970's in relative terms with regards to technical literacy in the cohort of incoming computer science students. This might sound nightmarish to the current establishment, but it has at least a positive side-effect: computer science is getting more accessible because teachers can no longer assume that pupils come from a background of "quasi-technical" computer literacy (again, this is because conventional computer literacy has become decreasingly technical in nature).

I've heard one of the general causes behind the lack of diversity in gender and economic-background in tech workers is, at some point around the mid 1980's, CS instructors started asking of their students tasks like: "Open your editor and type..." and someone in the classroom would raise their hand and ask "Ah, um... what's an `editor'? And by the way, I don't own a computer either" and the instructor's reaction would be to privately advise that student to seek a different major, at best, or open derision at worst.

So I think we're getting away from that, which is at least a way to look at the bright side. It does make the teaching job a bit more challenging.

On a more personal gripe, a minor irritation of late is the number of students who want to do their OS homework in the Windows Subsystem for Linux, instead of even setting up a basic VM.

dmcdm | 6 years ago | on: The fungus that devastates the Cavendish banana has now arrived in Latin America

A much repeated myth regarding the Gros Michel is the reason that artificial banana flavoring tastes so "strong" to the point of being "obviously fake" to modern consumers is its basis on the flavor of Gros Michel, vs the much milder Cavendish they are accustomed to. This is apparently just a myth, but regardless I guess some say Cavendish tastes like artificial banana.

http://hoaxes.org/weblog/comments/was_artificial_banana_flav...

dmcdm | 6 years ago | on: So you think you know C? (2016)

>Unless your code is compiled, deployed to a rocket, and fired off the Earth never to return, the question of “what is my platform?” is meaningless in the context of writing good C.

While I feel the tone of your comparison was intended to be a bit hyberbolic, the reality is a bulk of modern C development occurs in a context similar to the one you describe. Further the thought, utterly foreign to the vast majority of software developers, that the physical machine may not be some utterly abstract and constantly mutating target which there is no hope of understanding is, imo, one of the great dying arts of software engineering - a death perpetuated by the same sort of folks who think CS education should be carried on in Java.

I contend that, these days, most C is written to target a particular compiler, physical machine, and/or device.

dmcdm | 6 years ago | on: So you think you know C? (2016)

I found it an amusing excrcise, if not terribly relevant, even as someone who spends 90% of his dev time in C.

What rubs me about these sorts of articles is they make some presumption about the importance and nessecisity of writing truely portable C, as if the "C Standard" were in and of itself a terribly useful tool. This is in contrast to where I live most of the time which is "GCC as an assembler macro language" (for a popular exposition on this subject see https://raphlinus.github.io/programming/rust/2018/08/17/unde...). And yeah, reading through the problem set I was critiquing it in context of my shop's standards, where we might be packing and padding, using cacheline alignment, static assertions about sizeof things, specific integer types, etc. So these sorts of articles just come off as a little pendantic to folks like me. I don't doubt they're useful for some folks, and I guess it's interesting to come up from the depths of non-standard GNU extensions and march= flags to see what I take for granted.

dmcdm | 6 years ago | on: Show HN: A job board for companies fighting ageism in tech

Ha, so I work in embedded too, and I was definitely one of the oddballs when I explicitly set-out to land a job in systems out of college. Now I'm a bit older, but I still remember my hiring manager's glum face light up when he asked me what I was "into" at a career fair and I replied with "C and Linux, FPGAs, etc." Now I go to career fairs, and I can certainly empathize - there really aren't a lot of new college grads who have any interest in systems work. In fact, 9 months ago we hired a new college grad and they left after about 6 months to go do some data science thing for an insurance company (sounds boring to me).

Something I've heard discussed in CS education, and experienced myself to an extent (I'm a part-time adjunct faculty teaching Operating Systems), is how the more recent generations of students are, in-spite of the ubiquity of computing in their daily lives, purportedly entering programs "less computer literate" than previous generations. I don't believe "computer literacy" accurately captures the nature of the nascent deficiency - it's really about "_systems_ literacy".

I imagine what's happening to "systems" ownership is a lot like what happened to car ownership between the 1950s and the 1970s - people forgot how to fix them because they got more complex and needed less maintenance. I think for some of us older folks who experienced early home-computing, this isn't all that counter-intuitive of an analogy. In the old days, to play a computer game, it usually necessitated some amount of "tinkering around" under the hood of the "system" - possibly changing settings, maybe you needed to install more HW, maybe you had to manually fix some corner case overlooked by the errant programmer. I've heard that people who were young adults in the early-80s to late-90's were in a "sweet spot" for systems - people had easy access to them, but they also had to "repair" (modify, configure, augment, etc) them a lot.

Today, we're trying to fill-in the sweet spot with things like the RaspberryPi and the myriad of similar educationally-oriented embedded systems / home computers, but somehow I don't feel like most of those capture the "frustration" factor - they're well documented, and pretty regular.

So, while it may be hard to find people in their 50's who can create a multi-platform responsive app using whatever "cutting-edge stack" Medium is swooning over, it's been my experience that it's even harder to find someone in their 20's who can write a device driver, or even a halfway-decent C program.

dmcdm | 6 years ago | on: Show HN: A job board for companies fighting ageism in tech

As someone who's "getting up there in the years", I really want to believe such a shift will come to pass, but somehow doubt it will, at least for my generation. Partially because '80s - '00s generation CS students were by an overwhelming majority upper-middle class males, and it's hard to generate sympathy for what are now mostly high-earning older men. As pointed out by others, it's "the bias in tech nobody wants to talk about." There's almost this sort-of "serves you right for getting complacent" kinda attitude around all of it. In general, the most sympathetic coverage I see about ageism in tech is through investigative journalism contextualized with riches-to-rags stories of the loyal Company Man whose American Dreams are dashed at the behest of an uncaring Corporate Goliath: "He had a family, a stable 6-figure job, 30 years of experience, and multiple advanced degrees, but now he's in the breadline". The perfect example of this is ProPublica's coverage of IBM's layoffs. Meanwhile, there is little recognition of the parallels between the purported "millennial mindset", sought-after and lauded by corporate HR departments, which holds "my job is my purpose, my life's work" and the sort of toxic "leetcode-ism" / "brogrammer" culture that is harmful to diversity in tech.

Anecdotally, the older folks who work a strict 9-5 are, unsurprisingly, often the most welcoming and "chill" people I've worked with. They also manage to get the same amount or more "real work" (i.e. fewer bugs, less drama) done in that same 9-5 block (again, this should be unsurprising when one considers the effect of experience). However, I also recognize these older folks have been almost overwhelmingly men. In my career thus far, I can recall working with 3 women over the age of 40 who were direct-contributors. Most corporate HR departments believe at least part of the solution to this problem is laying off "old guys" and replacing them with "young woke millennials," whilst totally ignoring that the "old" part of that is itself a bias and protected category. However, the protections are getting weaker (https://www.propublica.org/article/appeals-court-rules-key-a...).

Anyways, for folks looking for somewhat offbeat advice - as I get around to being an "old guy" myself, I've found that having dreads and a beard (and generally being of that "long haired freaky people" bent), while maintaining physical fitness, has helped a tremendously in masking my age. People are usually shocked to find I'm not "in my 20s or something." Of course this is sort of lifestyle-specific and not accessible to everyone, and I assume at some point I'll reach that "uncanny valley" with regards to my appearance and age, as mentioned by another poster.

dmcdm | 6 years ago | on: This Page Is Anonymous (2013)

Yeah, this gives me temendous nostalgia. SDF was my first introduction to Unix, must have been 12 or 13 years old at the time. I'm almost giddy when I find these sorts of early internet systems / services are still online.

dmcdm | 7 years ago | on: How A Young Woman Followed Two Hackers' Lies to Her Death

He did a talk at Google where he asserted basically the same thing: https://www.youtube.com/watch?v=vsMydMDi3rI

Great talk by the way, he's an incredibly charismatic and well spoken story teller, also a consultant for the FBI and a successful businessman - which makes you think about just how important likability and charisma are both to being a successful social engineer and being successful in-general. People will let you stray pretty far from reality if they like you - Holmes, Abagnale, and apparently Troy Woody (at least to this poor girl). Eventually reality catches up, one way or another.

dmcdm | 7 years ago | on: Bracing for the Vanilla Boom

This makes a lot of sense and seems obvious, actually. I'm surprised the author didn't make that connection, especially while pointing out that sometimes the fancy motorbike would be owned by an old Grandpa who had no intention of riding it, and rather spent all day polishing it (that is, trying to mitigate depreciation).

dmcdm | 7 years ago | on: New algorithm determines ideal caffeine dosage and timing for alertness

Being funded by the military, I imagine this study is predominately towards the goal of keeping soldiers / pilots awake on long-running operations and/or mitigating combat fatigue through the use of caffeine pills or combined stimulants. Not that it makes it any less interesting, but from the average caffeine consumer's perspective, this encounters a practical barrier in precisely dosing caffeine through coffee or tea.

dmcdm | 8 years ago | on: In 2017, Mark Zuckerberg sued hundreds, seeking privacy at his Hawaii estate

The title of this article, while technically accurate, is a little clickbaity and seems to be appealing to the bandwagon of sentiments about Zuckerberg. Land rights in Hawaii can be less cut-and-dry than they are on the mainland. I'm not implying there isn't potential bullying involved here, but aside these suits are mostly by way of figuring out who might have a stake in the land so as to make them an offer for divestment.

> “It is common in Hawaii to have small parcels of land within the boundaries of a larger tract, and for the title to these smaller parcels to have become broken or clouded over time..."

>Zuckerberg has no intention of contesting any co-owner who can prove his or her interest in any of the land parcels.

dmcdm | 8 years ago | on: Seattle's New Normal: Homelessness Is Now Middle Class

Yeah, it seems likely the author is just in that majority class of people who cannot conceive of any living arrangement outside the conventional stick-and-mortar dwelling bound to property or rent. That is, after all, what the ``American Dream'' of the past 100 years-or-so was built upon.

dmcdm | 8 years ago | on: Containers Will Not Fix Your Broken Culture (and Other Hard Truths)

I guess this article just resonates with me as a member of an organization in the process of "transforming" itself by migrating to a containers-and-services architecture with the goal of "continuously delivering" components of what has historically been a very monolithic and tightly integrated product. Lets just say it's in the class of products one might consider "big iron", but not strictly. This transformation sounds like an admirable goal on paper and in meetings, but the system we are building today is even more complex than what preceded it, because it has to do all the stuff it did before, and more, but now I have to worry about containers and a half dozen ways to orchestrate them, and whatever some other team has decided to replace their API with because now nobody is supposed to make assumptions about what anybody else is supporting, or we're all supposed have our software spend a bunch of cycles negotiating versions and APIs or something. This is way more complex. I guess the idea is now we can release patches for individual components, instead of having to do roll-up releases or something? But there's really no reason we had to do those anyways - dynamically linking to a library isn't much different conceptually than attaching to a "service API" when it's all happening internally to some box.

People go read about what Amazon, or Netflix, or Facebook are doing and see how successful they've been (in both the financial and technical), and say "we can be like that too if we use the same stuff they're using!". Some manager reads a book which makes broad generalizations about "the right tools and behaviors", and starts building a cargo cult around them. Some kid in the valley whose never worked with a codebase larger than 10,000 SLoC writes a blog post about it, and everyone makes a toast with the koolaid. "More than 10,000 SLoC is an anti-pattern!" you say.

This may be a bit of stretched analogy, but just as communism or other socio-economic ideologies have given some people a framework for uprooting their broken incumbent governments and power culture, technological fads like "DevOps", etc, sometimes just give people the framework to uproot their broken incumbent tools and technology culture. The problem is, most of the time what you needed wasn't communism per-se, or DevOps, but just some framework to mobilize and guide your culture into fixing its fucked up status quo. It would have been better if you looked at your problems, instead of looking at the other guys solutions. The unique pitfall technological transformation encounters in this regard, is often the social framework (i.e. DevOps) gets conflated with the tools (i.e. containers and microservices), and leadership tends to focus on the latter - because changing tools is easier than changing people. What you needed was a better culture, and I think in most cases - a culture of reducing complexity - but what you got instead was microservices and "containers.

dmcdm | 8 years ago | on: AntiX 17, a Linux Distribution Without Systemd, Is Released

Can someone summarize why one would particularly want a distro which lacks sysyemd? I failed to find thier reasoning in the About / FAQ and don't know enough to understand the rationale on my own. Not to bait a response, but is this just another example of how when a fundamental and broad change is introduced into any sufficiently large software community, some small subset of the community inevitably takes issue and proceeds to fork and maintain a release where they can continue doing things "the old way"?
page 1