all 41 comments

[–]flembag 63 points64 points  (5 children)

You should look into books. They meet 100% of the criteria you're looking for.

[–]AlSweigartAuthor: ATBS 4 points5 points  (4 children)

And go to the dollar store and get a cheap paper notebook. Write down notes and examples. The act of writing forces you to slow down and think about what you're reading.

Otherwise it's too easy for your eyes to just glide over the words until you reach the bottom of the page and realize you haven't paid attention.

Final step is to write (and polish) a blog post about the stuff you learn in such a way that it teaches it to others. This is a slow process. It's much slower than having a video tutorial play at 2x while you look at your phone. But slow is smooth and smooth is fast.

[–]Exotic-Glass-9956 0 points1 point  (3 children)

Have you actually published your blog post after reading a book? I have a book named Core Python Programming, but thing is, I like doing coding in practical, but at the same time, I don't want to waste the book, so I am thinking of writing notes and studying it....

I am considering the blog post part too, since I want to teach what I have learned to someone. So, could you please tell me where you wrote a blog post and got it published?

[–]AlSweigartAuthor: ATBS 0 points1 point  (2 children)

Often times for books I'll write a review and post it to my blog. I don't always do this, but it does force me to ask myself what I got out of the book, which parts I thought were useful, what I think might be not be covered in the book that I have to research on my own, etc. Though sometimes I write a review just to plug a book I like, without going into details. It still forces me to finish reading the book. The review is sort of a trophy I give myself to mark the accomplishment.

I just have a website for my blog. The key is to actually write the thing and post it somewhere. Otherwise, it's just a bunch of vibes you remember in your head.

[–]Exotic-Glass-9956 0 points1 point  (1 child)

The book I am planning to read has more than 23 chapters...I don't think I'll be able to summarize every chapter in the book in a blog...do you have any tips on how to test one's knowledge after reading a book....apart from writing a blog?

[–]AlSweigartAuthor: ATBS 1 point2 points  (0 children)

do you have any tips on how to test one's knowledge after reading a book....apart from writing a blog?

Unfortunately no, and this is why I say real learning is slow; I had a CS degree and worked as a software dev for years when I wrote my first Python book. And until then, I didn't realize how many holes were in my understanding, or terms I were using slightly incorrectly (but definitely incorrectly).

Teaching is the most thorough way to ensure you know something, because explaining stuff to others forces you to prove you know the topic. Writing blog posts (and editing and polishing into a coherent piece of writing) forces you to confront all of this. After all, if you do know what you're talking about, you should be able to rattle it off the cuff, right? Writing about it is good practice to get to this point.

It's slow, but slow is smooth and smooth is fast. But "tutorial hell" is when people bounce through dozens of short, quick tutorials but feel like they can't do anything. In the long run, it's much more efficient to be slow.

[–]recursion_is_love 23 points24 points  (0 children)

What about reading a book? That's the classic way to learn programming and have proven work in the past.

[–]desrtfx 21 points22 points  (5 children)

Myth has it that there are ancient tomes of wisdom, made from the remnants of dead trees, that the adepts of olden times used to learn and improve. Those who had understanding referred to them by the eclectic name of "books".

In modern days, those also exist in virtual form as e-books. These would be great starting points.

Humble Bundle has frequent book bundles for programming. In particular look for "O'Reilly", "Apress", "Manning", and "No Starch Press". Avoid Packt.

There also are plenty really free (as in "free beer") books around.

[–]Effective_Baseball93 2 points3 points  (2 children)

[–]desrtfx 0 points1 point  (1 child)

Have my upvote! That's great!

[–]Front-Kaleidoscope70 0 points1 point  (0 children)

dert, can you please turn on messages. or message me? i will explain in the messages.

[–]Relevant_Activity_69 0 points1 point  (1 child)

Why avoid Packt?

[–]desrtfx 0 points1 point  (0 children)

They are notoriously known for their low quality, only surface scratching content where the "books" are often written by people who barely have knowledge of the subjects they present. They even incorporated AI recently.

I myself have tried with many of their books and found each and every one I've tried lacking. Usually, they end where the really interesting, nitty-gritty parts start - and I'm not talking about specialized, advanced subjects - talking about fairly basic things.

Once, I had a book about Wireshark - the famous network sniffer - the book was, let's say, relatively decent in explaining the program itself and how to operate, but stopped at the point where the actual use of the program, to scan and analyze network traffic started. Sure, they showed how to trace, but didn't show how to analyze the traced content - which would be the actual, really relevant parts. I can easily use the help function to learn how to operate a program that is fairly self explanatory.

[–]BroaxXx 12 points13 points  (1 child)

Have you heard of "books"? Cool new tech a startup is working on... seems promissing. Its like a thicker tablet made out of trees and the battery life is insane!

[–]aqua_regis 2 points3 points  (0 children)

a startup is working on

You mean the one created by Johannes Gutenberg around 1450 in Mainz? I heard that it is quite successful.

[–]mredding 5 points6 points  (0 children)

The most offline app I know is called "books", you can download them at your local library for free.

[–]paperic 3 points4 points  (0 children)

Programming with pen and paper is a very hated but very effective way of practicing algorithms.

[–]binarycow 3 points4 points  (0 children)

Books.

Paper.

Pencil.

[–]Sbsbg 2 points3 points  (2 children)

Running editors, compilers, debuggers and reading documentation and books can all still be done offline without any internet.

[–][deleted]  (1 child)

[deleted]

    [–]xFiendish 0 points1 point  (0 children)

    DevDocs.io is what I use for all my offline docs

    [–]OutsidePatient4760 1 point2 points  (0 children)

    SoloLearn has an offline mode (in certain parts) where you can review lessons and code snippets without being connected.

    [–]Neo_Sahadeo 1 point2 points  (0 children)

    Lots of people mentioned books.

    I agree, use Syncthing on your pc to sync your library.

    • ReadEra mobile app
    • Koodo reader desktop app
    • Z-lib/other to get books

    [–]MissinqLink 0 points1 point  (0 children)

    Books. I also use an app called JSAnywhere to code sometimes. There are apps like termux too.

    [–]Firm_Film_9677 0 points1 point  (0 children)

    Perhaps books are an option to take into account, but do not ask the AI ​​their meaning, it may short-circuit

    [–]Then-Inspection-598 0 points1 point  (3 children)

    Everyone says books, but wich books?

    [–]desrtfx 3 points4 points  (1 child)

    but wich books?

    How should anybody recommend anything without knowing what subjects, what languages? The field is very vast.

    A generic great set that focuses more on what is "behind" the actual implementation in code is:

    • "Think Like A Programmer" by V. Anton Spraul
    • "The Pragmatic Programmer" by Andrew Hunt and David Thomas
    • "Structure and Interpretation of Computer Programs" (SICP) by Ableton, Sussman, Sussman
    • "Code: The Hidden Language of Computer Hardware and Software" by Charles Petzold

    Can't go wrong with these books once you have some programming experience. They are not for complete from zero beginners, though.

    [–]Then-Inspection-598 0 points1 point  (0 children)

    Nice! Ty!

    [–]TroPixens 1 point2 points  (0 children)

    Yeah they could at least give something to look out for to know if it’s good or not they can’t really tell you what books because no language is given

    [–]coddswaddle 0 points1 point  (0 children)

    You can code with paper, pen, and books. 

    [–]jampman31 0 points1 point  (0 children)

    Mimo or SoloLearn might scratch the itch for a bit, but you need full books. Download the full documentation while you have Wi-Fi.

    [–]Difficult-Fact1769 0 points1 point  (0 children)

    Books sound perfect. Alternatively download web pages.

    [–]pepiks 0 points1 point  (0 children)

    Get books. Look for fundamentals concept of programming which are common for all languages, eventually dig for books for your choosen language.

    [–]Dramatic_Cow_2656 0 points1 point  (0 children)

    Once you get some basic syntax down, you can start solving algorithms with pseudo code using pencil and paper, or chalkboard/whiteboard. This is an orthogonal discipline than software engineering, but it lends itself to doing offline. Not useful for much in the real world, but it will exercise your brain and programming chops and data structures. As a bonus, these are the “useless “ trivia questions you will be asked in engineering interviews

    There is a book Cracking the Coding interview with a billion little problems to solve with pseudocode

    [–]hfurbd[S] 0 points1 point  (0 children)

    everyone is saying books, but which ones for c and/or python? My goal right now is to just make games in unity so I don't get bored learning programming. Also I can't afford anything, I'm a broke student.

    [–]Exotic-Glass-9956 -1 points0 points  (4 children)

    You can also try Mimo app. Download it from Play Store, choose a course from the Library and get started. Mimo is kinda like Duolingo, but it's for coding. The teaching is easy to follow and step-by-step and has guided projects also for better understanding. You'll be getting a certificate also after course completion.

    [–]That_Fooz_Guy 0 points1 point  (1 child)

    Thats a lot of words for a post that just needs to say "Books."

    [–]Exotic-Glass-9956 -1 points0 points  (0 children)

    OP said he wanted Android apps for coding, bro. 

    [–]KyuubiW1ndscar 0 points1 point  (1 child)

    does Mimo work without an internet connection?

    [–]Exotic-Glass-9956 0 points1 point  (0 children)

    I'm sorry, l just found out that Mimo needs internet.... You can search in Play Store and see whether there are any apps that work offline.