It's fair to say that computer science as a discipline has grown so deeply in many areas that I don't think any one person can understand both the bredth and the depth of every sub-concentration of the discipline. There are things about computer graphics (i.e. derivations of differential equations in simulating 3-d smoke) that people on list won't ever know or care about, but it's still important to someone :). Knowing how to write hello world in x86 asm or even then how that asm gets translated into bits is interesting and writing it by hand makes it "real", but I don't think Ken's saying you're gonna go out and write a word processor using the same techniques; perhaps only critical components or even just to optimize. These black and white arguments always seem so counter productive :). On 4/10/11, Littlefield, Tyler <tyler@xxxxxxxxxxxxx> wrote: > O, excuse me, master. I need to kneel down and be in awe of your $120000 > hire and your vast experience. because in the end, what you say is right > because you have the experience and we all just need to listen to -you- > and -ken-, regardless of whether or not you might be speaking something > near fact or not. > On 4/10/2011 6:40 AM, Sina Bahram wrote: >> Is that why I hired someone at 120,000 a year to do exactly that? >> >> *shrug*, but enjoy whatever it is you feel is better, given your years of >> experience in the job market, of course. >> >> If I were you, I'd be making the argument that money might be the only >> reason to learn such things. That, too, would be a flawed >> argument of course, but at least one closer to reality. >> >> >> Take care, >> Sina >> >> >> -----Original Message----- >> From: programmingblind-bounce@xxxxxxxxxxxxx >> [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Littlefield, >> Tyler >> Sent: Saturday, April 09, 2011 10:33 PM >> To: programmingblind@xxxxxxxxxxxxx >> Subject: Re: Searching for blind programmer to start a school for blind >> programmers >> >> apparently you missed 90% of this discussion. At no point did Chris say >> that low-level was not worth understanding. He's pointing out that this >> "I'm a hacker from way back who can write out machine language," is >> stupid and really makes no sense in any sort of setting. IT's good to >> know, good to understand, but it's not like you're going to get a job >> writing machine language generally. Maybe if you make your own processor >> it'd be useful. >> On 4/9/2011 8:27 PM, Sina Bahram wrote: >>> I haven't read 65% of the messages in this thread, frankly because the >>> SNR is far too low. >>> >>> So can you guys please just listen to Ken on this one? >>> >>> low level is important to know and understand. End of conversation. >>> >>> Now go do something fun. It's Saturday night. >>> >>> Take care, >>> Sina >>> >>> >>> >>> -----Original Message----- >>> From: programmingblind-bounce@xxxxxxxxxxxxx >>> [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Ken Perry >>> Sent: Saturday, April 09, 2011 8:06 PM >>> To: programmingblind@xxxxxxxxxxxxx >>> Subject: RE: Searching for blind programmer to start a school for blind >>> programmers >>> >>> I think we are just going to have to disagree on this. While I doubt >>> anyone >>> is going to rush out and write a bit of Machine language I think it is >>> still >>> important to know how. It's sort of like saying it's not important to >>> know >>> that there is a linker and what it does most people on this list will >>> never >>> know what the linker does because they deal mainly with High level >>> languages >>> but that doesn't mean the linker is not important. Most people will >>> never >>> write machine language but when creating electronic circuits with smaller >>> chips it is a useful tool. True you may never hand write it but in >>> creating >>> hardware it is very useful in reading it. I just found learning to write >>> it >>> was very useful back in the good old Hack hardware cartridges days. Sure >>> the Intel book has both got bigger and more complex but I just saw a post >>> where a guy wrote a hello world in Machine language just to prove it >>> could >>> be done. Now I will point out he did it in Linux and he had to make his >>> own >>> linker of sorts well a shell linker all it did was write the file with >>> the >>> numbers he wanted but I think he did that just so he could use a normal >>> editor and he had to add the Aelf stuff on top but he did it in 120 bites >>> which I find pretty impressive since 80 of the bites were AELF stuff. >>> Anyway I am sure we are boring most of the people on this list. >>> >>> Ken >>> >>> >>> >>> -----Original Message----- >>> From: programmingblind-bounce@xxxxxxxxxxxxx >>> [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Christopher >>> Coale >>> Sent: Saturday, April 09, 2011 7:39 PM >>> To: programmingblind@xxxxxxxxxxxxx >>> Subject: Re: Searching for blind programmer to start a school for blind >>> programmers >>> >>> Wait, you are adding new stuff in here. Yes, to me, it is important to >>> know how to optimize code for either size or speed. It is also important >>> to know how programs are executed and created (knowing the PE32 format, >>> for example); however, knowing how to write a program by scratch by >>> using a hex editor and writing pure byte code is not important. And, you >>> are misinterpreting my reason for saying it is not important. I'm not >>> saying it's not important because it is nasty studying. I'm saying it is >>> not important because it is simply not practical and teaches you no more >>> than studying assembly and operating systems (assuming you are actually >>> learning). And I didn't say it wasn't useful, either. Knowledge for >>> knowledge's sake is always good. But, I said it wasn't important. You >>> seem to be mixing up the knowledge required to do something and the >>> knowledge gained from doing said thing. In order to start editing a >>> program using a hex editor, you have to already have the knowledge to do >>> it (as in, you have to know that there is a data section, a symbolic >>> table, etc.). You gain no new knowledge (aside from knowing how to edit >>> executables) from editing, and/or writing, executables from within a >>> hex-editor. >>> >>> On 4/9/2011 3:59 PM, Ken Perry wrote: >>>> Oh really? I found it very useful knowing how to minimize code and data >>>> sections by hand. It explains what compilers and linkers have to go >>> through >>>> and ways to get around problems that exist. It even is nice knowing how >>> exe >>>> files are laid out. I agree that it's a nasty bit of study to get to >>>> that >>>> point but I totally disagree that the knowledge is not useful. In fact >>>> if >>>> you ever want to get involved with the GNU compiler group believe me >>>> it's >>>> useful. >>>> >>>> >>>> Ken >>>> >>>> -----Original Message----- >>>> From: programmingblind-bounce@xxxxxxxxxxxxx >>>> [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Christopher >>>> Coale >>>> Sent: Saturday, April 09, 2011 6:52 PM >>>> To: programmingblind@xxxxxxxxxxxxx >>>> Subject: Re: Searching for blind programmer to start a school for blind >>>> programmers >>>> >>>> My knowledge of how the processor works (by means of knowing assembly >>>> and OS development) is useful. Knowing how to write a program using only >>>> byte code is not (and I couldn't do it without many free hours and lots >>>> of reference manuals, and even then it would be a difficult task). Not >>>> to belittle your knowledge, but I'm just saying that being able to write >>>> a program using a hex-editor (and if you can, more power to you) is not >>>> very helpful in understanding how computers work; learning assembly and >>>> learning operating system design is where it is important, I would say. >>>> >>>> On 4/9/2011 3:45 PM, Ken Perry wrote: >>>>> Yes and us true geeks used to dream hex in our sleep. I think there >>>>> are >>>>> still some of us left and I am no longer one, I know of all the >>>>> possibilities and I can still code in ASM for burning chips but I no >>>> longer >>>>> dream in op codes and registers, memory locations and IRQ's. All I was >>>>> saying is learning of the existence and how it works is invaluable to a >>>>> programmer even today. Are you telling me your knowledge of the >>>>> subject >>>> is >>>>> not useful? >>>>> >>>>> Ken >>>>> >>>>> -----Original Message----- >>>>> From: programmingblind-bounce@xxxxxxxxxxxxx >>>>> [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Christopher >>>>> Coale >>>>> Sent: Saturday, April 09, 2011 3:30 PM >>>>> To: programmingblind@xxxxxxxxxxxxx >>>>> Subject: Re: Searching for blind programmer to start a school for blind >>>>> programmers >>>>> >>>>> I didn't say it was impossible (after all, how else would a compiler >>>>> work?) I said that it was asinine and impractical. I say this because >>>>> the x86 instruction set is amazingly complex. Sure someone could use a >>>>> debugger to look around at machine code, that's not hard at all (in >>>>> fact, I do it a lot with vc++ to debug things and get performance >>>>> boosts). But, writing a binary file from scratch? I see it being >>>>> possible, but you would need to know the encoding of every instruction >>>>> you use. For example, "int imm8" is apparently 0xCD + the immediate >>>>> byte, so to do int 80h, you'd have 0xCD80. That is fairly simple, but >>>>> the "mov" instructions where you can have memory, immediate, and >>>>> register operands are difficult, and then for each memory, immediate, >>>>> and register operand you have an 8-bit, 16-bit, 32-bit, and for x64, >>>>> 64-bit versions. It's no small feat to write a binary by hand. >>>>> >>>>>> Laugh yes I have read them and there was a time I could write some >>>>>> very >>>>> good >>>>>> stuff with nothing but a debugger. Just because it's nasty don't mean >>>>> it's >>>>>> impossible. I was not even in the same class of some of the guys I >>>>>> used >>>>> to >>>>>> hang out with. I knew one that won a programming contest who wrote a >>>>>> program to display a naked woman with nothing more than Assembler and >>>>>> a >>>>> text >>>>>> editor. As for machine language you can write it on your own if you >>> know >>>>>> enough. Unfortunately time has dulled my memory of useless interrupts >>>>>> because we have so much easier ways to do things now. I think I could >>>>>> probably get a command line app to run with nothing but a hex editor >>>>>> but >>>>>> calling the GUI might be beyond me because you would have to do some >>>>> serious >>>>>> digging to get that to work and sometimes the information is just not >>>>>> available anymore. >>>>>> >>>>>> Ken >>>>>> >>>>>> >>>>>> Ken >>>>>> >>>>>> -----Original Message----- >>>>>> From: programmingblind-bounce@xxxxxxxxxxxxx >>>>>> [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of >>>>>> Christopher >>>>>> Coale >>>>>> Sent: Saturday, April 09, 2011 2:23 AM >>>>>> To: programmingblind@xxxxxxxxxxxxx >>>>>> Subject: Re: Searching for blind programmer to start a school for >>>>>> blind >>>>>> programmers >>>>>> >>>>>> What? Have you ever read the x86 information sheets? Teaching someone >>>>>> assembly is a good way to teach them how a computer works -- having >>>>>> them >>>>>> write programs in pure byte code (especially for x86) is both asinine >>>>>> and impractical. Maybe not so much for an extremely extremely simple >>>>>> virtual machine or basic processor, but complex instruction sets like >>>>>> x86 are flat-out beyond writing op-codes by hand. If you don't believe >>>>>> me, just take a poke at the NASM source code. ;) >>>>>> >>>>>> On 4/8/2011 6:47 PM, Ken Perry wrote: >>>>>>> I am not quite as old as you but I come from the same time zone. I >>>>>>> had >>>>> to >>>>>>> learn assembler to hack games on the Vic 20 and the commodore 64 and >>> the >>>>>> TI >>>>>>> but more than that when I joined the Air Force and took on >>>>>>> Electronics >>>>>>> Assembler made my life easier. Then later in life after I lost my >>>>>>> site >>>> I >>>>>>> took software engineering and had to burn chips and while we could >>>>>>> have >>>>>>> wrote stuff in C it was much easier to control the registers and >>>>>>> stuff >>>>>> with >>>>>>> ASM. If we used C we allot of the time had to use special assembler >>>>>>> keywords to get things to work quite right. If you look on the Fruit >>>>>> Basket >>>>>>> page I was also insane enough to write the fruit basket in Assembler >>> for >>>>>>> windows xp and it runs in vista. I am not sure if that runs in >>>>>>> Windows >>>> 7 >>>>>>> but I should revisit it and make sure it does. Lost knowledge is not >>>>>>> a >>>>>> good >>>>>>> thing. Assembler may not be a way I would write a project now days >>>>>>> but >>>>> if >>>>>>> you want to teach someone how your computers work there is only one >>>> thing >>>>>>> better. The one thing better is straight opt codes using a debugger >>> and >>>>>>> watching what is going on. Well you could also write straight binary >>>>>> files >>>>>>> like a good Fortran coder but who does that any more. That what I >>>> should >>>>>> do >>>>>>> is create the fruit basket with nothing but a hex editor. >>>>>>> >>>>>>> Ken >>>>>>> >>>>>>> >>>>>>> -----Original Message----- >>>>>>> From: programmingblind-bounce@xxxxxxxxxxxxx >>>>>>> [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Bill Cox >>>>>>> Sent: Friday, April 08, 2011 11:40 AM >>>>>>> To: programmingblind@xxxxxxxxxxxxx >>>>>>> Subject: Re: Searching for blind programmer to start a school for >>>>>>> blind >>>>>>> programmers >>>>>>> >>>>>>> On Fri, Apr 8, 2011 at 11:16 AM, Littlefield, >>> Tyler<tyler@xxxxxxxxxxxxx> >>>>>>> wrote: >>>>>>>>> Assember? Really? You must be almost as old >>>>>>>>> as me! I can't even find people who care about speed or memory >>>>>>>>> usage >>>>>>>>> anymore. >>>>>>>> I love assembler. It's a great way to teach people what's going on >>>> under >>>>>>> the >>>>>>>> hood and make them think about what they do. Every time I see >>>>>>>> someone >>>>>>>> reserve a 100k buffer just because, I cringe. :) >>>>>>> We must be from the same generation. I'm 47, and learned to program >>>>>>> in machine code on an 8080 based Intel board with a hex keypad and >>>>>>> some LEDs. It was a couple of years before I found out that people >>>>>>> programmed using assemblers, rather than entering hex by hand. >>>>>>> >>>>>>> I worry that the new generation's early experience with computers is >>>>>>> amazing games and technology so complex they could never >>>>>>> realistically >>>>>>> hope to understand it. What's the natural path now days for kids to >>>>>>> go from playing computer games to writing them? On the old Apple >>>>>>> IIs, >>>>>>> you just typed list instead of run, and there was all the code. >>>>>>> >>>>>>> Bill >>>>>>> __________ >>>>>>> View the list's information and change your settings at >>>>>>> //www.freelists.org/list/programmingblind >>>>>>> >>>>>>> __________ >>>>>>> View the list's information and change your settings at >>>>>>> //www.freelists.org/list/programmingblind >>>>>>> >>>>>> __________ >>>>>> View the list's information and change your settings at >>>>>> //www.freelists.org/list/programmingblind >>>>>> >>>>>> __________ >>>>>> View the list's information and change your settings at >>>>>> //www.freelists.org/list/programmingblind >>>>>> >>>>> __________ >>>>> View the list's information and change your settings at >>>>> //www.freelists.org/list/programmingblind >>>>> >>>>> __________ >>>>> View the list's information and change your settings at >>>>> //www.freelists.org/list/programmingblind >>>>> >>>> __________ >>>> View the list's information and change your settings at >>>> //www.freelists.org/list/programmingblind >>>> >>>> __________ >>>> View the list's information and change your settings at >>>> //www.freelists.org/list/programmingblind >>>> >>> __________ >>> View the list's information and change your settings at >>> //www.freelists.org/list/programmingblind >>> >>> __________ >>> View the list's information and change your settings at >>> //www.freelists.org/list/programmingblind >>> >>> __________ >>> View the list's information and change your settings at >>> //www.freelists.org/list/programmingblind >>> >>> >> > > > -- > > Thanks, > Ty > > __________ > View the list's information and change your settings at > //www.freelists.org/list/programmingblind > > __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind