think like a programmer

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

Think Like a Programmer: Now in Japanese!

The Japanese translation of Think Like a Programmer is now available, published by ASCII Media Works. It's really cool to see my work in translation, unfortunately, unlike the German edition, I don't even know a smattering of Japanese.

Japanese TLAP (small)

According to Google Translate, the title says:

Let's forge problem-solving skills

Book concept of programmer the body gets more interesting!

For some reason I think that translation may be inaccurate. I'm also curious about the last chapter, in which I bring all of the concepts together in an example program that cheats at the childhood game Hangman. It's occurred to me that it would be very difficult to play Hangman in a language where character symbols tend to represent whole words rather than component sounds. It appears that the Japanese edition is describing the Hangman game as played in English. I hope that Japanese readers can follow that discussion without too much trouble. If you speak Japanese and pick up the book, please let me know how you like it!

Tags: 

Share this

More Think Like a Programmer Videos

I had some audio problems with the first videos I posted on YouTube. They played perfectly on my end, but after whatever conversion performed by the YouTube uploader, the audio would drift more and more out of sync. Super annoying, especially since I was using "recommended" settings for my video prior to upload. I went through dozens of combinations of file formats, video and audio codecs, sample rate, and so on, until I found one that would play the same after uploading. unfortunately it's not one natively supported by the video editor I am using, so there's an extra step. But at least the videos play correctly now.

On the good news front, I have three new videos for helping people solve programming problems. The first two deal with a problem from a programming contest--these contests are great sources of problem-solving exercises.

The other one is about using spreadsheet designs as a way to develop programming solutions and problem-solving ability in general. Sounds odd, I know. But it works. Check it out:

 

Tags: 

Share this

Pages

Subscribe to RSS - think like a programmer