[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.programming

whats good to read on programming

kenobi

3/12/2016 4:58:00 PM

I got few days of time and would like to read
something that could improve my skills/knowledge
on something worthy /interesting/shining

Some ideas/links maybe?

(ewentualli we could discuss it)
27 Answers

Ben Bacarisse

3/12/2016 7:15:00 PM

0

fir <profesor.fir@gmail.com> writes:

> I got few days of time and would like to read
> something that could improve my skills/knowledge
> on something worthy /interesting/shining
>
> Some ideas/links maybe?

These may seem a bit dated since I read them quite some time ago, but I
think my favourite books on programming are the pair of collected CACM
columns by Jon Bentely: "Programming Pearls" and "More Programming
Pearls". I see there is a new edition of the first with new
material...

--
Ben.

kenobi

3/12/2016 7:36:00 PM

0

W dniu sobota, 12 marca 2016 20:15:30 UTC+1 uzytkownik Ben Bacarisse napisal:
> fir <profesor.fir@gmail.com> writes:
>
> > I got few days of time and would like to read
> > something that could improve my skills/knowledge
> > on something worthy /interesting/shining
> >
> > Some ideas/links maybe?
>
> These may seem a bit dated since I read them quite some time ago, but I
> think my favourite books on programming are the pair of collected CACM
> columns by Jon Bentely: "Programming Pearls" and "More Programming
> Pearls". I see there is a new edition of the first with new
> material...
>
> --
> Ben.

well indeed this seems good compact style writting - i readed the first piece on counting words

links here
https://tfetimes.com/wp-content/uploads/2015/04/ProgrammingPea...

can somebody explain me - is this hashing in c version perfect one? i mean it counts with no mistakes? if so why? (i know the idea of hashing but its inperfection always keeps me away - is there reliable way of perfect hashing on cases like that?

ram

3/12/2016 7:40:00 PM

0

Ben Bacarisse <ben.usenet@bsb.me.uk> writes:
>These may seem a bit dated since I read them quite some time ago, but I
>think my favourite books on programming are the pair of collected CACM
>columns by Jon Bentely: "Programming Pearls" and "More Programming
>Pearls". I see there is a new edition of the first with new
>material...

The Art Of Computer Programming
Design Patterns by Gamma, et. al.
Refactoring by Martin Fowler
Applying UML and Patterns, 3rd Ed. by Craig Larman
Structure and Interpretation of Computer Programs
Dragon Book by Aho et al.
Algorithms + Data Structures = Programs
Artificial Intelligence: A Modern Approach
Structured Systems Analysis (DeMarco)
Patterns of Enterprise Application Architecture by Fowler
Object Oriented Software Construction by Bertrand Meyer
Object Oriented Software Engineering by Ivar Jacobson
Code Complete, 2nd Ed. by Steve McConnell
Test-Driven Development by Kent Beck
The Pragmatic Programmer by Andrew Hunt
The Mythical Man-Month by Frederick Brooks
Domain Driven Design by Eric Evans
Working Effectively with Legacy Code by Michael Feathers

Mark Carroll

3/12/2016 7:46:00 PM

0

On 12 Mar 2016, fir wrote:

> I got few days of time and would like to read
> something that could improve my skills/knowledge
> on something worthy /interesting/shining
>
> Some ideas/links maybe?

I'm afraid that general texts aren't coming to my mind but now you have
me thinking about advanced texts for specific languages so I'll hijack
this subthread to ask about those. For instance, Paul Graham's "On Lisp"
is great and I am astonished that it remains out of print. Or, Joshua
Bloch's "Effective Java" is excellent stuff too. I wonder what other
such books exist for other programming languages, helping one transition
from competency to excellence.

-- Mark

ram

3/12/2016 7:56:00 PM

0

Mark Carroll <mtbc@bcs.org> writes:
>this subthread to ask about those. For instance, Paul Graham's "On Lisp"
>is great and I am astonished that it remains out of print. Or, Joshua
>Bloch's "Effective Java" is excellent stuff too. I wonder what other
>such books exist for other programming languages, helping one transition
>from competency to excellence.

Herb Sutter: Exceptional C++
Herb Sutter: More Exceptional C++
Scott Meyers: Effective C++
Scott Meyers: More Effective C++
Andrei Alexandrescu: Modern C++-Design


kenobi

3/12/2016 7:58:00 PM

0

W dniu sobota, 12 marca 2016 20:45:51 UTC+1 uzytkownik Mark Carroll napisal:
> On 12 Mar 2016, fir wrote:
>
> > I got few days of time and would like to read
> > something that could improve my skills/knowledge
> > on something worthy /interesting/shining
> >
> > Some ideas/links maybe?
>
> I'm afraid that general texts aren't coming to my mind but now you have
> me thinking about advanced texts for specific languages so I'll hijack
> this subthread to ask about those. For instance, Paul Graham's "On Lisp"
> is great and I am astonished that it remains out of print. Or, Joshua
> Bloch's "Effective Java" is excellent stuff too. I wonder what other
> such books exist for other programming languages, helping one transition
> from competency to excellence.
>
not necessary languages (as imo languages are only for writing programs and stopping on them is like learning english instead of writing books - you know what i mean) - maybe on some techniques and topics, may be something a bit specilised too - only to be interesting/shining and worth learning on a saturday - sunday
for fun and knowledge
(ps and should ba avaliable online)

kenobi

3/12/2016 7:59:00 PM

0

W dniu sobota, 12 marca 2016 20:45:51 UTC+1 uzytkownik Mark Carroll napisal:
> On 12 Mar 2016, fir wrote:
>
> > I got few days of time and would like to read
> > something that could improve my skills/knowledge
> > on something worthy /interesting/shining
> >
> > Some ideas/links maybe?
>
> I'm afraid that general texts aren't coming to my mind but now you have
> me thinking about advanced texts for specific languages so I'll hijack
> this subthread to ask about those. For instance, Paul Graham's "On Lisp"
> is great and I am astonished that it remains out of print. Or, Joshua
> Bloch's "Effective Java" is excellent stuff too. I wonder what other
> such books exist for other programming languages, helping one transition
> from competency to excellence.
>
> -- Mark

ps still i can also quickly look at those two, are they online?

Ben Bacarisse

3/12/2016 8:00:00 PM

0

fir <profesor.fir@gmail.com> writes:

> W dniu sobota, 12 marca 2016 20:15:30 UTC+1 użytkownik Ben Bacarisse napisaÅ?:
<snip>
>> These may seem a bit dated since I read them quite some time ago, but I
>> think my favourite books on programming are the pair of collected CACM
>> columns by Jon Bentely: "Programming Pearls" and "More Programming
>> Pearls". I see there is a new edition of the first with new
>> material...
>
> well indeed this seems good compact style writting - i readed the
> first piece on counting words
>
> links here
> https://tfetimes.com/wp-content/uploads/2015/04/ProgrammingPea...
>
> can somebody explain me - is this hashing in c version perfect one? i
> mean it counts with no mistakes? if so why?

The program in the book makes no mistakes because the table does not
rely only on the hash function.

> (i know the idea of
> hashing but its inperfection always keeps me away - is there reliable
> way of perfect hashing on cases like that?

Perfect hashing is a technical term for something rarely seen. When you
want to do a lot of lookups from a fixed set of keys very fast, you can
construct a function that maps the set of n keys to the numbers 0 to n-1
in such a way that every key maps to a distinct number (i.e. the
function is a bijection). This is called a perfect hash function.

Normal hashing works by handling the collisions, so the case where two
keys hash to the same value does not produce an error. There are many
ways to do this. The Bentley book uses a linked list, I think.

--
Ben.

Ben Bacarisse

3/12/2016 8:06:00 PM

0

ram@zedat.fu-berlin.de (Stefan Ram) writes:

> Ben Bacarisse <ben.usenet@bsb.me.uk> writes:
>>These may seem a bit dated since I read them quite some time ago, but I
>>think my favourite books on programming are the pair of collected CACM
>>columns by Jon Bentely: "Programming Pearls" and "More Programming
>>Pearls". I see there is a new edition of the first with new
>>material...
>
> The Art Of Computer Programming
> Design Patterns by Gamma, et. al.
> Refactoring by Martin Fowler
> Applying UML and Patterns, 3rd Ed. by Craig Larman
> Structure and Interpretation of Computer Programs
> Dragon Book by Aho et al.
> Algorithms + Data Structures = Programs
> Artificial Intelligence: A Modern Approach
> Structured Systems Analysis (DeMarco)
> Patterns of Enterprise Application Architecture by Fowler
> Object Oriented Software Construction by Bertrand Meyer
> Object Oriented Software Engineering by Ivar Jacobson
> Code Complete, 2nd Ed. by Steve McConnell
> Test-Driven Development by Kent Beck
> The Pragmatic Programmer by Andrew Hunt
> The Mythical Man-Month by Frederick Brooks
> Domain Driven Design by Eric Evans
> Working Effectively with Legacy Code by Michael Feathers

I, for one, will not have the enthusiasm to read a long list of books
like this (I've read only five of them so far).

A more interesting question would be what is your favourite book ever
about the subject of programming either in general or some specific
aspect thereof?

--
Ben.

kenobi

3/12/2016 8:08:00 PM

0

W dniu sobota, 12 marca 2016 20:59:34 UTC+1 uzytkownik Ben Bacarisse napisal:
> fir <profesor.fir@gmail.com> writes:
>
> > W dniu sobota, 12 marca 2016 20:15:30 UTC+1 uzytkownik Ben Bacarisse napisal:
> <snip>
> >> These may seem a bit dated since I read them quite some time ago, but I
> >> think my favourite books on programming are the pair of collected CACM
> >> columns by Jon Bentely: "Programming Pearls" and "More Programming
> >> Pearls". I see there is a new edition of the first with new
> >> material...
> >
> > well indeed this seems good compact style writting - i readed the
> > first piece on counting words
> >
> > links here
> > https://tfetimes.com/wp-content/uploads/2015/04/ProgrammingPea...
> >
> > can somebody explain me - is this hashing in c version perfect one? i
> > mean it counts with no mistakes? if so why?
>
> The program in the book makes no mistakes because the table does not
> rely only on the hash function.
>
> > (i know the idea of
> > hashing but its inperfection always keeps me away - is there reliable
> > way of perfect hashing on cases like that?
>
> Perfect hashing is a technical term for something rarely seen. When you
> want to do a lot of lookups from a fixed set of keys very fast, you can
> construct a function that maps the set of n keys to the numbers 0 to n-1
> in such a way that every key maps to a distinct number (i.e. the
> function is a bijection). This is called a perfect hash function.
>
> Normal hashing works by handling the collisions, so the case where two
> keys hash to the same value does not produce an error. There are many
> ways to do this. The Bentley book uses a linked list, I think.
>
> --
> Ben.

here it is

>>Even by our loose definition of ``word'', the Bible has only 29,131 distinct words. We'll follow the old lore of using
a prime number near that for our hash table size, and the popular multiplier of 31:
#define NHASH 29989
#define MULT 31
nodeptr bin[NHASH];
Our hash function maps a string to a positive integer less than NHASH:

unsigned int hash(char *p)
unsigned int h = 0
for ( ; *p; p++)
h = MULT * h + *p
return h % NHASH

Using unsigned integers ensures that h remains positive<<

is this a perfect hashing - i mean separate words will point to separate array entries? this is unclear to me