In My Spare Time I Read Stackoverflow

Some Neat Books For Programmers That StackOverflow Cannot Supplant

Mickaël Riga

Hither is a list of very good books that y'all might want to read if y'all are a programmer, or intend to become one. They volition teach you lot many things almost full general reasoning, testing, command line utilities, direction and more.

I hope it will be quite clear at the terminate of this list that I don't call up reading about 1 programming language is only useful if you plan in this specific language. Every single programming language offers a different perspective and might influence your full general programming skills.

Most opinions likewise testify that I prefer books triggering inspiration rather than presenting a formula or a dogma.

Why's Poignant Guide to Ruby

Let's practice things backward. Honorable mention get-go. I could take picked many books for learning Red, but I decided to mention the famous Poignant Guide. Information technology is probably outdated in places, but damn this book is great! It will remind you to take fun and experiment. It is completely free and online. Information technology is a love letter to Ruby, filled with animals and bacon and nearly importantly an inspiration to push programming out of its comfort zone. Somewhere closer to art.

Each time I hang out on Stack Overflow and some guy naively asks nigh a challenging task like creating a language or even an OS, and all he gets are pedantic comments from "professional" developers, the nigh encouraging being "Why would yous want to practise that?", then I truly miss Why The Lucky Potent with all my middle.

HTML & CSS, Design and Build Websites

HTML & CSS, Design and Build Websites, by Jon Duckett.

This book is perfect for beginners who want to start learning web development considering HTML and CSS are the nuts. I recommended it to all the students I worked with. I cannot say it goes deep on the bailiwick but it goes through practical cases, with prissy examples and nice illustrations.

This is honestly the best volume I institute to offset building websites. This is progressive, based pretty much on existent life examples. The book teaches HTML version five and encourages semantic markup. Semantic markup is a prissy practice of using a meaningful tags whenever possible, instead of using a generic div or bridge. Some of these are header, footer, address, strong. It helps robots/scripts to make sense of your content easily past only reading the text.

The reason why I mention this is because this book is not only useful for beginners. This is important to get the foundations right because even if Javascript is always evolving as well, the tendency is to supersede common Javascript tricks with new functionalities either in HTML or CSS. These end upwards being faster, easier to implement and hopefully standards. That ways frontend web developers spend a lot of fourth dimension learning new easier, or more powerful means of doing things. And then they expect in the night for a feature to be accessible enough to utilize it. They bank check caniuse regularly. Sometimes they cry. Sometimes for so long that they really forget or requite up on the feature.

This is when the magic happens. Y'all are an experienced programmer. Yous read a beginner's book by curiosity and so you realize that characteristic you lot so wanted to utilize years ago is now a widespread standard. Hence the importance of regularly going back to the basics.

Seven Languages in Seven Weeks

Seven Languages in Seven Weeks, by Bruce Tate.

If you're a programming language junkie like me, who loves to larn new programming languages fifty-fifty if you rarely use them, so this book is for you. The championship is pretty obvious. You volition learn a bit of Clojure, Haskell, Io, Prolog, Scala, Erlang, and Ruby-red. They are all amazing languages. I would have swapped Crimson for a lesser known linguistic communication, merely perchance that is because I was already quite familiar with Scarlet.

Of all books here, this one illustrates the best the fact that all languages have something to teach you. Functional programming, the beautiful prototype-based object model of Io, the actor model, concurrency, parallelism. Starting from scratch and trying to solve a particular problem is refreshing.

How To Create Your Ain Freaking Awesome Programming Linguistic communication

How To Create Your Own Freaking Awesome Programming Language, by Marc-André Cournoyer.

The funny matter is that the title is not a bait. You lot will really be able to create your ain programming language. And it'll be awesome because you did information technology from scratch and can alter it whenever. Marc-André Cournoyer is an astonishing teacher. Once yous've digested this book, you lot want to bank check his online courses. You can tell he has a existent passion for teaching. This book is fun, easy to follow and goal oriented.

Fifty-fifty if you don't plan to create your own language, it does non matter. Y'all volition learn so much. Yous will understand the small details that brand a linguistic communication unique, beyond the mere syntax. Memory management, concurrency, parsing, functions, classes, virtual auto, byte code, etc. It will all make sense to you chapter later affiliate. The pace is comfy and there are illustrations to help you empathize structures and process menstruation. Here is a sample affiliate to get an idea.

Proper name drib 101: The guy created Thin and this very book is what inspired Jeremy Ashkenas to create CoffeeScript.

Construction and Interpretation of Computer Programs

Structure and Interpretation of Computer Programs by Harold Abelson, Gerald Jay Sussman and Julie Sussman.

To be honest, it took me years to jump in the burn and purchase these 657 pages of academic knowledge. I flipped through the pages in the book store and then many times. I was always attracted by the cover and the discipline. Just I thought it was intimidating. However, after hearing good words from Jim Weirich (RIP) about the book, I decided to give information technology a try.

Truth is, this is pure gold. Even if you don't want to build an interpreter or a compiler, you lot will acquire so much virtually programs in general. It is hardly possible to read information technology and non find something useful. You will dive in the wonderful world of programs making sense of other programs. Meta with an uppercase "M". If you are non yet convinced, let me add together that the text is illustrated with hundreds of sexy lines of Lisp.

If you don't desire to buy a hard copy, you lot can download it for complimentary as a PDF.

Learn You a Haskell for Great Good!

Learn You a Haskell for Great Good!, by Miran Lipovača.

This is a very skillful volume if you desire to learn functional programming and don't know where to start. It is thorough, funny and colorful. Exactly the tone you need if the subject is new to yous. Fifty-fifty if you struggle, the footstep is quite slow. You will accept enough of time to allow ideas sink in earlier going to the next footstep.

You can either purchase a hard copy, or read the whole thing for complimentary online. And if yous think Haskell is not your thing, then there is an equivalent for Erlang.

Learn You Some Erlang for great skillful!

Learn You Some Erlang for great good!, by Fred Hebert.

It is non the exact same book because both languages accept different concepts, but the tone and purpose are like. I have read both and preferred this one only considering I have found more than practical uses for Erlang. The concurrency model with the OTP is just amazing.

99 Bottles of OOP

99 Bottles of OOP by Sandi Metz and Katrina Owen.

This book is written with Ruby examples, only is nearly Object Oriented Programming in full general. If you don't know Sandi Metz and Katrina Owen, you should check them on YouTube. It volition ready the tone and ostend if the book is for you or not. Sandi is an absolute animal every bit far every bit refactoring is concerned. You can watch her starting with obvious lawmaking that works and make her mode upward until information technology is all piece of cake to maintain. And that is the method applied in the book. You'll go through examples, get in work and clean it upwardly with a different concept on each iteration.

It is knowledge digested from great names like Robert C. Martin and his SOLID principles. But the tone is humble. Don't go me wrong, the lessons from Uncle Bob are invaluable, but there is such a certainty for him in what is supposed to be "professional" that information technology can be off putting at times. You should read twitter battles between him and James Coplien. Information technology is just embarrassing when you consider they are such great minds with so many things to teach. Information technology is only a stream of "Oh my method does non work for you. You're probably doing it the wrong style." and information technology sounds more sarcastic than anything else. If yous are similar me and you just want skilful clues on how to make your code more organized without the religion behind it, then you are better off with 99 Bottles of OOP.

I should mention that the approach of this book is to build your functionalities using tests. Y'all'll write the test and make information technology laissez passer. No, I am not going to mention whatever acronym. As soon as you lot start to define what yous do in terms of acronyms and words ending in "ism", you volition end up spending fourth dimension explaining or debating definitions instead of doing bodily lawmaking.

The Mythical Homo-Month

The Mythical Man-Month by Frederick P. Brooks Jr.

This one is a archetype and was first published in 1975. Probably one of the best book titles e'er. The main subject is the management side of evolution projects. While not being about programming, it will definitely resonate with people working in the industry.

Spoiler alert, the title itself refers to a manager's tendency to recollect human resource will accelerate the outcome. It is summarized in the brilliant example: "If it takes ix months for a adult female to requite birth to a baby, and then let's hire ix women and we'll get it in one calendar month." Hence the championship. I am sure if you've worked as a developer long enough, you've experienced similar situations.

Hacking, The Art of Exploitation

Hacking, The Art of Exploitation, by Jon Erickson.

It may not seem obvious at first, but books about exploitation hacking are very useful even if yous don't plan to infiltrate a regime website. The main reason that people overlook is that well-nigh volume on hacking explain techniques that are obsolete. They are not constructive anymore unless a system is very weak, or you can become back in time with a DeLorean. The matter with hacking books is that you larn how to recollect outside the box. And this is really valuable.

In this book, you will first learn the basics of the C programming language, and then go through all the sensitive subjects related to hacking. Networking, sniffing, encryption, cracking, animate being force so on. Every chapter has a slice of code to play with. Normally many iterations and improvements of the aforementioned code. You will learn how to protect yourself against the attacks. The office nearly networking especially is a good source of information, not specific to exploitation. Y'all will larn what are layers and packets and headers and everything that makes the Internet what it is.

The book also comes with a bootable disk containing Linux and everything you need to try the examples in a sandbox so that you don't compromise your organization.

Thinking Forth

Thinking Forth by Leo Brodie.

Forth is one of my favorite languages. Information technology is Lisp's evil twin. I am really surprised this language and its creator Chuck Moore are so underrated. It fifty-fifty shares the same curse with Lisp. It is and then easy to implement that everybody has their own version and we ended upwardly with a family as opposed to one standard language. Some say the curse of Lisp is macros, only these are insane people.

Anyway the thing is that this book is more virtually how you think most a problem and interpret it into code in the simplest style possible. I like it because ideas in the Forth customs are very often contrary to what current trends are, or at to the lowest degree makes you lot consider the contrary direction. This is were it departs from Lisp. For example the world of interpreted languages is all almost tardily binding, whereas Along works on early on bindings. In terms of methodology, the trend is to use what is chosen height down approach, but Forth encourages you to balance it with a bottom upward arroyo. This subject field is so vast that I want to write an article most it 1 24-hour interval.

The main thought is minimalism considering it is characteristic of Along programmers. Even if you don't stick to this extreme, it feels and then refreshing. You will realize the hard truth that a lot of computer bug are actually homo problems. Problems we've created for ourselves. Equally far as parsers are concerned, infix notation is 1 of them, and I accept to agree with this.

I'll put it out there: Reverse Polish Note is the parentheses killer. The code must period.

Rework

Rework by Jason Fried and David Heinemeier Hansson.

I was introduced to this book at work. Our boss purchased information technology and left information technology for all employees to read. At get-go I was very skeptical because I am actually non into books about entrepreneurship in general. Simply then I started to read a random chapter here and there during my coffee breaks and it started to resonate with me. Mainly because it highlighted problems that I was struggling with. Especially things near meetings, todo lists and planning.

Anyway the book started to make its way upward until I considered it was my favorite book on the subject. Even though you observe Jason's and David's ideas on many blog posts and videos, I purchased my own version of the book because I liked it so much. Information technology is well written. Each chapter is every bit short every bit possible. It talks almost ane master thought, contains a existent world instance to illustrate the idea. And that's information technology.

There is a lot of criticism about this volume and the fact that it only works for companies like Basecamp. Mainly because Basecamp is a website and therefore it does non require a big capital to start. To exist honest, the fact that these are ideas that simply piece of work for Basecamp is a expert thing more than anything else. It ways the ideas in the volume are based on experience and not on assumptions. And the other affair is that many people think it is a formula. Just information technology is not true. The authors are quite articulate that these are ideas that worked for them and you are free to pick those that work for you lot and ignore the residuum. It is actually in the very centre of the book that there is no one-size-fits-all. Many chapters in the book warn against trying to run a small business equally if it was a gigantic ane for instance. There are opportunities in being minor or just different.

Now why this book would be for developers? One reason is because the authors discovered these ideas while creating a web concern. Therefore a lot of ideas are relevant to this manufacture. Another reason is that even if you lot don't intend to use your development skills to build a business, some ideas are withal relevant. Just like The Mythical Homo-Calendar month, it talks a lot about management, the relationship with managers, etc.

I don't know if it is just me, merely I use this volume well-nigh every bit a motivational speech communication. A lot of ideas gravitates around one thing that is a worry of some sort and realizing it is only a worry considering you lot're trying also hard instead of post-obit a natural path.

The Laws of Simplicity

The Laws of Simplicity, by John Maeda.

I purchased this book such a long time ago. I am not even sure I was already a developer. If you don't know John Maeda, he is well known in the computing world for his work on the span betwixt technology and art. He did it through books and talks, simply he is also behind interesting fine art related softwares like Design by Numbers which inspired the Processing framework.

In this short book (effectually 100 pages), John Maeda goes through all the techniques used by product designers in order to brand interfaces simpler, or seemingly simpler. Most of information technology is evidently valuable when you are edifice a digital interface. Information technology was the first time I accept heard nigh the "Gestalt" which gives a lot of insights on how nosotros make sense of what we run into and how we connect the dots.

Some of you will have noticed that I have skipped classic books on this subject area similar "Don't brand me think" or "The Humane Interface". The reason is because I found these overrated. They are trying to audio more than they really are in my opinion. Don't get me incorrect, they are interesting, but a flake too confident on their findings and usually not worth the length. Whereas "The Laws of Simplicity" is brusk, to the point, and well-nigh importantly leaves room for estimation because in that location is no absolute reply on subjective topics like "simplicity". In that location is a simplicity guru in all programming linguistic communication communities, and approximate what, they don't always concord with one another.

UNIX and Linux Arrangement Administration Handbook

UNIX and Linux System Administration Handbook, by Evi Nemeth, Garth Snyder, Trent R. Hein, Ben Whaley and Dan Mackin.

As a developer, it is always skilful to take one book about the Unix arrangement if you piece of work on Linux or OSX. To exist honest, this 1 is not my favorite, just my favorite is in French. This one is my next pick, only because it goes deeper which tin can be more than intimidating. I would prefer 2 books with 2 different levels. Simply I am being picky here.

Anyway, it contains everything y'all demand. You will acquire the Unix commands and how to set upwardly your system in a manual way (i.e. not using an interface similar CPanel or Plesk). I don't know if it is due to the large number of authors, simply maxim this book is thorough is about an understatement. You will acquire and so many things regarding Unix. There is even an introduction to Blood-red, Python and Git. The only trouble which comes from this is that it is so consummate that it ends up in territories that may differ depending on your version of Unix. FreeBSD is covered, but if you're on other things like Darwin/OSX, and so you lot might want to complete your book shelf with one specific to your OS.

The Minix Book, Operating Systems

The Minix Book, Operating Systems, by Andrew S Tanenbaum and Albert S Woodhull.

Concluding only non least for the near aggressive among you, a volume that teaches yous how to build an operating system. But because yous need to do something in your spare time.

I accept a previous edition, but I presume this new one has similar content. Information technology is basically the bible of operating arrangement building. The writer is a computer science teacher and created an operating system called Minix in order to teach his students how information technology works. Linux did not be at the fourth dimension and for a very good reason: This is Minix which inspired Linus Torvalds to create Linux.

Tanenbaum then wrote this volume in order to explain how Minix works. Everything is in at that place. System calls, processes, IPC, scheduling, I/O, deadlocks, memory management, threads, file systems, security, and more. It is all explained with the source code.

1088 pages that teaches you how to build an OS which does non prompts you to install Norton antivirus each time you lot boot.

huberoverve.blogspot.com

Source: https://itnext.io/some-great-books-for-programmers-that-stackoverflow-cannot-replace-514773b273a3

0 Response to "In My Spare Time I Read Stackoverflow"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel