HN Books @HNBooksMonth

The best books of Hacker News.

Hacker News Comments on
Algorithmic Puzzles

Anany Levitin, Maria Levitin · 2 HN comments
HN Books has aggregated all Hacker News stories and comments that mention "Algorithmic Puzzles" by Anany Levitin, Maria Levitin.
View on Amazon [↗]
HN Books may receive an affiliate commission when you make purchases on sites after clicking through links on this page.
Amazon Summary
While many think of algorithms as specific to computer science, at its core algorithmic thinking is defined by the use of analytical logic to solve problems. This logic extends far beyond the realm of computer science and into the wide and entertaining world of puzzles. In Algorithmic Puzzles, Anany and Maria Levitin use many classic brainteasers as well as newer examples from job interviews with major corporations to show readers how to apply analytical thinking to solve puzzles requiring well-defined procedures. The book's unique collection of puzzles is supplemented with carefully developed tutorials on algorithm design strategies and analysis techniques intended to walk the reader step-by-step through the various approaches to algorithmic problem solving. Mastery of these strategies--exhaustive search, backtracking, and divide-and-conquer, among others--will aid the reader in solving not only the puzzles contained in this book, but also others encountered in interviews, puzzle collections, and throughout everyday life. Each of the 150 puzzles contains hints and solutions, along with commentary on the puzzle's origins and solution methods. The only book of its kind, Algorithmic Puzzles houses puzzles for all skill levels. Readers with only middle school mathematics will develop their algorithmic problem-solving skills through puzzles at the elementary level, while seasoned puzzle solvers will enjoy the challenge of thinking through more difficult puzzles.
HN Books Rankings

Hacker News Stories and Comments

All the comments and stories posted to Hacker News that reference this book.
I typically have several books in progress. I'll read a chapter from whichever one I'm in the mood for when I have some time for reading. Currently in progress:

"A Book of Abstract Algebra: Second Edition" by Charles C. Pinter [1].

"How Not to Be Wrong: The Power of Mathematical Thinking" by Jordan Ellenberg [2].

"Guns, Germs, and Steel: The Fates of Human Societies" by Jared Diamond [3].

"Introduction to Analytic Number Theory" by Tom M. Apostol [4].

"Algorithmic Puzzles" by Levitin and Levitin [7].

I've also got a 46 books in my Safari Library queue, although only about half a dozen are actually in the in progress state.

In addition to the above, I'm about 3 years behind on Analog, the science fiction magazine. Those are all on my Kindle and I'm slowly trying to catch up.

Recently finished:

"Moonwalking with Einstein: The Art and Science of Remembering Everything" by Joshua Foer [5].

Probably going to pick up soon:

"The Greatest Story Ever Told--So Far" by Lawrence M. Krauss [6]. Flipped through it at a bookstore and there were some very interesting things in it.

[1] https://www.amazon.com/Book-Abstract-Algebra-Second-Mathemat...

[2] https://www.amazon.com/gp/product/B00G3L6JQ4/

[3] https://www.amazon.com/Guns-Germs-Steel-Fates-Societies/dp/0...

[4] https://www.amazon.com/Introduction-Analytic-Number-Theory-A...

[5] https://www.amazon.com/Moonwalking-Einstein-Science-Remember...

[6] https://www.amazon.com/Greatest-Story-Ever-Told-So-Far-ebook...

[7] https://www.amazon.com/Algorithmic-Puzzles-Anany-Levitin/dp/...

I think there are two ways in which children may constructively be taught computing. The first is algorithmic problem solving, which is often better taught using logic puzzles and games rather than programming trivial if-then statements. Anany and Maria Levitin's book, Algorithmic Puzzles, is a good example of the genre. [1]

Secondly, they need to be taught an active and inquisitive posture towards technology. Most devices today (especially tablets and phones) force the user into a dependent and passive mode of interaction in which it is impossible to know how things work. Accordingly, I think it may be destructive for children to spend too much time with these devices.

The KIBO system described in the article seems like a great thing to play with to build a basic understanding of symbolic control flow, although it too is opaque. I think 4 is too young to spend much time staring at a screen, but by the time a child is 8-10, I think it is better to have an admittedly difficult to use Linux workstation or an old computer running FreeDOS. Also good are the many simple devices arising out of the "maker" movement.

I would really like to give my kids a simple device that could be programmed from the hardware up in something like Forth. Something like an HP calculator, but with a command line and options to connect to other devices would be great.

[1] http://www.amazon.com/gp/product/0199740445

nickpsecurity
I agree with you on second point. I once read a whole article on how industry wants our devices to be for consumption instead of creation and it made a lot of sense. Getting kids to actively approach devices as a form of personal empowerment (and entertainment too) seems like a better approach. They might get a good job later, too. ;)
notduncansmith
> programmed from the hardware up in something like Forth

Just curious, what about Forth makes it appealing as a first programming language for kids (or well-suited to hardware programming)?

Gracana
Forth programs are often designed bottom-up and interactively, so you make things move and blink and sense and then compose those functions into more complex ones, interactively playing and testing all the while. It also imposes little structure and the model of the computer is simple. The while package makes for a nice gradual approach to learning how to program and solve problems. Otoh it's not common so learning resources aren't as plentiful as with other languages, so mum or dad better be there to help you out.
TazeTSchnitzel
Well, a stack-oriented language is simple and composable. But Forth isn't necessarily the best choice.
nickpsecurity
Nah, Forth is too weird. It's determined by how Moore wants things to work as much as anything else. Example: lets force modern computing experience into 18-bit many-core (?!). Wirth's languages are a better start in that they're readable, fast, easy-to-learn, map to real-world use better, and easily extended. The interactive design could be added easily to a simple language/runtime like Oberon.

Alternatives include Scheme and Python. One has a long history teaching people and the other is developing one. Python is one I recommended to someone's kid with good results not long ago. Closer to pseudo code as BASIC was while having quite a community and industrial-strength libraries.

sogen
theres a cool thing that can connect like legos: to temp monitor... forgot the name, something with blocks, looks awesome, has some kits online, will try to find it.
cgio
littlebits?
jacquesm
That one ? :

http://www.gizmag.com/littlebits-electronic-kits/28822/

HN Books is an independent project and is not operated by Y Combinator or Amazon.com.
~ yaj@
;laksdfhjdhksalkfj more things
yahnd.com ~ Privacy Policy ~
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.