Discover new selections
Add Prime to get Fast, Free delivery
Amazon prime logo
Buy new:
-31% $14.99
FREE delivery Friday, May 2 on orders shipped by Amazon over $35
Ships from: Amazon
Sold by: Babs Books
$14.99 with 31 percent savings
List Price: $21.87
Get Fast, Free Shipping with Amazon Prime FREE Returns
FREE delivery Friday, May 2 on orders shipped by Amazon over $35
Or Prime members get FREE delivery Monday, April 28.
In Stock
$$14.99 () Includes selected options. Includes initial monthly payment and selected options. Details
Price
Subtotal
$$14.99
Subtotal
Initial payment breakdown
Shipping cost, delivery date, and order total (including tax) shown at checkout.
Ships from
Amazon
Amazon
Ships from
Amazon
Returns
30-day refund/replacement
30-day refund/replacement
This item can be returned in its original condition for a full refund or replacement within 30 days of receipt.
Payment
Secure transaction
Your transaction is secure
We work hard to protect your security and privacy. Our payment security system encrypts your information during transmission. We don’t share your credit card details with third-party sellers, and we don’t sell your information to others. Learn more
$10.01
Get Fast, Free Shipping with Amazon Prime FREE Returns
Gently used. Pages and cover are intact. Cover has light wear. Pages are crisp and clean with no markings. Binding is tight. Ships direct from Amazon. Gently used. Pages and cover are intact. Cover has light wear. Pages are crisp and clean with no markings. Binding is tight. Ships direct from Amazon. See less
FREE delivery Friday, May 2 on orders shipped by Amazon over $35
Or fastest delivery Wednesday, April 30
Only 1 left in stock - order soon.
$$14.99 () Includes selected options. Includes initial monthly payment and selected options. Details
Price
Subtotal
$$14.99
Subtotal
Initial payment breakdown
Shipping cost, delivery date, and order total (including tax) shown at checkout.
Access codes and supplements are not guaranteed with used items.
Kindle app logo image

Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.

Read instantly on your browser with Kindle for Web.

Using your mobile phone camera - scan the code below and download the Kindle app.

QR code to download the Kindle App

Follow the author

Something went wrong. Please try your request again later.

The Self-Taught Programmer: The Definitive Guide to Programming Professionally Paperback – January 24, 2017

4.5 out of 5 stars 2,069 ratings

{"desktop_buybox_group_1":[{"displayPrice":"$14.99","priceAmount":14.99,"currencySymbol":"$","integerValue":"14","decimalSeparator":".","fractionalValue":"99","symbolPosition":"left","hasSpace":false,"showFractionalPartIfEmpty":true,"offerListingId":"XIPgxG%2BB3hBcW6z%2BNv7s7ogXSPN2qKLNerEf0e3mBNDd6D74z0gO2jWCH2k2APDOiw7QHFv19ak51tg5egmL020AYtC%2FLv%2FA%2BHoKnKANNpV2Wd%2BZh9jiOYVUVBW%2BUMFCEENlHuSaPibCfnZYxnvsSVnop6%2BtDNq5c8A8fagTlXdVbF4dvn7kOFZakFFLoxsh","locale":"en-US","buyingOptionType":"NEW","aapiBuyingOptionIndex":0}, {"displayPrice":"$10.01","priceAmount":10.01,"currencySymbol":"$","integerValue":"10","decimalSeparator":".","fractionalValue":"01","symbolPosition":"left","hasSpace":false,"showFractionalPartIfEmpty":true,"offerListingId":"XIPgxG%2BB3hBcW6z%2BNv7s7ogXSPN2qKLNFyc%2BSSjXKztpGJOE39GwS5J2qEGuABh6aN1PWxQo3O3gRB0GZkU70rRgWyKdQKB7rxh47DF4qxX8rjeaJiVNCBoN1EklkKPaw5yW3weFfdfZk%2FkpBSR9z15rMt3HiQVAw2087hQJNnDe8UJrT8gJ4cPHIPLa6vAk","locale":"en-US","buyingOptionType":"USED","aapiBuyingOptionIndex":1}]}

Purchase options and add-ons

I am a self-taught programmer. After a year of self-study, I learned to program well enough to land a job as a software engineer II at eBay. Once I got there, I realized I was severely under-prepared. I was overwhelmed by the amount of things I needed to know but hadn't learned yet. My journey learning to program, and my experience at my first job as a software engineer were the inspiration for this book.

This book is not just about learning to program; although you will learn to code. If you want to program professionally, it is not enough to learn to code; that is why, in addition to helping you learn to program, I also cover the rest of the things you need to know to program professionally that classes and books don't teach you. "The Self-taught Programmer" is a roadmap, a guide to take you from writing your first Python program, to passing your first technical interview. I divided the book into five sections:

1. Learn to program in Python 3 and build your first program.
2. Learn Object-oriented programming and create a powerful Python program to get you hooked.
3. Learn to use tools like Git, Bash, and regular expressions. Then use your new coding skills to build a web scraper.
4. Study Computer Science fundamentals like data structures and algorithms.
5. Finish with best coding practices, tips for working with a team, and advice on landing a programming job.

You CAN learn to program professionally. The path is there. Will you take it?

Great on Kindle
Great Experience. Great Value.
iphone with kindle app
Putting our best book forward
Each Great on Kindle book offers a great reading experience, at a better value than print to keep your wallet happy.

Explore your book, then jump right back to where you left off with Page Flip.

View high quality images that let you zoom in to take a closer look.

Enjoy features only possible in digital – start reading right away, carry your library with you, adjust the font, create shareable notes and highlights, and more.

Discover additional details about the events, people, and places in your book, with Wikipedia integration.

Get the free Kindle app: Link to the kindle app page Link to the kindle app page
Enjoy a great reading experience when you borrow the Kindle edition of this book with your Kindle Unlimited membership. Learn more about Great on Kindle, available in select categories.

Frequently bought together

This item: The Self-Taught Programmer: The Definitive Guide to Programming Professionally
$14.99
Get it as soon as Friday, May 2
In Stock
Sold by Babs Books and ships from Amazon Fulfillment.
+
$19.49
Get it as soon as Friday, May 2
In Stock
Ships from and sold by Amazon.com.
+
$20.08
Get it as soon as Friday, May 2
In Stock
Ships from and sold by Amazon.com.
Total price: $00
To see our price, add these items to your cart.
Details
Added to Cart
These items are shipped from and sold by different sellers.
Choose items to buy together.
Popular Highlights in this book

Editorial Reviews

Review

"I always keep a few copies of The Self-Taught Programmer around to give to anyone that comes to me for career advice."--Robin Abrams, Board Member, HCL Technologies, FactSet Research, Lattice Semiconductor and Sierra Wireless
"Want to learn to program professionally? Follow Cory's advice."--
David Phillips, Co-Founder, Hackbright Academy
"I am incredibly impressed with this book." --
JoAnn Buchanan, Senior Research Associate, Allen Institute for Brain Science
"Learning to program is increasingly important in finance. Althoff's book taught me the skills I need to stay competitive." --
Derek Schaefer, Senior Finance Manager, Charles Schwab
"
The Self-Taught Programmer was a pleasure to read--something I never thought I would say about a technical book."--Melinda Sacks, Former Writer, Editor, San Jose Mercury News
"One of the best Software Design books of all time"
-- BookAuthority

From the Author

I spent one year writing The Self-Taught Programmer. It was an exciting and rewarding experience. I treated my book like a software project. After I finished writing it, I created a program to pick out all of the code examples from the book and execute them in Python to make sure all 300+ examples worked properly. Then I wrote software to add line numbers and color to every code example. Finally, I had a group of 200 new programmers "beta read" the book to identify poorly explained concepts and look for any errors my program missed. One last note: this book was written for new programmers. If you are an advanced programmer, this is probably not the best book for you.   
I hope you learn as much reading my book as I did writing it. Best of luck with your programming! 

Product details

  • Publisher ‏ : ‎ Self-Taught Media (January 24, 2017)
  • Language ‏ : ‎ English
  • Paperback ‏ : ‎ 299 pages
  • ISBN-10 ‏ : ‎ 0999685902
  • ISBN-13 ‏ : ‎ 978-0999685907
  • Item Weight ‏ : ‎ 1.14 pounds
  • Dimensions ‏ : ‎ 7.5 x 0.68 x 9.25 inches
  • Customer Reviews:
    4.5 out of 5 stars 2,069 ratings

About the author

Follow authors to get new release updates, plus improved recommendations.
Cory Althoff
Brief content visible, double tap to read full content.
Full content visible, double tap to read brief content.

Cory Althoff is an executive and author whose work includes The Self-Taught Programmer and The Self-Taught Computer Scientist. After graduating from Clemson University with a major in political science, he taught himself to program, eventually becoming a software engineer at eBay. His books have been translated into eight languages, and he has been featured in publications like Forbes and CNBC. Cory is a senior vice president at CompTIA, the leading IT certification provider for the global technology industry and its workforce.

Customer reviews

4.5 out of 5 stars
2,069 global ratings

Review this product

Share your thoughts with other customers

Customers say

Customers find the book effective for learning programming basics and appreciate its easy-to-follow content and inspirational challenges at the end of each chapter. Moreover, they consider it worth the money and praise its readability, with one customer noting it reads like a story. However, the book receives mixed feedback regarding its functionality and layout, with some finding it well-organized while others consider it essentially useless. Additionally, the formatting is problematic, with many typographical errors and code samples displaying incorrectly.

AI-generated from the text of customer reviews

161 customers mention "Ease of use"143 positive18 negative

Customers find the book easy to use, particularly as a guide for learning programming basics, with one customer noting it does an outstanding job of explaining techniques.

"...a complete beginner it may advance too rapidly; it actually starts out quite basic, and if you are intermediate level and have been playing with..." Read more

"...All in all a good resource that will help guide someone that's learning on their own on how to understand the language and achieve basic competence." Read more

"...the best book out there, but I think it might be one of the better beginner's books...." Read more

"...For the first time in my life I am actually writing in Python. I'm only on chapter three and I've already learned so much...." Read more

8 customers mention "Inspiration"8 positive0 negative

Customers find the book inspiring, particularly appreciating the challenges at the end of each chapter and the motivational quotes that start each section.

"...It all slowly starts making sense as you go on, things get cemented in your memory, and the different approaches to explaining things start helping..." Read more

"...From the moment it arrived I was hooked. Each chapter starts with an inspirational quote that motivates you to keep going forward...." Read more

"...You learn quickly with lots of example programs and challenges...." Read more

"...It also inspired me to do some developing and I have started playing with a raspberry pi, something I really hdn't planned when taking up the book." Read more

8 customers mention "Readability"8 positive0 negative

Customers find the book easy to read, with one mentioning it reads like a story and another noting it maintains a decent pace.

"...The entire book reads like a story and when things are explained it not only makes you ask questions, but they are answered in the next section...." Read more

"...All in small chunks. A Great read end to end or review/refresher as a per topic reference..(my use case). Enjoyed it much.." Read more

"...Not suitable for anyone but a beginner looking to learn quickly. Fast and not so dirty but honest." Read more

"Nice book, not drowning in information. Keeping me reading at a decent pace." Read more

7 customers mention "Value for money"7 positive0 negative

Customers find the book worth the money.

"...BUT, it is a good one. Is this one worth the $5 on Kindle? Perhaps. Finding a book that doesn't progress too quickly for the beginner is not easy...." Read more

"...This book has it covered. All the py3 essentials. It's worth the money for sure." Read more

"For 2.99, this is one of the best three dollars that you will ever spend. This is a great book to start programming with, and for three dollars?..." Read more

"...more focused on other obligations but definitely worth the buy to get started with programming, even bought my brother one!" Read more

4 customers mention "Digestibility"4 positive0 negative

Customers appreciate how the book is segmented into easily digestible chunks.

"...This book is segmented into easily digestible chunks, which aids in its readability and re-readability...." Read more

"I am enjoying this book, as it is broken up into easily doable portions for turbulent lives...." Read more

"...All in small chunks. A Great read end to end or review/refresher as a per topic reference..(my use case). Enjoyed it much.." Read more

"Very easy to read and digest." Read more

10 customers mention "Functionality"6 positive4 negative

Customers have mixed experiences with the book's functionality, with some saying it worked for them while others find it essentially useless.

"Got me started with Python and worked great to geat familiar with the language...." Read more

"...given such high ratings when so early in the book, example code doesn't work as explained...." Read more

"...into more advanced subjects, on top of teaching you about OOP, functional programming, ect.. Buy this book, you will not regret it." Read more

"...The content here is so thin as to be essentially useless...." Read more

10 customers mention "Layout"5 positive5 negative

Customers have mixed opinions about the book's layout, with some finding it well organized, while others report issues with superficial content, poor illustrations, and inadequate examples.

"...While the writing style is OK the organization and layout could use some work...." Read more

"...and I could forgive this if the content was good, the print in the examples in pathetic. It looks like a 4th recopy from a 25 year old copy machine...." Read more

"...This book lays things out very well and let’s you get straight to the coding!..." Read more

"...Seems way too basic. Many of us have programmed but want to learn how to develop. This doesn't seem to help too much." Read more

11 customers mention "Formatting"0 positive11 negative

Customers report issues with the book's formatting, mentioning typographical errors and code samples that display incorrectly, with one customer noting that the text is cut-off on the right.

"...I move through the book, the more irritated I get by the occasional sloppy formatting, because you have to spend time deciphering if certain..." Read more

"...There are also few very annoying typos in the book. I highly recommend it!" Read more

"...of information is bad, with no good illustrations and proper development of coding...." Read more

"...and retain alot of basics quickly but this really covered only a small part of python programming. Otherwise still a good book." Read more

Top reviews from the United States

  • Reviewed in the United States on September 14, 2017
    VERY well written, excellent style. If you are a complete beginner it may advance too rapidly; it actually starts out quite basic, and if you are intermediate level and have been playing with Python for a while (as I) you can just breeze over the elementary stuff. I found the chapter(s) on OOP (classes etc.) particularly useful. I have been doing mostly functional and procedural type short programs and haven't paid much attention to OOP. But I am trying to get a handle on it now, (as I must if I'm gonna get anywhere with GA). The concepts were explained with code examples very clearly and in few pages! The section on BaSH is mostly review-over for me as I have been using Linux for a while now, but if you are also new to Linux (and you should get into it and dump MS ... don't get me started ...) it provides a very good intro to the command line and basic Linux usage, as well as "regular expressions" which are very good to know and apparently trip a lot of people up learning. You can even download the code snippets if you are too lazy to type them in (using the tinyurl web site).

    I am now working on the web scraper and plan to elaborate it for my own use (hint: don't you hate it when cool web sites won't 'let' you download the videos and full size pics ...).

    Recommend highly!
    11 people found this helpful
    Report
  • Reviewed in the United States on April 23, 2017
    It's a great book for any new python programmer, especially those that learn in the self-taught way. It has a lot of examples and explanations that allow a reader to build the mental model of the language through experimentation. It is one of few books that adequately covered things in the way that you tend to model things when you -are- learning on your own. There's normally a strong possibility for gaps in knowledge when teaching yourself due to the way you can make assumptions without testing what the results would be, and this book doesn't necessarily cover ALL of them, but it does a good job with the numerous code samples of providing you fairly complete mental models of what's going on when you do various tasks in Python.

    I love that it takes that approach. I do wish that it covered some more of what is considered idiomatic in Python, but, that's very much a minor gripe on an excellent text for a certain kind of mindset and way of learning. Even with that being said there are a few chapters near the end that cover some best practices and ideas, but, not as deeply as I typically think about them.

    All in all a good resource that will help guide someone that's learning on their own on how to understand the language and achieve basic competence.
    8 people found this helpful
    Report
  • Reviewed in the United States on April 22, 2017
    This book isn't quite what I thought it was. There are lots of free resources and free online versions of many IT books, including for Python. I thought this one would be about the "other" things you need to know as a programmer that you might have missed in not getting a degree. But no, this is "just" another book about how to program in Python. BUT, it is a good one. Is this one worth the $5 on Kindle? Perhaps. Finding a book that doesn't progress too quickly for the beginner is not easy. Finding a book with good exercises isn't easy either. I've read a bunch because it's taking me a while to get a grasp on Python. I just finished Chapter 4 and so far am really liking this book. I bought the Kindle version which has been more than adequate. In fact, I've done most of the reading on the go on my phone, then when I get home I work through the exercises at the end of the chapters. The set of exercises at the end of each chapter start easy, then the next exercise gets a little more involved, then a little more involved, till you have practiced the main ideas in that chapter. I really like this. If I run into a difficulty, I know exactly where to look for the answer, because only one new concept per exercise was called for. From the courses I've done on Coursera and EdX, and a couple online Python books, I'd say I like these exercises the best. I just wish there were more of them. I'm not sure it gives answers to the questions, since I haven't seen any, but I haven't needed any. I haven't had any problems with the Kindle version. Each example has a link to a webpage that includes the example. This is useful, because the example lines sometimes are longer than the Kindle can display, so you can't see the end of the line.

    Overall, I wouldn't really expect much more than the other Python books out there offer, but I think the manner of his presentation might be a bit more "down to earth" for the beginner. If you are having trouble following a lot of the books and courses on Python, I'd recommend that you press on and read more books and take more courses and don't let yourself get stuck on the bits that seem hard right now. It all slowly starts making sense as you go on, things get cemented in your memory, and the different approaches to explaining things start helping you to fill in your gaps.

    I wouldn't say this is the best book out there, but I think it might be one of the better beginner's books. I also wouldn't say this tells you much more about programming in general than the other beginning books out there. Take a look for free IT books on the web and you'll find a lot, though when you find one you love, you might want to buy it to have it on hand and to support the author. So, I have mixed feelings about this one based on what it seemed to present itself as, but for what it is, it's pretty good.
    227 people found this helpful
    Report
  • Reviewed in the United States on March 30, 2017
    I'm not big into writing reviews but I had to write this for someone that once felt like me. I thought I was dumb, I couldn't grasp the concept of Python or any other language. I've tried codecademy, and online courses all ending in failure. I saw Corey on a talk show and immediately added his book to my Amazon cart. From the moment it arrived I was hooked. Each chapter starts with an inspirational quote that motivates you to keep going forward. I wanted to learn python so that I could get a job in the QA industry. After reading just a few chapters, I've decided that I want to be a software engineer. The entire book reads like a story and when things are explained it not only makes you ask questions, but they are answered in the next section. For the first time in my life I am actually writing in Python. I'm only on chapter three and I've already learned so much. For the people that haven't had much luck learning, this book is definitely for you. You are not alone. Everyone can learn from this book.
    13 people found this helpful
    Report

Top reviews from other countries

Translate all reviews to English
  • Kullanmaya başlayınca faydasını gördüm
    1.0 out of 5 stars Kotu
    Reviewed in Turkey on November 9, 2024
    Kötü
    Report
  • Bohne
    1.0 out of 5 stars Misleading Booktitle
    Reviewed in Germany on August 4, 2020
    Normally I don't give 1-Star, but this book here is totally nonsense in regards of its title. What is covered here are the basics for python and the absolute basics for bash control (like seriouly absolute basics and nothing more). You kind of expect an in depth explanation of design patterns used in the industry, standards to strive for etc. but nothing of this is in this book but only a bunch of tutorials you can easily find on the internet and for sure this book is not worth, what it costs. In regards I will send it back because I don't want to support this kind of "Book-Clickbaiting".
    Sincerely, not a hater.
  • Chris Paggen
    4.0 out of 5 stars Super pour mon ado!
    Reviewed in France on May 14, 2017
    Tres bonne approche a la programmation. J'ai achete ce livre pour mon ado (15 ans) qui s'interesse au sujet. Le bouquin est facile a suivre pour un passionne. Ca ne regorge pas d'algorithmes, de theorie et de maths - c'est direct dans l'action via un max d'essais pratiques.

    Mon ado a installe Python par lui-meme apres avoir commence ce livre et me pose des questions sur les exercices. Mission accomplie!
  • Saidalavi kt
    5.0 out of 5 stars Good
    Reviewed in India on July 15, 2024
    Good
  • Mr Roy M. (Nottingham)
    5.0 out of 5 stars Excellent book ✅️ 😊
    Reviewed in the United Kingdom on January 21, 2024
    I am still working through this book but so far I have found it to be excellent. Definitely worth the money spent.
    Cory explains really well, with examples and provides solutions that are in light print, compared to the rest of the reading text.

    When you first download and install Python, I strongly recommend it is the latest version and to also download and install 'PyCharm' instead of 'Idle' which you need to enter your coding and to run it.
    Idle is very basic, looks like notepad on a pc whereas PyCharm looks way better, easier to edit your coding and makes the learning process far more enjoyable. Download the free 'Community Version' of PyCharm, for now.
    You can install both if you want and see what you think.
    I've placed shortcuts on my laptop homescreen to launch the program quickly. You can, of course, have Idle/PyCharm icon on your lower screen taskbar so it's automatically there every time you turn your pc on.

    Criticisms of the book ......
    The paper quality of the book is poor but overall I still give 5✴️ (5 stars).
    When you come to the subject of one of four data structures, namely 'Dictionary',
    you must make sure you use curly brackets {} for this, which contains your elements and NOT parentheses ()
    As mentioned, because the print is light in the examples and the font being a bit small, it is very easy to mistake the brackets for normal curved parentheses ()
    Talking about data structures, Cory does NOT mention the 'Set' data structure which is used for unique special elements and works very well when you are dealing with 'union', 'intersection' ....

    I also recommend that you work through the book slowly at a pace you are happy with and practice typing in the coding to boost your confidence and to see the result of your efforts. You will make errors in your coding and so see red error messages telling you on which line number your error is on, which can be very frustrating especially if you struggle to see the problem, but don't let that deter you.

    I have learnt a lot already and I'm amazed and very pleased with how much I now know about Python, so thoroughly enjoying it, over the past month or so since I started as a beginner. You must be patient, keep at it and only do small manageable chunks at a time, not too much in one day. Experiment with the coding and see what the result is. Take notes to help you. I take screen shots on my mobile phone as well, to quickly view a program and refreshing myself with what I have learnt, without carrying a book or laptop with you, which I find does helps a lot in the learning process.

    Take a look at other resources, online for example to help you understand and progress.
    If you are stuck, Google the issue where you will find many useful helpful comments.
    If you purchase from Amazon, download the free sample that is often provided to give you a taster of the book you are looking at. Also, make sure you read the reviews so you know what others think before you decide to buy or not. Take a look at the books publication date as well as some books are a number of years old and so there's a good chance the coding programs would of been run on an older version of Python.

    I hope I have helped and given you some encouragement, if only a little. God bless you, enjoy! :)