7 ms·
Zed Shaw completes mongrel2 manual
- elblanco 16y agoZed is clearly in the wrong business. He's such a prolific writer, he should really be rewriting and updating the O'reilly catalog.
- mdg 16y agoI would pay cash for "Learn HTTP the hard way"
- stcredzero 16y agoI'm running an informal "Learn Python the Hard Way" study session on Tuesdays at Antidote Coffeehouse in Houston with some friends of mine. I have some nerdy non-programmer friends who have long expressed an interest in learning how to program, and we've tried a few different things ("NAND to Tetris" and a a different type-in Python games tutorial) but "The Hard Way" is much better focused on the complete programming newbie. I've also taught Comp Sci 101/102 as a grad school TA. I have to say that "The Hard Way" is markedly better than all the other attempts at a tutorial for the complete programming newb I've seen. A valuable area to target: Concurrency Optimization. Another: Low-Level Optimization and Memory Hierarchy. Books on these already exist, but Zed has the attention of a large swathe of the programming populace that could really use more awareness on these topics. That potential energy could be converted to book sales or sales of some sort.
- cglee 16y agoI wish I had heard of your group earlier. Are you guys still taking newcomers to your group?
- stcredzero 16y agoWell, if you want to sit with us at Antidote, there's no reason we would stop you! EDIT: Translation - sure let's hang out. Seems worth a try. You can send email to this user name at yahoo dot com.
- cglee 16y agoAwesome. I'll shoot you an email when I'm back in town.
- BvS 16y agoJust started with "Learning Python the Hard Way" and would love to join but unfortunatley I'm living in Germany... ;-(
- zedshaw 16y agoHey! This is awesome. Can you do me a favor and take notes on lessons that they screw up, then submit bug reports? I put it out there and then I know people are using it but I don't get any feedback. Short of running my own intro class I can't find any other way to get information on whether it's working. Either it's working so damn well nobody needs to tell me because they end up writing their next million dollar idea a week later, or it's really not working and people are just not bothering to tell me. Thanks.
- stcredzero 16y agoSure thing, Zed. I'll plant the idea of remembering the stumbling points and generating feedback. Two of my friends have commented that they really like the snarky humor. I think it's a part of what keeps them chugging through the designed-to-generate-errors-you-must-debug drudgery. EDIT: Going back over the book, Exercise 0 caused one of my friends some confusion. The other sailed through it just fine. The confused one is a Windows user and hadn't seen the command line since Windows 3.1. The non-confused one has an Ubuntu netbook. Confusion was over what constituted commands to type in and what was the part you should see. The mode switch between the Python prompt and the CMD command line also took a few minutes of explaining.
- zedshaw 16y agoAh interesting, yeah I don't have windows so someone else submitted those instructions. I'll go and try to do them myself and see if they can be improved. Although, I think for windows folks this will be a big hurdle at first either way.
- igorgue 16y agoAs far I know, he was writing a book about writing servers or protocols.
- jpeterson 16y agoHe'll have to learn how to write without insulting and alienating half his audience.
- pragmatic 16y agoActually, I think that's his appeal. Too much of the tech writers are a little too generous on the tech they cover (MSDN magazine, etc). What you need is someone with decent taste to say this sucks, that's cool, here's why.
- stcredzero 16y agoActually, he'd make a fantastic tag-team with _Why. It would be a little like Abbie Hoffman & G. Gordon Liddy on the same speaking tour. Not to say these guys are on analogous points of the political spectrum (couldn't care less) but that they have markedly different points of view and would have a very interesting antagonism. I have no idea how those two would ever co-write a book though. I bet that would sell, however.
- jpeterson 16y agoLet me clarify what I mean. Zed usually takes this approach: "Here is something that idiot programmers do; let me show you the right way." Half his audience will read this and think, "Gee, I don't want to be an idiot--I should continue reading!". The other half will take it as an insult, or just find it to be in bad taste, and put the book down. A good writer should be able to get across his message without insults.
- zedshaw 16y agoA good writer entertains readers and makes them think while getting his point across. Boring writers try to not offend anyone.
- deleted 16y ago[deleted]
- 16y ago
- smiler 16y agoHe might just be better off writing his own and self-publishing. I would definitely pay for anything by Zed on .net - I've not found any readable alt.net authors - Ayende just confuses me! Can anyone recommend anyone?
- euroclydon 16y agoJon Skeet
- JoachimSchipper 16y ago"Clearly in the wrong business" - well, he can code too...
- nailer 16y ago"TCP Programmers think these are streamed sequential messages, so if they send a ”message” that’s 10k long then when the receiver gets it and read from the TCP socket they get a single 10k message in reply. This only works in small messages and not on the internet, so it’s easy to see how it would seem to work that way. The reality is you can get messages of any size, and without some framing mechanism you wouldn’t know where one messages ends or beings. TCP is a streaming protocol. UDP Programmers think UDP sockets are single fast reliable messages that can be sent to one or more target clients. They at least know UDP has a fixed upper bound size, but they don’t get that UDP is very unreliable and that the addressing is fairly weak. " Writing tip: start by saying what they are, rather than what they're not. People may not have existing notions to shatter. A lot of Django documentation suffers from this too: 'before frameworks, you would have..., but not with Django' isn't relevant if you're learning to program with a framework.
- lkozma 16y agoThis might be a programmer's quirk, I remember when I wrote my thesis, most of the corrections of my advisor were of this nature. Whenever I presented something I would start by enumerating the bugs and limitations, before finally saying what it actually could do.
- stcredzero 16y agoCognitively, it's not the best ordering for the information. Better to anchor something starting with the capabilities. Starting with the limitations is starting with zero, then subtracting. It's much harder to imagine negative dollars than it is to imagine a pile of cash with a bit of it taken away.
- lkozma 16y agoSure, I agree, I didn't say it was a good way to present things, just that it might have something to do with how programmers think.
- zedshaw 16y ago
- mpk 16y agoYeah, completes documentation on a product he announced an intention to develop 5 seconds ago (internet time). Gotta respect the guy's work ethic and coding chops!
- ewald 16y agoPeople can say whatever they want about Zed, but they can't say he doesn't get things done.
- mkramlich 16y agoTons of people are getting things done everyday around the world. Zed happens to be part of the subset who are promoting themselves agressively on the web. Not that I think that self-promotion is bad. But it's important to recognize the distinction between promotion and productivity.
- bandushrew 16y agoI have been thoroughly impressed with how productive Zed can be. whether or not he is good at promoting himself - and he seems to negatively affect enough people that the point is arguable - he is good at getting things done, people who fail to acknowledge that reveal more about themselves than they do about Zed.
- mishmash 16y agoZed doesn't get things done. See, people can too say it. ;)
- zedshaw 16y agoEhem, wrote the manual and the features the manual describes (with some help). People always forget the code.
- zrail 16y agoIt's a minor point, but procer is basically exactly the tool I've been looking for. We're using runit to launch processes and getting runit to actually, you know, run has been a major pain in the ass, and it's really weird. And the c code is horrible. Without having looked at the code, is there any way that procer could be made a standalone thing? I don't think I'll be able to get traction on mongrel2 anytime soon, but procer I could use today. Edit: I looked at the code. Looks pretty tied into mongrel2. I might just take the ideas and run with it, though.
- zedshaw 16y agoSure, it still needs a bit of additional features that are nice to haves, and get some testing and stuff, but it could be made as a standalone thing. http://mongrel2.org/tktview/ff6e599f6bdb7dc63387aaad48f10f84bbd3223f http://mongrel2.org/tktview/ff6e599f6bdb7dc63387aaad48f10f84... There ya go.
- jamii 16y agoI was trying to get runit to work last week and it consistently broke my terminal. After calling runit nothing I typed would show up, including newline.