Live data from Hacker News

The perils of programmer education in the bazaar

blog.practicingruby.com

21–30 of 40 posts

Re: The perils of programmer education in the bazaar

#21

Earlier quoted context omitted.

"4. Your comment about "blogging, teaching and tweeting" is true, but I think it is clearly an improvement compared to the previous system. Portfolio based systems are almost always better than credential based systems." Are they really though? On what basis? 99% of my best work can't form part of my portfolio. I spend 2 hours of my own time on L&D each week day. Maybe 30 minutes of it is on projects I could present.…

To be clear, the previous systems is getting a BS in computer science from some university, or a bunch of certs from companies like Microsoft. There are certainly problems with the portfolio model, but I've never heard anyone seriously argue that it's worse than credentials.

Credentials vs portfolios isn't an either or argument. And "worse" is a loaded term.

If you have the credential of an undergrad degree at MIT with a good GPA, combined with a credential of working for Google for 5 years, there is a very high likelihood you are a good engineer.

On the other hand if you have made serious contributions to the Linux kernel, there is a very high likelihood you are a good engineer.

But most developers don't go to MIT and work at Google. And they also don't make serious contributions to large open source projects. For most developers credentials and portfolios are not effective methods of hiring.

Re: The perils of programmer education in the bazaar

#22
post #14

Earlier quoted context omitted.

Very thoughtful feedback, thanks! Related to your last point: > How about finding ways to compensate those who already produce valuable content in the commons, so they can have more time to do what they already do well? This is actually what I've been trying to do with my own reader-funded project ( http://practicingruby.com ). I've been modestly funded for five years now to produce free documentation for Ruby progra…

We need more articles and venues for discussion of new business models and publishing/marketing toolchains for high-quality content, so your post and efforts are much appreciated. What do you think of the economic boundary between timeless content (foundational principles) and time-sensitive/perishable content? LWN segments their free/paid offerings by time. One could argue that there's another, missing category: rev…

I've been focusing only on timeless content (for as realistic of a definition of "timeless" as technology allows) for Practicing Ruby, because I think it's more compelling and sustainable as a work for the benefits of the commons.

In other words, if I can look at my archives as being a body of materials that mostly holds their value over time, then supporters can be comfortable knowing that their money is stretching far and wide.

Also, although we don't do it as often as I wish we could, I like the idea of periodically going back and revising or replacing old works with updated content, to extend their life even longing and take advantage of new thoughts that come along. Having paid supporters really helps there, because it feels less like a chore and more like a service.

As for perishable / time sensitive content... I don't really know. I guess in that case you're funding people for their time and expertise rather than the lasting value of the work they do. I think this would come with a very different set of challenges, but I'm not seeing where the economic problem would be.

In the first couple years of Practicing Ruby's development, we did release the content only after it had been available to paying subscribers for a while. (There would be 10-20 articles available to subscribers only at any point, with a sharing mechanism that allowed folks to post links for others to jump the paywall)

When we stopped that and moved to directly releasing content when it was ready to be published, there was no major change in subscribers immediately, or even within a six month window after that decision was made. Actually, the cancellation rate went way down, so that might be a sign that the supporters were supportive of the idea.

The problem (and I'm sure some folks here may have guessed it), is that once everything was made available for free right away, the number of new subscriptions went way down. Whereas before we might see 30 new subscriptions a month and lose 20 people, we started seeing 1 new subscription a month and lose 2 people.

A sequence of events that happened since then has slowly bled the business of its revenue, although our traffic improves every week, even without new content being published for several months at a time. The most notable one is that I decided that the business ought to run on its own revenue, something that is ultimately a good thing but was a harsh change because previously I'd work 120+ hours a month on the project and only just barely squeak by on a subsistence level.

So basically, the project went dormant for the better part of a year, and although I did some small things from time to time, I mostly saved up the revenue so that I could pour more dedicated time into things down the line. In that process, we understandably lost supporters over time, but the main issue was bringing in new subscribers.

At this point, I'm burning the modest reserves I stored up, and that's given me a few months of runway before the project needs to go dormant again. If the collaborator model works and the kickstarter I set up gets funded, I think I'll be able to stretch things a lot farther. I do a very intensive process with anyone who contributes their work, but at this point it's still much easier for me to collaborate with someone who's contributing ONE article to Practicing Ruby than it is for me to research and write ten more pages when I've already produced something like 1000 pages of work.

So in a way, the death knell rang, and that's what motivated me to try to fix the business problems. In the process of doing that, I remembered the motivation for doing the project in the first place (which was to provide a functional example of a top-notch free documentation project), and that's what got me excited about things again.

Who knows what will happen from here? Maybe the project will still die. But either way, I'm sure I'll learn a lot from it.

Re: The perils of programmer education in the bazaar

#23
post #16
post #10

Earlier quoted context omitted.

Thanks for the feedback! > 1. Community is absolutely a weasel word when you're using it to lump together people from many different backgrounds and speak on behalf of them, or to act as if your particular sense of identity is representative of a whole group. Help me find a better word for what I'm trying to say here: When I say "as a community" I mean, "as people who ought to be concerned about the social impact of…

> Help me find a better word for what I'm trying to say here: When I say "as a community" I mean, "as people who ought to be concerned about the social impact of our decisions as much as the economics and personal motivations" "Profession" is the word you want here, I think.

Maybe! Although (for better or for worse), it's a word you rarely hear in the software industry.

Re: The perils of programmer education in the bazaar

#24
post #22

Earlier quoted context omitted.

We need more articles and venues for discussion of new business models and publishing/marketing toolchains for high-quality content, so your post and efforts are much appreciated. What do you think of the economic boundary between timeless content (foundational principles) and time-sensitive/perishable content? LWN segments their free/paid offerings by time. One could argue that there's another, missing category: rev…

I've been focusing only on timeless content (for as realistic of a definition of "timeless" as technology allows) for Practicing Ruby, because I think it's more compelling and sustainable as a work for the benefits of the commons. In other words, if I can look at my archives as being a body of materials that mostly holds their value over time, then supporters can be comfortable knowing that their money is stretching…

Thanks for the additional context. Have you tried collecting feedback from those who cancelled (20 of 30)? You may also want to consider editing a subset of articles into a themed ebook and distributing it via softcover.io, since that business model has been proven to generate hundreds of thousands of dollars from Ruby developers.

Re: The perils of programmer education in the bazaar

#25
post #22

Earlier quoted context omitted.

I've been focusing only on timeless content (for as realistic of a definition of "timeless" as technology allows) for Practicing Ruby, because I think it's more compelling and sustainable as a work for the benefits of the commons. In other words, if I can look at my archives as being a body of materials that mostly holds their value over time, then supporters can be comfortable knowing that their money is stretching…

Thanks for the additional context. Have you tried collecting feedback from those who cancelled (20 of 30)? You may also want to consider editing a subset of articles into a themed ebook and distributing it via softcover.io, since that business model has been proven to generate hundreds of thousands of dollars from Ruby developers.

I actually may plan to do some feedback with cancellations in the future, but "you not publishing for half a year and giving everything away for free" seems like a pretty compelling reason to quit a service.

However, the main feedback I got from people (and it happened often enough where I'm convinced it was a common line of thinking) was that folks just weren't involved in Ruby anymore, or weren't doing a ton of online reading because got busy with other things. When the average age of our remaining supporter accounts is something like 3-5 years), that's understandable.

I've had two children since Practicing Ruby was started. Things were hard for a while. I wanted to quit the business many times, but left it in a zombie state in the hopes to do right by my subscribers sooner or later.

Now things are getting a little better for me, so that's what I'm going to try and do.

As for eBooks, I've thought about that 100 times. I would love to get some of the existing content into a nicely tied together collection and release it as an eBook. But it's a big enough undertaking where I feel it'd take me away from other more valuable work I could do.

If we get our cashflow situation to be even a little better where I could fund a couple days a month to work on that, I'll go ahead and do it. But for now, I only really can afford to fund about 1.5 days a week of my own work, so that isn't much to spread around.

Re: The perils of programmer education in the bazaar

#26
post #14

Earlier quoted context omitted.

Very thoughtful feedback, thanks! Related to your last point: > How about finding ways to compensate those who already produce valuable content in the commons, so they can have more time to do what they already do well? This is actually what I've been trying to do with my own reader-funded project ( http://practicingruby.com ). I've been modestly funded for five years now to produce free documentation for Ruby progra…

"How about finding ways to compensate those who already produce valuable content in the commons, so they can have more time to do what they already do well?" The tech community has seen to it that this doesn't happen with: file sharing of copyrighted material and adblock. You can't first destroy entire industries in the name of 'freedom of speech' and then cry about how you can't make money in those industries any lo…

My own interpretation of this is that since the commercial sponsorship and advertising supported model is a race to the bottom, we need to be looking at alternative models that are focused on social benefit first.

We do have Wikipedia. It would be nice if there were hundreds of such examples out there.

Re: The perils of programmer education in the bazaar

#27

For those who want a good free programmer education and are willing to put in some work to get it: look at source code, not blogs, and work on projects with experienced programmers, don't just read what they write. There's a natural alignment of incentives when you're working on the same codebase as someone who actually knows what they're doing. Any mistake you make, they have to fix, and so they have good reasons to…

> look at source code A smart high-school student who enjoys a challenge comes up to you and asks which projects to look at, and (if you say more than one) which one to start with. What do you say?

Best option is actually to get a job where you'll be working with other senior programmers and then understand your company's source code. That's how I did it - my first job had Ken Arnold as the CTO, then when I got to Google I'd lurk on Jeff Dean or Rob Pike's code reviews (everything is public internally at Google, you can see what everyone's working on). The big advantage of this is that you understand the business context behind the code; it's really hard to understand code in isolation without understanding the purpose behind the code and the goals for which it was written. A secondary advantage is that you've got ready-made mentors.

If you can't get a job and need to go the open-source route, then Rust, Chromium, V8, Django, and the Linux Kernel are all good options. Again, the guiding principle is to pick software where you're familiar with the outside, so you have context when you go look at the inside. Reading software in isolation is hard, so you're often best off volunteering to fix a couple low-priority bugs on the bug queue, and then diving in to start with them. Existing volunteers will often point you to the right spot in the code to get started if you're doing productive work for them.

Re: The perils of programmer education in the bazaar

#28
I don't see the problem... we've got lots of free educational material, catering for all learning styles, and lots of commentary on it by others to help assist you in choosing what to use.

People are learning to code in record numbers

Teaching someone else to code has never been easier (and is getting easier all the time)

What exactly is going wrong that needs fixing?

Re: The perils of programmer education in the bazaar

#29

I don't see the problem... we've got lots of free educational material, catering for all learning styles, and lots of commentary on it by others to help assist you in choosing what to use. People are learning to code in record numbers Teaching someone else to code has never been easier (and is getting easier all the time) What exactly is going wrong that needs fixing?

I feel like I addressed this very directly in the article, but I'll repost the main points of "what's wrong" here for further discussion...

This economic model is so ingrained in our DNA, that we hardly ever question it, and many would go as far as to hold it up as a triumph. But the truth is, even if this system works at the grand scale, it’s hurting both learners and teachers in countless subtle and not-so-subtle ways. Here are just a few:

1) The system we’ve created is assumed to be a meritocracy, but is actually driven far more by popularity and market trends than it is by the quality, relevance, depth, and effectiveness of our learning materials. Although it is far from a zero-sum game, the current model is much more competitive than it is cooperative, and so suffers the consequences that come along with any competitive environment.

2) Because being highly skilled at both writing and software development is rare, those who can do it well are often get the most attention and influence from the software world, turning these folks into “thought leaders” that drive the overall direction of the community.

3) Producing high-quality educational resources is obscenely, ridiculously difficult and time consuming. So the people who can invest the effort are typically either from a position of economic advantage, or are backed by monied interests.

4) As a result, the materials that get produced, and the topics that get covered widely are based on where the money and social buzz is at right now. Those who are doing original research, particularly things that are experimental or exploratory in nature, are not well supported at all.

5) Because we’ve tied blogging and teaching and tweeting to hireability, plenty of people enter into the bazaar not because they particularly want to, but because they must do so in order to “prove their worth” to potential employers or clients. Again, this clearly benefits those who have lots of time and resources to burn, and burdens everyone else with massive amounts of shadow work. We cannot be surprised at the lack of socioeconomic and cultural diversity in light of this point.

6) The success of the few enables the selling of dreams to the many, creating a cottage industry of infomarketers. In effect, these are the folks who sell pickaxes and maps to gold prospectors, and it’s no surprise that their business is booming. Some of these folks are brilliant and insightful, but many are hucksters.

In light of all this, we cannot say “this is just how the internet works”, as true as that statement is now. We have to ask, how do we make things better for our future selves and those who will come after us down this road?

Re: The perils of programmer education in the bazaar

#30
post #29

I don't see the problem... we've got lots of free educational material, catering for all learning styles, and lots of commentary on it by others to help assist you in choosing what to use. People are learning to code in record numbers Teaching someone else to code has never been easier (and is getting easier all the time) What exactly is going wrong that needs fixing?

I feel like I addressed this very directly in the article, but I'll repost the main points of "what's wrong" here for further discussion... This economic model is so ingrained in our DNA, that we hardly ever question it, and many would go as far as to hold it up as a triumph. But the truth is, even if this system works at the grand scale, it’s hurting both learners and teachers in countless subtle and not-so-subtle w…

OK, yeah, I don't agree with your basic premises at all then. I read all these points the first time and was left with "and the problem is what?"

People who are good at writing educational materials need to be paid to do this, because it's hard and takes a long time. I don't see any possible objection to this.

Since money and social "buzz" follow the interest of many people, it seems obvious to me that the educational resources should be focused on those areas instead of periphery areas that few people are interested in.

Other people have said this, but favouring people with good communication skills in the job market is part of a functioning meritocracy.

The reason for the lack of diversity has very little to do with educational resources available on the internet and much more to do with cultural attitudes in the West. SE Asian countries have much greater participation by women and they use the same teaching resources.

I smell a political ideology being thinly justified by some talking points here. But I'm open to being wrong...

Post reply on HN