Mailing List Archive
tlug.jp Mailing List tlug archive tlug Mailing List Archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]Re: [tlug] What is Code?
- Date: Mon, 13 Jul 2015 22:42:15 +0900
- From: "Stephen J. Turnbull" <stephen@example.com>
- Subject: Re: [tlug] What is Code?
- References: <20150614080354.GA10844@localhost.localdomain> <CABHGxq4=xoBGgajpLZtE=ZsRZvfrh9xBXBxXU=SqCxMkX30cPg@mail.gmail.com> <20150615123509.GA6868@localhost.localdomain> <87zj41ggef.fsf@uwakimon.sk.tsukuba.ac.jp> <20150616111631.GA16252@localhost.localdomain> <20150618090834.edef795e367cd66966d2184e@kinali.ch> <87h9q0fuuw.fsf@uwakimon.sk.tsukuba.ac.jp> <20150713100204.c8140b7552d331f6dbc47e3f@kinali.ch>
Attila Kinali writes: > Yes, these books exist, and I have read half of them. But that doesn't > mean everyone has. Actually, most people who program I know of, have not. So? I would say that just means that those people are way ignorant of the lore of their field. That's characteristic of amateurs, apprentices, and journeymen in every field. It's not a sin to be in such a state of ignorance, but its prevalence is not evidence that the lore doesn't exist or is impossible to find, either. > And people who teach programming seem to be oblivious to those... > or deliberately choose the easy way of teaching. Well, Matz (of Ruby fame) told me that "in Japan, 95% [or some very large percentage] of people with software engineering in their job titles never took a programming course" [in school or on the job]. In other words, you can pay them as much as you like but they'll always be amateurs. :-) I grant that there is a serious teaching problem in some universities: I can't say that my colleagues are much help to their students in learning the lore of their fields. The approach is more to focus on some extremely narrow problem in a narrow field, narrow enough that there are only about ten papers and one author (your advisor ...) and pray you get your paper written before somebody else publishes. The odds aren't too bad, since the only folks likely to publish in that narrow area are your classmates.... > Programming is something that is kind of similar, but yet different. > There is some theory how to do X, but not much of it. There are many > obvious ways how to do it, but only a few make sense. Choosing the > right one requires a lot of experience. And there isnt much theory > that could help you. In fact, there actually does seem to be quite a bit of theory out there. For example, right now there's an extended discussion on Python-Dev about how to choose the right model: coroutines, threads, processes, or the new asyncio module. It's not written down yet, but the language wonks (not limited to Dutchmen![1]) do seem to have quite of bit of oral tradition among them, and there's a consensus that it's time to write it down. There's also a lot of theory (especially in the Agile community) about how to get over writer's block and avoid "stupid logic mistakes", on the "human" or "craft" side of programming. I think the real problem is that most people are stuck in "job rut", where they think they don't have time to immerse in the lore of their craft. And Japan has a whole set of special problems (not "worse", just "different"). The structural problems of Japanese organizations are to a great extent made up for by the tradition of mentoring institutionalized in the sensei-deshi and sempai-kohai relationships. The reduction is "permanent employment" positions is going to change the equation, though. > I wouldn't say unfamiliar, but rather have never applied it to > "that field". Thus it doesn't seem to cross their mind that one > could do that as well. Just take cooking. People know that you > have try a few things and experiment a bit until you can make > that stew just right. But sit them infront of a computer and they > will never get that they have to experiment with the computer to > get it to work as they want. Programming is very different from cooking, or engineering with physical devices, for that matter, though. You get direct sensory feedback, and for cooking and many physical problems the response functions are continuous. Humans have a highly tuned set of automatic systems for dealing with sensory feedback. But in programming you can't take advantage of those systems -- which actually are highly applicable even to natural language use. > Hehe.. I'm currently working on metastability of electronical (logic) > circuits. After a long discussion on what the state of art is, > we concluded that most people just ignore it, unconsciously fearing it. > Over time, it became a craft to handle it. A craft very few specialists > in high towers know about. That seems weird to me. After all, isn't the original flipflop a device that works precisely because of metastability? In fact, isn't metastability the property of systems that makes computer logic possible? Maybe I'm thinking of a different word though. Steve Footnotes: [1] python -m this | head -16 | tail -2
- Follow-Ups:
- Re: [tlug] What is Code?
- From: Joe Larabell
- References:
- Re: [tlug] What is Code?
- From: Attila Kinali
Home | Main Index | Thread Index
- Prev by Date: Re: [tlug] Program to Save / Remap Bad Sectors
- Next by Date: Re: [tlug] What is Code?
- Previous by thread: Re: [tlug] What is Code?
- Next by thread: Re: [tlug] What is Code?
- Index(es):
Home Page Mailing List Linux and Japan TLUG Members Links