think like a programmer

A Simple Introduction to Algorithms

I've created a simple introduction to the concept of an algorithm that doesn't require any knowledge of programming to understand and enjoy. If you're curious about what an algorithm is, you'll find out, using the task of ordering playing cards as an example. Check it out!

This is the first in a new series of videos about algorithms. In the next video I'll talk about some clever methods that allow us to put items in order with minimal work.

Tags: 

Share this

Bottom-Up Programming

I put together a new video on bottom-up programming solutions. This video is, in a way, a sequel my earlier video on recursive dynamic programming, but also demonstrates how the bottom-up concept can lead to solutions outside of recursion and outside of dynamic programming. Check it out!

If you'd like to try any of these programs yourself or just read through them at your leisure, here they are:

 

Tags: 

Share this

Efficiency & Performance: Not the same thing

One of the first videos I created for YouTube was about the relationship between programming and puzzles, and specifically, about how some problems in either domain are only difficult when you don't consider all your possible options. That video has received a lot of hits and a lot of comments, but many of those comments are about the supposed lack of efficiency of the code I used in the program example, which really isn't the point of the video, or indeed, of what I will call the Think Like a Programmer philosophy. But it did make me realize that performance and efficiency are topics I should address, and so I have!

Tags: 

Share this

Think Like a Programmer: Now in Korean!

My book, Think Like a Programmer, "a book every programmer should read at least once," according to a friendly Amazon reviewer, can now be read by more programmers. It's available for the first time in Korean.

TLAP Korean

The Korean title, 프로그래머처럼 생각하기, apparently translates as "To Think Like a Programmer." For the first time, my name doesn't appear in English on the cover, but is instead Hangulized to 안톤 스프라울. Hangulization, if I understand it correctly, is a method of rendering foreign words into their closest phonetic approximations in Korean. The Google Translate pronunciation of 안톤 스프라울 sounds something like "Andon Spedoweh" to me. Pretty close? I don't think Korean has a consonant sound like "V" so that's probably why my literary-affectation initial disappeared in transit.

On a side note, getting these symbols into Google Translate required a tiny education regarding the Korean language. At first glance, written Korean looks similar to written Chinese. But the Chinese language has a huge number of symbols, where the individual symbols are morphemes--either words, or meaningful grammatical components of words, like how "meaningful" is composed of "to mean" with the -ing and -ful suffixes altering the word. The small number of Korean symbols, in contrast, essentially form an alphabet, except that in writing them, certain combinations of symbols are combined into one. So the 안 symbol is a combination of the ㅇ, ㅏ, and ㄴsymbols. And just as in English, these combined forms are often pronounced a little differently than the individual components would suggest.

And...that's about all I learned about Korean. It looks possible that one could learn to read it fairly easily (because of the small number of symbols, and unlike English, the word forms are very regular). Learning to speak it, though, would be quite an achievement for an English native.

Anyway, this translated edition can be had for the nice round figure of 25,000 KRW (South Korean won), which is $23.67 US at today's exchange rates. Given how many gamers and game companies are based in South Korea, I imagine the country must have more than its share of world-be programmers. I'd love to think some of them could be helped along their way with my book, so if you pick up a copy, please e-mail me and let me know what you think.

Tags: 

Share this

Polecam!

I've just saw that the Polish edition of Think Like a Programmer is out:
Myśl jak programista. Techniki kreatywnego rozwiązywania problemów. Which apparently just means Think like a programmer: creative problem-solving techniques. Can't argue with that.

I don't have a copy yet to check out, but here's the cover from the publisher web site.

It can be yours for only 49 Zloty -- a little more than $16. As someone with a great admiration for improperly named Polish-American insurance investigators, I'm excited about this Polish edition. I was also pleased to see this reader review on the publisher site:

Świetna książka, w bardzo przystępny sposób przedstawia strategie radzenia sobie z problemami programistycznymi. Polecam.

Which according to Google translate, means:

A great book, in a very accessible manner the strategies for dealing with the problems of programming. I would recommend.

Thank you very much, "Pawel C," and best wishes in your studies.

 

Tags: 

Share this

Pages

Subscribe to RSS - think like a programmer