Prev: TMA Assembler?
Next: pshufb
From: Laurent D.A.M. MENTEN on
Herbert Kleebauer wrote:
> KiLVaiDeN wrote:
>
>> way of doing it; Using a 3rd party library is different than using the
>> base windowing system, as it's possible under Win32. When we'll be able
>> to use Xlib from Assembly, we'd have made a great advance in Assembly
>> programming under Linux for GUI applications; Not yet. So Rene was
>> right, once again, about his assumption.
>
> Xlib also is nothing but a "3rd party library". But you can directly
> connect to the Xserver without using Xlib. A few weeks ago Linux
> assembly code was posted here to open a Window. Now you can be the pioneer
> and find out the rest (output text and graphics, get mouse and keyboard events).

here is the X11 protocol documentation:

http://www.xfree86.org/current/specindex.html

see the core protocol.
From: Herbert Kleebauer on
"T.M. Sommers" wrote:
> Herbert Kleebauer wrote:

> > But now you understand how a tire is build, you know the weakness and
> > strongness of a tire, you know about the problems which arise when
> > you drive to fast in a curve or if the temperature is to high or to low.
>
> But you, not being a tire expert, have probably built a tire with
> different characteristics from those built by tire engineers with
> years of training and experience.

That doesn't matter. It only matters, that you understand the
principles, not the details.


> >>On the
> >>other hand, if you had used existing libraries, you would have a
> >>pile of applications already built.
> >
> > That's the amateur approach,
>
> Hardly. Let's both bid on a contract, with you including the
> extra time and cost to build everything yourself, and me using
> existing libraries. Who do you think will get the contract?

Wrong example. Let's both bid on a contract, me with having already
spend much time analyzing the internals of the library, and you having
read the user manual of the library. Who do you think will get the
contract?


> > a professional has to understand the
> > advantages and disadvantages of the tools he uses.
>
> You can do that without rebuilding those tools. Do carpenters
> make their own saws and hammers?

I don't want to rebuild those tools, I want to understand the internal
working of those tools. No, a carpenter doesn't make his own saw.
But he has to understand how a saw works (size and angel of the
saw-tooth, type of the metal) or he will not be able to select
the proper saw.


> If you really believed in your approach, your first step would be
> to reinvent mathematics. Then you would reinvent solid-state
> physics. Then electronics. Then you would design and build your
> own hardware. Then you would create your own operating system.

Yes, that's exactly what you learn at school and university. And that
is the prerequisite for a doing a good job.


> Then, and only then, you could start reinventing X. Meanwhile,
> the rest of us will be getting some useful work done.

If you mean with "rest of us" people who think they can do
anything without having first to learn, then I doubt they
ever will do "some useful work".
From: randyhyde@earthlink.net on

Herbert Kleebauer wrote:
> >
> > Hardly. Let's both bid on a contract, with you including the
> > extra time and cost to build everything yourself, and me using
> > existing libraries. Who do you think will get the contract?
>
> Wrong example. Let's both bid on a contract, me with having already
> spend much time analyzing the internals of the library, and you having
> read the user manual of the library. Who do you think will get the
> contract?

He will. Because although you know how the library code works, you've
*still* got to write it all and test it. He needs only call the code.
Therefore, he can bid a much lower price because he's going to do less
work.

Cheers,
Randy Hyde

From: Charles A. Crayne on
On 7 Nov 2006 15:48:56 -0800
"randyhyde(a)earthlink.net" <randyhyde(a)earthlink.net> wrote:

:He will. Because although you know how the library code works, you've
:*still* got to write it all and test it. He needs only call the code.

No, Joe will get the contract, because he goes bowling with the customer,
every Friday night.
From: T.M. Sommers on
Herbert Kleebauer wrote:
> "T.M. Sommers" wrote:
>>Herbert Kleebauer wrote:
>
>>>But now you understand how a tire is build, you know the weakness and
>>>strongness of a tire, you know about the problems which arise when
>>>you drive to fast in a curve or if the temperature is to high or to low.
>>
>>But you, not being a tire expert, have probably built a tire with
>>different characteristics from those built by tire engineers with
>>years of training and experience.
>
> That doesn't matter. It only matters, that you understand the
> principles, not the details.

And for that you don't have to rebuild it yourself, or reverse
engineer it, or anything like that. Usually reading the
documentation will tell you.

>>>>On the
>>>>other hand, if you had used existing libraries, you would have a
>>>>pile of applications already built.
>>>
>>>That's the amateur approach,
>>
>>Hardly. Let's both bid on a contract, with you including the
>>extra time and cost to build everything yourself, and me using
>>existing libraries. Who do you think will get the contract?
>
> Wrong example. Let's both bid on a contract, me with having already
> spend much time analyzing the internals of the library, and you having
> read the user manual of the library. Who do you think will get the
> contract?

That is cheating; you are giving yourself a head start by
assuming that all your analysis is free. It isn't. The only
fair test would be with a library not seen by either party before.

>>>a professional has to understand the
>>>advantages and disadvantages of the tools he uses.
>>
>>You can do that without rebuilding those tools. Do carpenters
>>make their own saws and hammers?
>
> I don't want to rebuild those tools, I want to understand the internal
> working of those tools. No, a carpenter doesn't make his own saw.
> But he has to understand how a saw works (size and angel of the
> saw-tooth, type of the metal) or he will not be able to select
> the proper saw.

But you are proposing (in the case of software) a much deeper
knowledge than that. The carpenter's knowledge of his tools is a
user's knowledge, not a tool designer's knowledge. The (typical)
carpenter is not able to calculate the stress on the saw teeth,
for instance.

>>If you really believed in your approach, your first step would be
>>to reinvent mathematics. Then you would reinvent solid-state
>>physics. Then electronics. Then you would design and build your
>>own hardware. Then you would create your own operating system.
>
> Yes, that's exactly what you learn at school and university. And that
> is the prerequisite for a doing a good job.

You can't be serious. Do you really think that in order to be a
good programmer you need to be able to prove the Lebesgue
Covering Theorem? Or know all about Cooper pairs and solitons?
Or be able to build an adder out of discrete components? Do you
really think that in order to build a good, solid, reliable,
correct X program you need to know the details of the X protocol?

>>Then, and only then, you could start reinventing X. Meanwhile,
>>the rest of us will be getting some useful work done.
>
> If you mean with "rest of us" people who think they can do
> anything without having first to learn, then I doubt they
> ever will do "some useful work".

The rest of us are those who understand that abstraction is good,
that division of labor is efficient, and that their are limits to
what one person can usefully do, and that a sensible person will
rely on the work of others with more expertise in their fields.
I do not grow my own food, or built my own house or car, or
refine my own gasoline. I am content to let others do those
jobs, just as I am content to let others build the hardware,
operating systems, compilers, and libraries that I use.

I am not supporting general ignorance. I am saying that time is
limited, and that it should be spent in a way that produces the
most effective results.

--
Thomas M. Sommers -- tms(a)nj.net -- AB2SB


First  |  Prev  |  Next  |  Last
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14
Prev: TMA Assembler?
Next: pshufb