(Part 3) Reddit mentions: The best programming languages books

We found 1,275 Reddit comments discussing the best programming languages books. We ran sentiment analysis on each of these comments to determine how redditors feel about different products. We found 287 products and ranked them based on the amount of positive reactions they received. Here are the products ranked 41-60. You can also go back to the previous section.

41. The C# Programming Language (Covering C# 4.0) (4th Edition) (Microsoft Windows Development Series)

The C# Programming Language (Covering C# 4.0) (4th Edition) (Microsoft Windows Development Series)
Specs:
Height9.75 Inches
Length8 Inches
Number of items1
Weight3.5714886444 Pounds
Width2 Inches
▼ Read Reddit mentions

42. C++ How to Program (10th Edition)

C++ How to Program (10th Edition)
Specs:
Height9 Inches
Length1.4 Inches
Number of items1
Weight3.0203329894 Pounds
Width6.9 Inches
▼ Read Reddit mentions

43. Big C++, 2nd Edition

    Features:
  • Paper back cover has creases and first few pages are bent on the top cornor. some pages cornors are bent.Pages are clean
Big C++, 2nd Edition
Specs:
Height9.098407 Inches
Length7.299198 Inches
Number of items1
Weight3.5494424182 Pounds
Width1.499997 Inches
▼ Read Reddit mentions

45. Visual C# 2012 How to Program (5th Edition) (How to Program (Deitel))

    Features:
  • Used Book in Good Condition
Visual C# 2012 How to Program (5th Edition) (How to Program (Deitel))
Specs:
Height9 Inches
Length7 Inches
Number of items1
Weight3.19890742162 Pounds
Width1.7 Inches
▼ Read Reddit mentions

47. Essential C# 4.0 (3rd Edition) (Microsoft Windows Development Series)

    Features:
  • Factory sealed DVD
Essential C# 4.0 (3rd Edition) (Microsoft Windows Development Series)
Specs:
Height9.5 Inches
Length7.5 Inches
Number of items1
Weight3.30693393 Pounds
Width2.25 Inches
▼ Read Reddit mentions

48. Clojure for the Brave and True: Learn the Ultimate Language and Become a Better Programmer

Clojure for the Brave and True: Learn the Ultimate Language and Become a Better Programmer
Specs:
ColorMulticolor
Height9.25 Inches
Length7.06 Inches
Number of items1
Release dateOctober 2015
Weight1.4 Pounds
Width0.77 Inches
▼ Read Reddit mentions

49. The R Book

    Features:
  • Wiley
The R Book
Specs:
Height9.901555 Inches
Length7.799197 Inches
Number of items1
Weight5.21613711892 Pounds
Width2.299208 Inches
▼ Read Reddit mentions

50. C++ Programming in easy steps

C++ Programming in easy steps
Specs:
Height9 Inches
Length7.5 Inches
Number of items1
Weight0.95 Pounds
Width0.5 Inches
▼ Read Reddit mentions

51. C How to Program (8th Edition)

C How to Program (8th Edition)
Specs:
Height9.15 Inches
Length7.05 Inches
Number of items1
Weight2.7998707274 Pounds
Width1.65 Inches
▼ Read Reddit mentions

52. C++ Templates: The Complete Guide (2nd Edition)

    Features:
  • Used Book in Good Condition
C++ Templates: The Complete Guide (2nd Edition)
Specs:
Height9.45 Inches
Length7.85 Inches
Number of items1
Weight3.3951188348 Pounds
Width1.95 Inches
▼ Read Reddit mentions

53. Basic ROBLOX Lua Programming: (Black and White Edition)

    Features:
  • DC Comics
Basic ROBLOX Lua Programming: (Black and White Edition)
Specs:
Height10 Inches
Length7 Inches
Number of items1
Weight1.1 Pounds
Width0.64 Inches
▼ Read Reddit mentions

54. Two Scoops of Django 1.11: Best Practices for the Django Web Framework

Two Scoops of Django 1.11: Best Practices for the Django Web Framework
Specs:
Height9.25 Inches
Length7.5 Inches
Number of items1
Weight2.084 Pounds
Width1.25 Inches
▼ Read Reddit mentions

55. The Python 3 Standard Library by Example (Developer's Library)

The Python 3 Standard Library by Example (Developer's Library)
Specs:
Height9.1 Inches
Length7.1 Inches
Number of items1
Weight3.95068373504 Pounds
Width2.15 Inches
▼ Read Reddit mentions

56. The Craft of Prolog (Logic Programming)

    Features:
  • Used Book in Good Condition
The Craft of Prolog (Logic Programming)
Specs:
ColorCream
Height9 Inches
Length7.06 Inches
Number of items1
Release dateDecember 2009
Weight1.75047036028 Pounds
Width1.06 Inches
▼ Read Reddit mentions

57. Starting out with Visual C# (4th Edition)

Starting out with Visual C# (4th Edition)
Specs:
Height10.85 Inches
Length8.55 Inches
Number of items1
Weight3.19008893114 Pounds
Width1.4 Inches
▼ Read Reddit mentions

58. Starting Out with C++: Early Objects (7th Edition)

Starting Out with C++: Early Objects (7th Edition)
Specs:
Height10 Inches
Length7.8 Inches
Number of items1
Weight4.15791826132 Pounds
Width1.7 Inches
▼ Read Reddit mentions

59. Programming in Lua, fourth edition

    Features:
  • Polish Release, cover may contain Polish text/markings. The disk has English audio.
Programming in Lua, fourth edition
Specs:
Height9.69 Inches
Length7.44 Inches
Number of items1
Weight1.51898498518 Pounds
Width0.8 Inches
▼ Read Reddit mentions

60. HTML5 & CSS3 Visual QuickStart Guide (7th Edition)

HTML5 & CSS3 Visual QuickStart Guide (7th Edition)
Specs:
Height9.25 Inches
Length7 Inches
Number of items1
Weight2.2487150724 pounds
Width1.25 Inches
▼ Read Reddit mentions

🎓 Reddit experts on programming languages books

The comments and opinions expressed on this page are written exclusively by redditors. To provide you with the most relevant data, we sourced opinions from the most knowledgeable Reddit users based the total number of upvotes and downvotes received across comments on subreddits where programming languages books are discussed. For your reference and for the sake of transparency, here are the specialists whose opinions mattered the most in our ranking.
Total score: 2,075
Number of comments: 16
Relevant subreddits: 1
Total score: 39
Number of comments: 6
Relevant subreddits: 1
Total score: 32
Number of comments: 5
Relevant subreddits: 2
Total score: 29
Number of comments: 9
Relevant subreddits: 6
Total score: 24
Number of comments: 5
Relevant subreddits: 2
Total score: 23
Number of comments: 10
Relevant subreddits: 2
Total score: 15
Number of comments: 4
Relevant subreddits: 1
Total score: 12
Number of comments: 5
Relevant subreddits: 3
Total score: 8
Number of comments: 6
Relevant subreddits: 2
Total score: 8
Number of comments: 4
Relevant subreddits: 1

idea-bulb Interested in what Redditors like? Check out our Shuffle feature

Shuffle: random products popular on Reddit

Top Reddit comments about Programming Languages:

u/CSMastermind · 4 pointsr/learnprogramming

I've posted this before but I'll repost it here:

Now in terms of the question that you ask in the title - this is what I recommend:

Job Interview Prep


  1. Cracking the Coding Interview: 189 Programming Questions and Solutions
  2. Programming Interviews Exposed: Coding Your Way Through the Interview
  3. Introduction to Algorithms
  4. The Algorithm Design Manual
  5. Effective Java
  6. Concurrent Programming in Java™: Design Principles and Pattern
  7. Modern Operating Systems
  8. Programming Pearls
  9. Discrete Mathematics for Computer Scientists

    Junior Software Engineer Reading List


    Read This First


  10. Pragmatic Thinking and Learning: Refactor Your Wetware

    Fundementals


  11. Code Complete: A Practical Handbook of Software Construction
  12. Software Estimation: Demystifying the Black Art
  13. Software Engineering: A Practitioner's Approach
  14. Refactoring: Improving the Design of Existing Code
  15. Coder to Developer: Tools and Strategies for Delivering Your Software
  16. Perfect Software: And Other Illusions about Testing
  17. Getting Real: The Smarter, Faster, Easier Way to Build a Successful Web Application

    Understanding Professional Software Environments


  18. Agile Software Development: The Cooperative Game
  19. Software Project Survival Guide
  20. The Best Software Writing I: Selected and Introduced by Joel Spolsky
  21. Debugging the Development Process: Practical Strategies for Staying Focused, Hitting Ship Dates, and Building Solid Teams
  22. Rapid Development: Taming Wild Software Schedules
  23. Peopleware: Productive Projects and Teams

    Mentality


  24. Slack: Getting Past Burnout, Busywork, and the Myth of Total Efficiency
  25. Against Method
  26. The Passionate Programmer: Creating a Remarkable Career in Software Development

    History


  27. The Mythical Man-Month: Essays on Software Engineering
  28. Computing Calamities: Lessons Learned from Products, Projects, and Companies That Failed
  29. The Deadline: A Novel About Project Management

    Mid Level Software Engineer Reading List


    Read This First


  30. Personal Development for Smart People: The Conscious Pursuit of Personal Growth

    Fundementals


  31. The Clean Coder: A Code of Conduct for Professional Programmers
  32. Clean Code: A Handbook of Agile Software Craftsmanship
  33. Solid Code
  34. Code Craft: The Practice of Writing Excellent Code
  35. Software Craftsmanship: The New Imperative
  36. Writing Solid Code

    Software Design


  37. Head First Design Patterns: A Brain-Friendly Guide
  38. Design Patterns: Elements of Reusable Object-Oriented Software
  39. Domain-Driven Design: Tackling Complexity in the Heart of Software
  40. Domain-Driven Design Distilled
  41. Design Patterns Explained: A New Perspective on Object-Oriented Design
  42. Design Patterns in C# - Even though this is specific to C# the pattern can be used in any OO language.
  43. Refactoring to Patterns

    Software Engineering Skill Sets


  44. Building Microservices: Designing Fine-Grained Systems
  45. Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools
  46. NoEstimates: How To Measure Project Progress Without Estimating
  47. Object-Oriented Software Construction
  48. The Art of Software Testing
  49. Release It!: Design and Deploy Production-Ready Software
  50. Working Effectively with Legacy Code
  51. Test Driven Development: By Example

    Databases


  52. Database System Concepts
  53. Database Management Systems
  54. Foundation for Object / Relational Databases: The Third Manifesto
  55. Refactoring Databases: Evolutionary Database Design
  56. Data Access Patterns: Database Interactions in Object-Oriented Applications

    User Experience


  57. Don't Make Me Think: A Common Sense Approach to Web Usability
  58. The Design of Everyday Things
  59. Programming Collective Intelligence: Building Smart Web 2.0 Applications
  60. User Interface Design for Programmers
  61. GUI Bloopers 2.0: Common User Interface Design Don'ts and Dos

    Mentality


  62. The Productive Programmer
  63. Extreme Programming Explained: Embrace Change
  64. Coders at Work: Reflections on the Craft of Programming
  65. Facts and Fallacies of Software Engineering

    History


  66. Dreaming in Code: Two Dozen Programmers, Three Years, 4,732 Bugs, and One Quest for Transcendent Software
  67. New Turning Omnibus: 66 Excursions in Computer Science
  68. Hacker's Delight
  69. The Alchemist
  70. Masterminds of Programming: Conversations with the Creators of Major Programming Languages
  71. The Information: A History, A Theory, A Flood

    Specialist Skills


    In spite of the fact that many of these won't apply to your specific job I still recommend reading them for the insight, they'll give you into programming language and technology design.

  72. Peter Norton's Assembly Language Book for the IBM PC
  73. Expert C Programming: Deep C Secrets
  74. Enough Rope to Shoot Yourself in the Foot: Rules for C and C++ Programming
  75. The C++ Programming Language
  76. Effective C++: 55 Specific Ways to Improve Your Programs and Designs
  77. More Effective C++: 35 New Ways to Improve Your Programs and Designs
  78. More Effective C#: 50 Specific Ways to Improve Your C#
  79. CLR via C#
  80. Mr. Bunny's Big Cup o' Java
  81. Thinking in Java
  82. JUnit in Action
  83. Functional Programming in Scala
  84. The Art of Prolog: Advanced Programming Techniques
  85. The Craft of Prolog
  86. Programming Perl: Unmatched Power for Text Processing and Scripting
  87. Dive into Python 3
  88. why's (poignant) guide to Ruby
u/FrontpageWatch · 1 pointr/longtail

>Why is it so hard to figure out where to start?
>
>It's no secret that software development has exploded in the past 20 years. New software startups pop up like dandelions in the spring. It then follows that a lot of people think software development is a good career choice and are afraid of missing out on a lot of great opportunities.
>
>Software developers are, in general, pretty opinionated. I doubt this is unique to developers, but it gets tiresome when you've dealt with it for years. If we're not fighting over what operating system is better, then it's what language is better. If it's not that, then it's code editors, or databases, or frameworks, or bug trackers, or development processes, or...or...or. It's like we enjoy fighting.
>
>In a time where more and more people are becoming developers, it's not enough to be just "a developer" anymore. No, to feel superior now, developers need to somehow differentiate themselves from both the non-developer “rabble” and their fellow developers.
>
>This mentality has lead to more coding languages being developed that purport to "fix" issues with other languages. New frameworks are built to "fix" issues with previous frameworks. And on and on.
>
>All this leads to a huge amount of choices, opinions, and resources. Naturally, that makes starting to learn, daunting.
>
>Since I'm a developer too, I'm susceptible to the same opinions and biases that I just railed against. The difference is, I'm right. I'm kidding, seriously, calm down everybody. Here are my suggestions.
>
>Choose your weapon language
>
>As someone once said: “the weapon doesn’t make the man.” It’s probably a quote from some B martial arts movie or Dragonball Z, but the philosophy holds true for programming languages. A good developer is a good developer regardless of language. However, you need to start someplace, and if you pick your first language wisely, you’ll drastically shorten the time to hit your goal.
>
>Picking a language boils down to what you want to do. This is a quick list of general development goals and what language(s) are your best options to get there:
>
>1. Front-end web development (user interface and interaction): Javascript, HTML & CSS
>1. Back-end web development (services that front-end web apps and mobile apps call out to): Ruby, Python or Javascript
>1. Mobile development: Swift (iOS) or Java (Android)
>1. Windows development: C#
>1. MacOS development: Swift or Objective-C
>1. Operating systems, file systems, embedded systems, etc: C/C++
>
>Naturally, there are other options for each of these. Javascript is useful for items 1-5, for instance. But the list is a good starting place as-is.
>
>How to find good resources to start learning
>
>There are a ton of resources to learn to code out on the web. How do you sift through the chaff and find the real gems?
>
>Most resources fall into the following categories:
>
> Books
>
Videos
> Blogs/tutorials
>
Courses
>
>Books are the traditional go-to resource. Search Amazon.com for your topic and read reviews. Make sure that any books you're considering are new. Languages change and older books could slow your progress.
>
>A lot of people have gravitated to videos to learn coding and other topics. YouTube is the first place most people look. Fair warning, this is going to turn up a bunch of crap. Look at how many subscribers a given instructor has, and watch some videos to see if their style and method works for you. Another possible issue is that because video is more difficult to update for new versions of a language (or corresponding tools), some videos might be outdated.
>
>For blogs and tutorials, a simple google search like "best python tutorial" or "best swift tutorial for beginners" is a great place to start. As with videos, you'll have to try a few to see how they work with your learning style.
>
>Online courses are the newest resource on the scene. Codecademy is one that a lot of people find immediately. However, after I talked to a lot of people who tried it, none really thought it did a good job. Free Code Camp or The Odin Project are both highly regarded for web development. Udacity, Coursera, Udemy all have courses in different genres. Each has reviews so you can compare and only look at ones that helped others. My specific examples follow in the next section.
>
>Where you should start, specifically
>
>Each development goal in the above list is different enough to require different starting points. I’ll list the place that I’d recommend you start for each one. I have not personally tried all of them, but have come across them when doing research. There also might be better ones, and so if you know of any, let me know and I’ll update this list.
>
>1. Front-end web development: Free Code Camp
>1. Back-end web development: Ruby (for Rails), Python (for Django), Javascript (for Node)
>1. Mobile development: Swift Lynda’s Swift Essentials (check your local library to see if you get a free Lynda account with a library card) or Flatiron school’s free Swift course, Swift Programming book or Java Head First Java, University of Helsinki’s MOOC
>1. Windows development: Head First C#, Pluralsight’s C# course
>1. MacOS development: Cocoa programming for OS X, or the same courses for mobile Swift
>1. Operating systems, filesystems, embedded systems: C++ How to Program book, C++ Tutorial for Complete Beginners
>
>Once you pick your language and starting point and you start learning, some things will be obvious, but others will be difficult to understand. You’re going to run into trouble and with concepts and code errors. That’s normal. We’ve all been there. Getting unstuck takes practice too.
>
>How to get unstuck once you’ve started
>
>Once you start learning to code, you're going to run into problems that you don't know how to solve. This is normal and part of the process. You don't really learn unless you struggle through it. That said, you won't always be able to move forward without some help. So how do you find that help?
>
>First off, forget books. They aren't a great place to start here, because the number and types of errors they can cover is so small.
>
>Online is the easiest place to find help. Most devs look for solutions on StackOverflow or just google the error message (if they have one). Other solutions are to find newsgroups or forums dedicated to the language you're using.
>
>How to use Google to get unstuck
>
>When you first try to google an answer to your problem, you're going to run into the issue of what to search for. Experienced developers are really good at this part, but unfortunately, it's hard for beginners, who need it the most. So here I'll give you some expert hints on how to improve your search results.
>
>1. Always include the name of the language you're using. If you're using a specific tool, database, or framework, include that as well. Don't include all of them, just the ones that you believe are relevant. This will take practice.
>1. If you're getting an error message, include that in quotes. Edit the message to contain only the core of the message so it doesn't reference any files, classes, path or filenames that are specific to your program or computer. The trick here is to make the error message as specific as possible while still being general enough to apply to others who are using the same language/tool/etc. but in a different context.
>1. If you're working through a publicly-published problem from a book or course, add that information to the search.
>1. Explain what you're trying to do, with the fewest words. This is tough for developers of all levels. For a beginner, you may have trouble coming up with the right terminology. This is where the books, tutorials, and course materials come in handy. They should use the right language if you're doing something similar to what's covered in them. If not, you're going to need to try some different wording. Remember, other beginners are going to be having problems too and might explain the problem the same way.
>
>Here are a few examples I’ve used (minus the quotes):
>

u/TheTrub · 3 pointsr/rstats
  1. The R Book is probably the most widely used text for beginners, but if you know what types of data you will be working with and the types of analyses you want to run, there are more specific texts that can help walk you through. On the other hand, there are a ton of online resources you can access for free. The only time I've bought a book for R was for timeseries analysis. I bought it because I needed an introduction to the topic and it was handy having the accompanying script being written in R.

  2. R works perfectly fine with both mac and windows. Unlike most people, though, I prefer not to use RStudio. To me it's just easier to keep everything organized by use the developer's console and writing and organizing my output in Notepad++.

    For hardware demands, large datasets won't be as big of an issue as model complexity, but given that modern computing demands keep going up, I think 16 GB should be standard for anyone getting a new computer. You'll be less likely to need to make an upgrade in the near future when OS and other software demands require you to do so. The bigger thing to consider is the read/write speed of your hard drive, so definitely go with an SSD. This will also help with power consumption and durability. For your CPU, R doesn't default to using multiple cores, so you'll want to look at single-core benchmarks when picking out your machine. With that being said, R does use multiple threads on a single core, so I wouldn't settle for an i5. But if you're using MCMC, a multicore CPU can be a lifesaver since you can assign your chains to run on different cores in parallel.

    I hope that helps. Good luck with your purchase!
u/phao · 4 pointsr/carlhprogramming

Depends on what you're learning...

I learned how to program basically through these books:

  • C# How To Program (I only read like the first 4 or 5 chapters). I don't remember which edition was, but this is a current one => http://www.amazon.com/Visual-2012-How-Program-Deitel/dp/0133379337/ - I stopped because an internet friend of mine told me to read the next one on the list.
  • The ANSI C Programming Language (aka K&R2). This one is extremely good, but it's harder to read. The problem here is that it's very easy to think you understood the subject while you didn't. It's not focused at teaching people how to program (It's a book on the C language for programmers) although it can be read by beginners. http://www.amazon.com/C-Programming-Language-2nd/dp/0131103628/ - After reading this book for the first time, a guy on the #plan9 irc channel @ irc.freenode.com told me to look for SICP, which I did.
  • SICP - http://mitpress.mit.edu/sicp/ - Probably the best place to learn programming. The textbook is available online. There are also video lectures from MIT 1985. Reading SICP sorts of open the whole "scheme world," full of pretty interesting materials.
  • The Little Schemer - http://www.amazon.com/Little-Schemer-Daniel-P-Friedman/dp/0262560992/ - This is a book pretty much on functional programming and specially in recursive thinking. This is the best book on programming I've ever seen. Although it's not a good book to teach you foundations of programming (use SICP for that).
  • The Seasoned Schemer - http://www.amazon.com/Seasoned-Schemer-Daniel-P-Friedman/dp/026256100X/ - This is kind of a "sequel" to the previous one (same authors iirc). It goes on with techniques for imperative programming. It's really good too.

    In between K&R2 and SICP (or was it before the C# book? I don't really remember), I studied some PHP, but it wasn't for long. I've spent considerable time looking at scheme related materials. I really liked many of the books that I've read while "there."

    Anyway, these are the books I've studied back when I was starting in the order I've read them. Right after reading SICP, I've re-read K&R2. After finishing The Seasoned Schemer, I read K&R2 a third time. Some years later, I've re-read The Little Schemer, which I intend to re-read again, together with The Seasoned Schemer (they are very good).

    Maybe these will work for you, maybe they won't. I don't really know. I can only tell you that I believe they worked for me.

    They're not easy books, except for the first maybe. I remember getting stuck fairly often (I was 16 at the time with a poor education background). I just liked doing the exercises/reading the contents so much that I kept going.
u/JonKalb · 28 pointsr/cpp

Modern C++ (C++11 or later) books are not nearly as plentiful as those for Classic C++, but there are a few notables.

Bjarne's college text may be what you are looking for:

Programming: Principles and Practice Using C++ https://www.amazon.com/Programming-Principles-Practice-Using-2nd/dp/0321992784/ref=pd_sim_14_2/144-7765085-0122037

It is aimed at engineers, which makes it less general, but might be good for you.

Of course his general intro is also updated to C++11.

The C++ Programming Language https://www.amazon.com/C-Programming-Language-4th/dp/0321563840/ref=pd_sim_14_2/144-7765085-0122037

This is aimed at experienced systems programmers, so it may be a bit heavy for students, which makes the Primer (that you mentioned attractive).

C++ Primer https://www.amazon.com/Primer-5th-Stanley-B-Lippman/dp/0321714113/ref=pd_bxgy_14_img_2/144-7765085-0122037

Be certain to get the 5th edition.

Of Scott's books only the latest is Modern.

Effective Modern C++ https://www.amazon.com/Effective-Modern-Specific-Ways-Improve/dp/1491903996/ref=pd_sim_14_2/144-7765085-0122037?_encoding=UTF8

This is less an introduction for students than for Journeymen (Journeypeople?) programmers.

For just plain good programming style consider Ivan's book.

Functional Programming in C++ https://www.amazon.com/gp/product/1617293814

Don't be put off by "Functional." This style of programming will make your students excellent programmers.

There are some modern books of high quality that are niche.

The ultimate guide to templates:
C++ Templates https://www.amazon.com/C-Templates-Complete-Guide-2nd/dp/0321714121/ref=pd_sim_14_1/144-7765085-0122037

The ultimate guide to concurrency:
C++ Concurrency in Action https://www.amazon.com/C-Concurrency-Action-Anthony-Williams/dp/1617294691/ref=pd_sim_14_1/144-7765085-0122037

Some library options:

Despite its name, this is mostly reference. A very good reference.
The C++ Standard Library: A Tutorial and Reference (2nd Edition) https://www.amazon.com/Standard-Library-Tutorial-Reference-2nd/dp/0321623215/ref=pd_sim_14_2/144-7765085-0122037

Arthur's book covers C++17, which makes it one of the most modern on this list:
Mastering the C++17 STL: Make full use of the standard library components in C++17 https://www.amazon.com/Mastering-17-STL-standard-components-ebook/dp/B076CQ1RFF/ref=sr_1_fkmrnull_1

To what extent are you teaching C++ and to what extent are you teaching programing?

Good luck and have fun!

u/_justpassingby_ · 1 pointr/cpp_questions

People seem to like it, based on the reviews. I'm just not convinced it fits the needs of the op. From the preface:

>As an analogy, think of a short sightseeing tour of a city, such as Copenhagen or New York. In
just a few hours, you are given a quick peek at the major attractions, told a few background stories,
and usually given some suggestions about what to see next. You do
not
know the city after such a
tour. You do
not
understand all you have seen and heard. You do
not
know how to navigate the
formal and informal rules that govern life in the city. To really know a city, you have to live in it, often for years. However, with a bit of luck, you will have gained a bit of an overview, a notion of
what is special about the city, and ideas of what might be of interest to you. After the tour, the real
exploration can begin

This would seem to imply more books being read afterwards. What I would argue is that you may as well skip the fast-tracked books like this and learn it from the ground up the first time. I don't know about other books being mentioned, but C++ Primer does that for sure.

I learned from C++ Primer, and then at university there was a course learning from Big C++, which is another big book, and even then there were always questions on the forums that I knew would have been unnecessary had C++ Primer been used (although data structures and the like were definitely covered better in Big C++). C++ is like that, and it's best not to try and learn it in a day like you can some other languages.

u/Freonr2 · 2 pointsr/dotnet

Given your understanding of the problem with Js/React, I'd dive right in to C#/.NetCore. You're aware of potential pitfalls and confusion of language vs framework, but there's probably not a lot of avoiding it anyway. C# is fairly straight forward for the most part. .NetCore is fairly dominant now so starting with it makes sense.

You could start with this book if you wanted:

https://www.amazon.com/Programming-Language-Covering-Microsoft-Development/dp/0321741765

Its starting to show some age, but it is where I started. It does do a good job covering stuff like value vs reference types, nulls, basic operators, special types like string, structured exception handling, etc. that could be valuable, but you can probably infer most of it if you have learned any sort of OO before. There's some stuff in there that's simply out of date, and glaringly no coverage of async/await. There are a bunch of newer language features such as string interpolation that may be better or more accepted ways to handle things these days.

edit: this is also popular, but still only up to date on C# 5.0:
https://www.amazon.com/C-Depth-3rd-Jon-Skeet/dp/161729134X

u/Thedabit · 18 pointsr/lisp

Some context, I've been living in this house for about 3 years now, my girlfriend and i moved in to take care of the owner of the house. Turns out that he was a big lisp / scheme hacker back in the 80s-90s and had developed a lot of cutting edge tech in his hay day. Anyway, these books have been hiding in his library downstairs...

It was like finding a bunch of hidden magical scrolls of lost knowledge :)

edit: I will compile a list of the books later. I'm out doing 4th of July things.

update: List of books

  • Lisp: Style and Design by Molly M. Miller and Eric Benson
    ISBN: 1-55558-044-0

  • Common Lisp The Language Second Edition by Guy L. Steele
    ISBN: 1-55558-042-4

  • The Little LISPer Trade Edition by Daniel P. Friedman and Matthias Felleisen
    ISBN: 0-262-56038-0

  • Common LISPcraft by Robert Wilensky
    ISBN: 0-393-95544-3

  • Object-Oriented Programming in Common Lisp by Sonya E. Keene
    ISBN: 0-201-17589-4

  • Structure and Interpretation of Computer Programs by Harold Abelson, Gerald Jay Sussman w/Julie Sussman
    ISBN: 0-07-000-422-6

  • ANSI Common Lisp by Paul Graham
    ISBN: 0-13-370875-6

  • Programming Paradigms in LISP by Rajeev Sangal
    ISBN: 0-07-054666-5

  • The Art of the Metaobject Protocol by Gregor Kiczales, Jim des Rivieres, and Daniel G. Bobrow
    ISBN: 0-262-11158-6

  • Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp by Peter Norvig
    ISBN: 1-55860-191-0

  • Practical Common Lisp by Peter Seibel
    ISBN: 1-59059-239-5

  • Common Lisp The Language by Guy L. Steele
    ISBN: 0-932376-41-X

  • Anatomy of Lisp by John Allen
    ISBN: 0-07-001115-X

  • Lisp Objects, and Symbolic Programming by Robert R. Kessler
    ISBN: 0-673-39773-4

  • Performance and Evaluation of Lisp Systems by Richard P. Gabriel
    ISBN: 0-262-07093-6

  • A Programmer's Guide to Common Lisp by Deborah G. Tatar
    ISBN: 0-932376-87-8

  • Understanding CLOS The Common Lisp Object System by Jo A. Lawless and Molly M. Miller
    ISBN: 0-13-717232-X

  • The Common Lisp Companion by Tim D. Koschmann
    ISBN: 0-417-50308-8

  • Symbolic Computing with Lisp and Prolog by Robert A. Mueller and Rex L. Page
    ISBN: 0-471-60771-1

  • Scheme and the Art of Programming by George Springer and Daniel P. Friedman
    ISBN: 0-262-19288-8

  • Programming In Scheme by Michael Eisenberg
    ISBN: 0-262-55017-2

  • The Schematics of Computation by Vincent S. Manis and James J. Little
    ISBN: 0-13-834284-9

  • The Joy of Clojure by Michael Fogus and Chris Houser
    ISBN: 1-935182-64-1

  • Clojure For The Brave and True by Daniel Higginbotham
    ISBN: 978-1-59327-591-4



u/aLogicalOperator · 2 pointsr/learnprogramming

First off I messed with a lot of languages before I think I really grasped the basics. I'll note that I used some Qbasic and Lua before starting my CS degree but I don't think they taught me good fundamentals because they are a little more "simple" and left me confused looking at lower level languages which is pretty much anything else.

I just started my CS degree recently and finished the first class which was in C#. I felt like this language really gave me a better grasp on the fundamentals.

More importantly than the language though I'd say get yourself a good book. For my C# class we used this book which is really good but kind of expensive. If you are interested in C++ many people recommend C++ Primer or The C++ Programming Language.

In taking my C# class I realized I thought I knew a lot about the basics of programming but actually didn't fully understand some very basic stuff, even things I had used a lot before.

u/kirrychan · 1 pointr/csharp

C# was my first language too! Great choice. I learned from this book called "Starting out with Visual C#":

https://www.amazon.com/Starting-out-Visual-C-4th/dp/0134382609

It is very expensive (maybe you can find one used or an earlier edition?), but I found it to be easier to understand than Head First C# and the examples are very good at ramping up from easy to more complex. Some may disagree and say you can learn from free tutorials online, but since I'm very comfortable in C# now, I'd say it was worth every penny imo. The online videos included with the book were nice too.

u/StuartPBentley · 1 pointr/lua

I second Programming in Lua as a recommendation - it is the book to learn Lua, written by the main architect behind the language itself (Roberto Ierusalimschy). The first edition is available online, but I personally recommend at least the second edition (of which I personally have a signed copy) - the fourth edition, the latest, sounds like a good pick (the description says it's been completely re-organized, based on Roberto's experience from decades of teaching Lua).

As for an environment to learn it in, I recommend Cloud9, which gives you an entire Linux integrated development environment for free (you may also want to pick up the Linux Pocket Guide, which is a good reference for learning how to get around on the command line).

u/[deleted] · 1 pointr/learnprogramming

If you're like me and prefer having a physical book then check out The Quick Python Book. I'm working my way through it now and have only good things to say. It's fairly comprehensive (covers Python3), to the point, written for experienced programmers, and very enjoyable. Plus it comes with a completely free version of the eBook (I'm looking at you Safari) should you ever need it. The free online resources posted by others are great as well.

u/dstrott · 1 pointr/Cplusplus

C++ In Easy Steps is a really good (and cheap) tutorial book for beginners and is good as a quick reference for basic concepts. It's like 200 pages, isn't dense, an Mike McGrath is great at explaining things simply. When I went back to C++ after years of using MATLAB, it was very useful to helping kickstart remembering how the language worked...

u/TheIcyStar · 1 pointr/roblox

If you don't know a single thing about programming: Go to your local library and pick up a programming book on almost any language, (visual basic, java maybe?), grasp the concept of coding and then move on.

If you do know some little things on programming, but no lua at all: Look at the wiki, read some tutorials, do them

Then the good stuff. I recommend these two books: Basic roblox lua programming, and Intermediate roblox lua programming

I fully read these books, (they're litterally beside me right now). They really helped me out in the start. However, the author did leave a couple of bugs in the code, but I'm willing to help you out c:

Afterwards, work on some small projects, and slowly bigger ones. I started out with a simple part generator that puts a light into a brick, turns the brick into a ball, and makes it roll down a hill, then I went on and made a custom part generator And now my current big project is making a small game.

In the meantime I went on scripting helpers looking at other people's code, trying to fix it, perhaps learning something new. Whenever I wanted to know more information on something, I just googled, for example, "Roblox Remote Events" and all the info I needed came up in the wiki

If you have any questions pm me on reddit or roblox (username: TehIcyStar)

Good luck :D

u/rzzzwilson · 3 pointsr/learnpython

I like Dave Beazley's book, though it may be a little tough for a noob as it's a real reference. The beginning does have a quick introduction to python, but it doesn't try to teach python. The rest of the book is a reference for many of the library modules.

Another one to consider is Doug Hellmann's book. If you like his online Python module of the week site you'll like the book.

Both of the above books are references to using the library modules. Once you know the base language this is the sort of reference you need. If you are still learning base python then you need some other reference until you are ready for books like the two above. The nice thing about Amazon is that you can download a free e-book sample before buying, though it's probably wise to do a final check of the paper version before buying as an e-book can be very different from the paper version (usually worse, but who knows). The Hellmann e-book is particularly bad in this respect.

u/AmericanJBert · 1 pointr/learnprogramming

They're expensive, but the Deitel books are pretty good at teaching the basics of programming.

Microsoft has pretty good resources for learning C# here.

u/TailoredBeats · 8 pointsr/django

There's no reason that data rich applications can't be rendered server side. It just takes a little bit more thought. Basecamp is a Rails app but it's a great example. I'd look into how it is setup and see if you can't replicate that using Django. I know that you can use the Turbolinks library that they use with Django it just requires a Middleware to set the headers it requires. You might also pick up Two Scoops of Django and read the sections on templating best practices.

u/undefdev · 6 pointsr/gamedev

You had a Lua Uppercase Accident. :)

Your questions are very general - I think it would be a very good idea if you read Programming in Lua first.
I know this idea might seem unattractive because it's not directly game related, but trust me - if you don't know your tools sufficiently well things will get so messy that continuing working on your project will get way too hard.
Besides, it's super annoying to find out about something that could have saved you days of work if you had known about it earlier.

If you want to look at how other engines incorporate Lua, you can look at the LÖVE source code for example.

u/AnTaRes27_ · 1 pointr/utdallas

the books i have:

C++ 8th edition by Tony Gaddis amazon link

C 8th edition by Paul & Harvey Deitel amazon link

Schaum's Outline: Advanced Mathematics for Engineers and Scientists amazon link


the books i want:

Shigley's Mechanical Engineering Design (in SI units); ISBN 978-9339221638

Machinery's Handbook; ISBN 978-0831130916

Machine Shop Trade Secrets by James Harvey; ISBN 978-0831132279 or 978-0831134778 (prefer second edition)

*CNC Trade Secrets by James Harvey; ISBN 978-0831135027

you can PM me your offer and we'll negotiate from there :) note it doesnt really need to be a 1:1 trade. if you have other things in mind PM me anyway i might be interested

i'll delete the post when it's all out. thanks!

u/Raphman90 · 1 pointr/AskReddit

Honestly just dive head long into it. Look up tutorials, buy beginner books. I'm a C++ guy myself, but there's more languages out there than I can count. [this is my choice for a beginning c++ book] (http://www.amazon.com/Starting-Out-C-Early-Objects/dp/0136077749) also head to /r/programming and check stuff out there. Good luck!

u/fernly · 23 pointsr/learnpython

Not personally familiar with it, but a quick Amazon search shows that the same authors have written essentially the same book for different languages: Data Structures and Algorithms in Java, ...in C++, ...in Python. However it is confusing to do this search as there are several other books that use the same words, "Data Structures and Algorithms" but they are by other authors.

Using the "Look Inside" feature I note that in the intro, they say the Python version is improved over the others in several ways. Scrolling to the beginning of chapter 1 they say the book is based on "Python 3.1 and later". It is good that in 2013 they committed to Python 3, but it is now 6 years and 6 dot-versions behind the state of the art, including the async features and several others. It would be good if they'd rewrite it to use 3.8 and all its features.

Scrolling on I am not impressed with their pedagogy. They dump a lot on the student in the first few topics, bouncing between the assignment statement to class methods and mutability. So many concepts so fast, with no code to make them real or show their application. The student is going to be memorizing a whole list of terms and definitions without ever applying any of them. Jeez, they even introduce the frozenSet class before the dict, and still without a single executable example. Expressions and operator precedence, you meet every operator and reserved word in the language in what is called a "Python Primer" section. Lots of luck remembering all that, student, when you need it.

And on and on: you basically have to learn the entire language, functions, argument passing, the entire list of builtins, I/O operations, try/except/raise, comprehension syntax! -- and you have not written one line of code yet.

Based on this admittedly cursory review, I would not recommend this for either a class or for self-study. Since you've had a fair amount of experience, try Python 201 which gets into the use of the standard lib modules. Or Doug Hellman's Python 3 Standard Library by Example.

u/bytecracker · 5 pointsr/roblox

Yeah, nowadays the Internet is full of tutorials on Lua and even specifically on ROBLOX Lua. There are videos, books, etc.
Although slightly outdated, the Cookbook would be a great place to start. There's also a newer one here.

You can also buy a real book about using Lua with ROBLOX. Once you know the basics, it gets much easier. All you have to do is look stuff up in the Wiki. It just takes a little while before you can understand the docs.

You can also take a look at the Wiki's tutorial section.

u/ischickenafruit · 1 pointr/C_Programming

C How to Program (Deitel & Deitel) - Great book that introduces C programming as well as concepts of programming, and a bit about C++.

One comment I would make is that you're trying to do too many things. Pick one and work at it until you get to a point of feeling "fluent". You'll know you're fluent when you feel that you can express anything that you like in the language.

u/arcsecond · 2 pointsr/raspberry_pi

So, (IMO) the raspberry pi doesn't specifically bring anything to learning C++ that I think you couldn't get on any other computer. And I'm assuming you have a computer because you're posting here (could be a phone but i don't know).

If you've got windows I tend towards Visual Studio and on a Mac I'd go with Xcode. When I'm in Linux I tend to just go straight to gcc and make (this won't make sense to you yet)

Books: These are the ones that were used in my C++ focused classes:

Big C++
ADTs, Data Structures and Problem Solving in C++

Hope this helps.

u/poohshoes · 0 pointsr/gamedev

Everyone is giving some conflicting advice so here's my also conflicting two cents.

  1. C++ is a perfectly valid language to start learning on. BUT don't use any complex language features to start. C is more or less a subset of C++ so consider checking out some C tutorials.

  2. Don't worry about learning OO for now, a large minority of people don't even think it's good.

  3. Just keep working away at it, it takes a lot of time, find a good textbook or website with small problems that you can solve.




    Here are some of the books I learned with:

    https://www.amazon.ca/Programming-Language-2nd-Brian-Kernighan/dp/0131103628

    https://www.amazon.ca/How-Program-10th-Paul-Deitel/dp/0134448235/ref=sr_1_1?ie=UTF8&qid=1501953321&sr=8-1&keywords=deitel+how+to+program
u/mzieg · 3 pointsr/cscareerquestions

How much Linux experience do you have?

What Python books have you read? I got some value out of Quick Python.

> Please review...memoization, OSI model, routers, switches

That's a little ambitious for 10 days prep with 6mo experience.

u/o1o1197o · 1 pointr/learnprogramming

Get Essential C# 4.0. This would be a great book to help you learn C# if you already know programming

u/Dioxy · 1 pointr/csharp

Essentials of C# is a great book for beginners. It's clear, concise and covers a wide range of topics. After that, practice practice practice.

u/tufflax · 1 pointr/learnprogramming

No. I have read The Joy of Clojure which is good but it is not the easiest book. Maybe check out Clojure for the Brave and True

u/Zombie_Eevee · 2 pointsr/web_design

I'm currently in a 4-week summer class and I've taught myself those exact three languages. I use this Visual Quick Start Guide HTML5 and CSS3 as well as this Head First HTML5 Programming Web Apps with JavaScript. They're both great books and maybe you can find them elsewhere without paying. Who knows. They go in-depth with every piece of code you should learn from basic to complex.

u/Medicalizawhat · 2 pointsr/learnprogramming

I've been reading through Essential C# and found it to be pretty good.

u/ahcomochingas · 3 pointsr/rstats

I recommend you to first study probability theory, (formal definitions, variable independence, moments, limit theorems, and some distributions) this is my favorite course, but it's in spanish http://lya.fciencias.unam.mx/lars/0625/, then I recommend this course in MIT: http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-041sc-probabilistic-systems-analysis-and-applied-probability-fall-2013/ it's going to take you a couple months to finish it, it's a lot of material, you can complement the material with this course http://oli.cmu.edu/courses/free-open/statistics-course-details/ (it has some r exercises). and in the road, try to make all the ocw homeworks on r, using Rmd, and some latex. Use the R book as a reference http://www.amazon.com/The-Book-Michael-J-Crawley/dp/0470973927

Learning R, is more about learning the math behind probability and the basic concepts of statistics than learning the language.

u/cbarox · 2 pointsr/gamedev

For just starting out, my favourite is C++ Programming in Easy Steps. It explains everything clearly using plain English and covers the basics of the language.

u/YesSoupForYou · 1 pointr/cpp

If you're able to get a book, there's a book that teaches very well the basics of C++, from there you can build on it by looking at learncpp.com and www.cpluscplus.com
The book is called C++ programming in easy steps by Mike McGrath ( amazon link)

u/mesmoria · 3 pointsr/programming

One of the best programming books i have read happens to be about Prolog. So of course it is out of print.

http://www.amazon.com/Craft-Prolog-Logic-Programming/dp/0262512270

u/il_doc · 2 pointsr/django

Two Scoops of Django by /u/pydanny is kind of a bible of django best practices

also, read the code of djangoproject.com and look at their app structure

u/jbakamovic · 24 pointsr/cpp

I can suggest to grab yourself a copy of C++ Templates: The Complete Guide. It's a great book.

u/nickworks · 3 pointsr/learnprogramming

Console applications are a great place to start. Then you can eventually move on to WPF applications or XNA games.

Here are some resources to get you started:

u/Pwillig · 1 pointr/learnprogramming

[This book] (http://www.amazon.com/Starting-Out-Early-Objects-7th/dp/0136077749) is that we're using for my Comp Sci I and II class. I highly recommend it as it goes really in depth into C++ concepts while providing tons of examples. I'm sure you can find a PDF of the book to preview.

u/RecursiveBob · 1 pointr/learnprogramming

If you want to learn C++, the standard textbook that all the college CS departments use is Deitel and Deitel's C++: How To Program. You might though want more online tutorials than a book though. Your first step is going to be to decide what it is you want to code, that will help you decide what language to learn.

u/antiquemule · 4 pointsr/statistics

I really like The R book as it teaches you stats at the same time as teaching R. However, opinions on Amazon differ wildly, so I'd check a copy in your local bookstore before buying.

u/igncampa · 5 pointsr/django

I have come to learn in my self-teaching journey that once you start looking for "more than the basics", it's time to start working on a project you will go hard at, and as you continue to make progress and come up with new ideas, new questions will arise, more problems and roadblocks will show up and by solving those is how you go beyond the basics.

That has been my approach though, there might be a magical recipe out there. In any case, people will probably recommend Two Scoops of Django. I, however, haven't read the book.

u/gifsbegone · 1 pointr/Clojure

As a fellow noob, I'm about half-way through Clojure for the Brave and True and it's really thorough and easy-to-follow so far.

u/ScotticusMaximus · -1 pointsr/ECE

If by computer engineering you mean including programming then
Big C++ by Horstman & Budd was an amazingly good book for learning C++. Reading this I probably didn't even need to go to my lectures.

u/rakhithamk · 1 pointr/arduino

I used following book to learn C, Pretty good book but 1000+ pages, mostly because they take a lot of time to explain things and give lot of exercises. Some you can skip.

https://www.amazon.com/How-Program-8th-Paul-Deitel/dp/0133976890

u/justforlurking123 · 1 pointr/Python

The Quick Python Book is my personal favorite.

http://www.amazon.com/Quick-Python-Book-Second-Edition/dp/193518220X

u/bushmecj · 0 pointsr/learnprogramming

I would recommend this book. It's a pretty big book but it covers all the basics of C++ (including objects and some data structures). I still use it from time to time when I need to quickly look up something.

u/ablakok · 3 pointsr/ProgrammingLanguages

Nice list. But how about DCPL, Design Concepts in Programming Languages?

u/driscollis · 1 pointr/learnpython

You could use Doug Hellman's "The Python Standard Library by Example" (https://www.amazon.com/Python-Standard-Library-Example-Developers/dp/0134291050). It has a Python 3 version. I have a book called Python 101 (https://python101.pythonlibrary.org/), although it's not really a reference...you might find it helpful though.

u/mac10_named_desire · 7 pointsr/roblox
u/chevalglass · 1 pointr/suggestmeabook

I'm currently learning C#. This is the book that we are using in class.

Though it is quite pricey (~$100) (I'm renting it (~$35) which is WAY cheaper and may not be an option in your case).

The book isn't always the easiest to understand, but it has plenty of examples and problems at the end of each chapter that are good exercises and seems fairly thorough.

I do have some understanding of coding ( if else, loops, variables, data types etc ) which has made it a lot easier for me to figure things out. I'm not sure how easily he would pick it up.

u/Highflyer108 · 1 pointr/learnpython

Well I found the book for €25 so I decided to go ahead and buy it. And that link is to the first edition btw, a second edition was released this June so I hope if there was any formatting issues with the non-kindle version, they're fixed now.

u/ewiethoff · 1 pointr/learnprogramming

HTML Visual QuickStart Guide (any edition) is fine for starting HTML.

u/Myrgy · 1 pointr/cpp

This c++17 book is good - http://www.cppstd17.com
I have another one about templates, but it's not aimed for begginners https://www.amazon.com/C-Templates-Complete-Guide-2nd/dp/0321714121. Nut I can't recommend it as a general start. And "concurrency in action" is a greate one!

u/lasthope106 · 1 pointr/learnprogramming

If you already have a solid understanding of C++, then go with the Python Tutorial. hobgoblin mentioned Udacity, but their CS101 uses Python to teach you CS fundamentals. Since teaching you the language is not the focus of the class, you are taught only a very small subset of the language.

A book I'm currently reading is The Quick Python Book, which is aimed at people who already know how to program, but I would rate it in the same league as the Python tutorial.

u/ryosen · 1 pointr/learnprogramming

I would also recommend The Quick Python Book if you already have some programming experience.

As for advice about getting frustrated? Just keep plugging away at it. It'll be worth it.

u/zzing · 2 pointsr/cpp

One of the books somebody asked about earlier would likely explain why it was at the end - because it was that way in a lot of text books peddled to schools.

u/THE_HYPNOPOPE · 1 pointr/cpp

What do you guys think of this book

u/ProofByPicture · 1 pointr/learnprogramming

how about one literally called The Quick Python Book?

u/one_zer · 1 pointr/programmingcirclejerk

Oh man, O'Keefe is doing Haskell now?

u/genjipress · 1 pointr/Python

Further notes, here's some of the books I've been looking at:

Modern Compiler Implementation (there's Java, C, and ML editions; this is C)

https://www.amazon.com/Modern-Compiler-Implementation-Andrew-Appel/dp/052158390X

Design Concepts in Programming Languages

https://www.amazon.com/Design-Concepts-Programming-Languages-Press/dp/0262201755

Engineering A Compiler

https://www.amazon.com/Engineering-Compiler-Keith-Cooper/dp/012088478X

Programming Language Pragmatics

https://www.amazon.com/Programming-Language-Pragmatics-Michael-Scott/dp/0124104096

u/erikhensarling · 1 pointr/epidemiology

Assuming your speaking of the statistical language "R," I cannot recommend anything. I have never used "R." But here is Amazon's top result: http://www.amazon.com/The-Book-Michael-J-Crawley/dp/0470973927

tl;dr: I am not helpful. Sorry OP.