background preloader

Learning

Facebook Twitter

Aprende a programar en diez años. Por Peter Norvig. Teach Yourself Programming in Ten Years. Traducción libre al español por Carlos Rueda - ¿Por qué todos tienen tanto afán? Entra a cualquier librería y encontrarás Aprende Java en 7 Días y demás variaciones interminables ofreciendo enseñar Visual Basic, Windows, Internet, etc., en unos pocos días u horas. Pubdate: after 1992 and title: days and (title: learn or title: teach yourself) y obtuve 248 ítems de resultado. La conclusión es que, o bien la gente tiene un gran afán por saber de computadoras, o bien las computadoras son algo fabulosamente más fácil de aprender que cualquiera otra cosa. Analicemos lo que podría significar un título como Aprende Pascal en Tres Días (Learn Pascal in Three Days): Aprende: En 3 días no tendrás tiempo de escribir varios programas significativos, y de aprender de tus éxitos y errores con ellos. Aprende a programar en diez años Aquí está mi receta para el éxito en programación: Referencias Bloom, Benjamin (ed.)

Respuestas. The Future of Code by Ruby’s Father — Programming Posts. Code adventures. Programming Paradigms: An Introduction | CodeKraft. A programming paradigm is a way of programming, a style of solving problems and thinking about the domain. Languages directly or indirectly influence programming style; for example, Haskell is purely functional while Python allows a blend of OOP, functional and imperative programming.

Even though most new languages are multi-paradigm, they usually make it easiest to program in a single paradigm; C programs can be written in a functional programming style (instead of the orthodox procedural fashion) – it is just extremely difficult. Ever wondered why classes are needed to add two numbers in OOP Java? Paradigms can be viewed as abstractions and metaphors for modelling problems – logic programs can be viewed as theorem solvers; functional programs rely on mathematical models while OOP models real-life objects and their interactions. Let’s take a shallow dive into some of the popular paradigms. 1.

Imperative Programming imperate: Done by express direction, not involuntary; commanded 2. 3. 4. 5. Understanding Tail Recursion | CodeKraft. A tail call is the last call executed in a function; if a tail call leads to the parent function being invoked again, then the function is tail recursive. In the first function – foo; the baz() function is a tail call while in foo2, the baz and biz are tail calls because both are the last calls to get executed in the function. The second example shows that the tail call doesn’t have to be the last line of the function – it just has to be the last call the function makes before it returns. Deep Dive Lets analyze the factorial function. A fact(3) call is traced out below: fact(3) -> 3 * fact(2) 3 * (2 * fact(1)) 3 * (2 * 1) 3 * 2 6 Every recursive call has to be totally evaluated before the final value can be calculated.

Now let’s make a tail-recursive version of the same function. Evaluation of this function now looks like this: fact2(3) -> fact2(3, 1) fact2((3-1), (3*1)) fact2(2, 3) fact((2 -1), (2*3)) fact(1, 6) 6 fact3(2) trampoline(tailFact(2,1)) trampoline(tailFact(1, 2)) trampoline(2); 1. New Coder – five life jackets to throw to the new coder. Contributions Appearing in the Book. Learn how to code | Bento. The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!) By Joel Spolsky Wednesday, October 08, 2003 Ever wonder about that mysterious Content-Type tag?

You know, the one you're supposed to put in HTML and you never quite know what it should be? Did you ever get an email from your friends in Bulgaria with the subject line "???? ?????? ??? I've been dismayed to discover just how many software developers aren't really completely up to speed on the mysterious world of character sets, encodings, Unicode, all that stuff. But it won't. So I have an announcement to make: if you are a programmer working in 2003 and you don't know the basics of characters, character sets, encodings, and Unicode, and I catch you, I'm going to punish you by making you peel onions for 6 months in a submarine. And one more thing: In this article I'll fill you in on exactly what every working programmer should know. A Historical Perspective The easiest way to understand this stuff is to go chronologically. And all was good, assuming you were an English speaker. Unicode Hello Next: