(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)
Specs:
Height | 9.75 Inches |
Length | 8 Inches |
Number of items | 1 |
Weight | 3.5714886444 Pounds |
Width | 2 Inches |
42. C++ How to Program (10th Edition)
Specs:
Height | 9 Inches |
Length | 1.4 Inches |
Number of items | 1 |
Weight | 3.0203329894 Pounds |
Width | 6.9 Inches |
43. Big C++, 2nd Edition
- Paper back cover has creases and first few pages are bent on the top cornor. some pages cornors are bent.Pages are clean
Features:
Specs:
Height | 9.098407 Inches |
Length | 7.299198 Inches |
Number of items | 1 |
Weight | 3.5494424182 Pounds |
Width | 1.499997 Inches |
44. Design Concepts in Programming Languages (MIT Press)
NewMint ConditionDispatch same day for order received before 12 noonGuaranteed packagingNo quibbles returns
Specs:
Height | 9 Inches |
Length | 8 Inches |
Number of items | 1 |
Weight | 5.5997414548 Pounds |
Width | 1.9375 Inches |
45. Visual C# 2012 How to Program (5th Edition) (How to Program (Deitel))
- Used Book in Good Condition
Features:
Specs:
Height | 9 Inches |
Length | 7 Inches |
Number of items | 1 |
Weight | 3.19890742162 Pounds |
Width | 1.7 Inches |
46. The Quick Python Book, Second Edition
- VAGA CHEEKY FINGER NAIL FILES MANICURE SET: Each of the finger nail file is in a different color
- VAGA GLASS EMERY BOARDS FOR NAILS: Ideal present for a nail art fan - Girls and Women alike
- GLASS NAIL FILE WITH A CASE: Our nail art tools made from durable materials, packed individually
- GLASS NAILFILE: Extremely long lasting and durable Glass files for the nails
- GLASS FILES FOR NAILS : To View more nail art products please click on "VAGA" under the title
Features:
Specs:
Height | 9.25 Inches |
Length | 7.38 Inches |
Number of items | 1 |
Weight | 1.3668660244 Pounds |
Width | 0.74 Inches |
47. Essential C# 4.0 (3rd Edition) (Microsoft Windows Development Series)
- Factory sealed DVD
Features:
Specs:
Height | 9.5 Inches |
Length | 7.5 Inches |
Number of items | 1 |
Weight | 3.30693393 Pounds |
Width | 2.25 Inches |
48. Clojure for the Brave and True: Learn the Ultimate Language and Become a Better Programmer
Specs:
Color | Multicolor |
Height | 9.25 Inches |
Length | 7.06 Inches |
Number of items | 1 |
Release date | October 2015 |
Weight | 1.4 Pounds |
Width | 0.77 Inches |
49. The R Book
- Wiley
Features:
Specs:
Height | 9.901555 Inches |
Length | 7.799197 Inches |
Number of items | 1 |
Weight | 5.21613711892 Pounds |
Width | 2.299208 Inches |
50. C++ Programming in easy steps
Specs:
Height | 9 Inches |
Length | 7.5 Inches |
Number of items | 1 |
Weight | 0.95 Pounds |
Width | 0.5 Inches |
51. C How to Program (8th Edition)
Specs:
Height | 9.15 Inches |
Length | 7.05 Inches |
Number of items | 1 |
Weight | 2.7998707274 Pounds |
Width | 1.65 Inches |
52. C++ Templates: The Complete Guide (2nd Edition)
- Used Book in Good Condition
Features:
Specs:
Height | 9.45 Inches |
Length | 7.85 Inches |
Number of items | 1 |
Weight | 3.3951188348 Pounds |
Width | 1.95 Inches |
53. Basic ROBLOX Lua Programming: (Black and White Edition)
- DC Comics
Features:
Specs:
Height | 10 Inches |
Length | 7 Inches |
Number of items | 1 |
Weight | 1.1 Pounds |
Width | 0.64 Inches |
54. Two Scoops of Django 1.11: Best Practices for the Django Web Framework
Specs:
Height | 9.25 Inches |
Length | 7.5 Inches |
Number of items | 1 |
Weight | 2.084 Pounds |
Width | 1.25 Inches |
55. The Python 3 Standard Library by Example (Developer's Library)
Specs:
Height | 9.1 Inches |
Length | 7.1 Inches |
Number of items | 1 |
Weight | 3.95068373504 Pounds |
Width | 2.15 Inches |
56. The Craft of Prolog (Logic Programming)
- Used Book in Good Condition
Features:
Specs:
Color | Cream |
Height | 9 Inches |
Length | 7.06 Inches |
Number of items | 1 |
Release date | December 2009 |
Weight | 1.75047036028 Pounds |
Width | 1.06 Inches |
57. Starting out with Visual C# (4th Edition)
Specs:
Height | 10.85 Inches |
Length | 8.55 Inches |
Number of items | 1 |
Weight | 3.19008893114 Pounds |
Width | 1.4 Inches |
58. Starting Out with C++: Early Objects (7th Edition)
Specs:
Height | 10 Inches |
Length | 7.8 Inches |
Number of items | 1 |
Weight | 4.15791826132 Pounds |
Width | 1.7 Inches |
59. Programming in Lua, fourth edition
- Polish Release, cover may contain Polish text/markings. The disk has English audio.
Features:
Specs:
Height | 9.69 Inches |
Length | 7.44 Inches |
Number of items | 1 |
Weight | 1.51898498518 Pounds |
Width | 0.8 Inches |
60. HTML5 & CSS3 Visual QuickStart Guide (7th Edition)
Specs:
Height | 9.25 Inches |
Length | 7 Inches |
Number of items | 1 |
Weight | 2.2487150724 pounds |
Width | 1.25 Inches |
🎓 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.
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
Junior Software Engineer Reading List
Read This First
Fundementals
Understanding Professional Software Environments
Mentality
History
Mid Level Software Engineer Reading List
Read This First
Fundementals
Software Design
Software Engineering Skill Sets
Databases
User Experience
Mentality
History
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.
>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
weaponlanguage>
>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):
>
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!
Depends on what you're learning...
I learned how to program basically through these books:
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.
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!
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.
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
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
ISBN: 1-55558-044-0
ISBN: 1-55558-042-4
ISBN: 0-262-56038-0
ISBN: 0-393-95544-3
ISBN: 0-201-17589-4
ISBN: 0-07-000-422-6
ISBN: 0-13-370875-6
ISBN: 0-07-054666-5
ISBN: 0-262-11158-6
ISBN: 1-55860-191-0
ISBN: 1-59059-239-5
ISBN: 0-932376-41-X
ISBN: 0-07-001115-X
ISBN: 0-673-39773-4
ISBN: 0-262-07093-6
ISBN: 0-932376-87-8
ISBN: 0-13-717232-X
ISBN: 0-417-50308-8
ISBN: 0-471-60771-1
ISBN: 0-262-19288-8
ISBN: 0-262-55017-2
ISBN: 0-13-834284-9
ISBN: 1-935182-64-1
ISBN: 978-1-59327-591-4
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.
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.
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).
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.
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...
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
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.
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.
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.
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.
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!
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!
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.
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.
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.
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.
Everyone is giving some conflicting advice so here's my also conflicting two cents.
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
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.
Get Essential C# 4.0. This would be a great book to help you learn C# if you already know programming
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.
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
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.
I've been reading through Essential C# and found it to be pretty good.
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.
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.
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)
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
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
I can suggest to grab yourself a copy of C++ Templates: The Complete Guide. It's a great book.
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:
[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.
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.
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.
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.
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.
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.
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
The Quick Python Book is my personal favorite.
http://www.amazon.com/Quick-Python-Book-Second-Edition/dp/193518220X
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.
Nice list. But how about DCPL, Design Concepts in Programming Languages?
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.
Looks like it was published fairly recently:
http://www.triumphbooks.com/master-builder-roblox-products-9781629375151.php
Bet lets not forget this work of MS paint artistry
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.
It seems like somebody is writing: https://www.amazon.com/C-Templates-David-Vandevoorde/dp/0321714121
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.
HTML Visual QuickStart Guide (any edition) is fine for starting HTML.
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!
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.
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.
http://www.amazon.com/gp/aw/d/0470973927
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.
What do you guys think of this book
how about one literally called The Quick Python Book?
Python3 standard library: https://www.amazon.com/Python-Standard-Library-Example-Developers/dp/0134291050/ref=sr_1_1?ie=UTF8&qid=1541000060&sr=8-1&keywords=python+3+standard+library
https://www.amazon.com/dp/0321714121
Outdated book. https://www.amazon.com/Two-Scoops-Django-1-11-Practices/dp/0692915729
Book: Design Concepts in Programming Languages (MIT Press).
Oh man, O'Keefe is doing Haskell now?
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
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.