Book picks similar to
Python Developer's Handbook by Andre Lessa
cs
developing
digital
programming
Cracking the Coding Interview: 150 Programming Questions and Solutions
Gayle Laakmann McDowell - 2008
This is a deeply technical book and focuses on the software engineering skills to ace your interview. The book is over 500 pages and includes 150 programming interview questions and answers, as well as other advice.The full list of topics are as follows:The Interview ProcessThis section offers an overview on questions are selected and how you will be evaluated. What happens when you get a question wrong? When should you start preparing, and how? What language should you use? All these questions and more are answered.Behind the ScenesLearn what happens behind the scenes during your interview, how decisions really get made, who you interview with, and what they ask you. Companies covered include Google, Amazon, Yahoo, Microsoft, Apple and Facebook.Special SituationsThis section explains the process for experience candidates, Program Managers, Dev Managers, Testers / SDETs, and more. Learn what your interviewers are looking for and how much code you need to know.Before the InterviewIn order to ace the interview, you first need to get an interview. This section describes what a software engineer's resume should look like and what you should be doing well before your interview.Behavioral PreparationAlthough most of a software engineering interview will be technical, behavioral questions matter too. This section covers how to prepare for behavioral questions and how to give strong, structured responses.Technical Questions (+ 5 Algorithm Approaches)This section covers how to prepare for technical questions (without wasting your time) and teaches actionable ways to solve the trickiest algorithm problems. It also teaches you what exactly "good coding" is when it comes to an interview.150 Programming Questions and AnswersThis section forms the bulk of the book. Each section opens with a discussion of the core knowledge and strategies to tackle this type of question, diving into exactly how you break down and solve it. Topics covered include• Arrays and Strings• Linked Lists• Stacks and Queues• Trees and Graphs• Bit Manipulation• Brain Teasers• Mathematics and Probability• Object-Oriented Design• Recursion and Dynamic Programming• Sorting and Searching• Scalability and Memory Limits• Testing• C and C++• Java• Databases• Threads and LocksFor the widest degree of readability, the solutions are almost entirely written with Java (with the exception of C / C++ questions). A link is provided with the book so that you can download, compile, and play with the solutions yourself.Changes from the Fourth Edition: The fifth edition includes over 200 pages of new content, bringing the book from 300 pages to over 500 pages. Major revisions were done to almost every solution, including a number of alternate solutions added. The introductory chapters were massively expanded, as were the opening of each of the chapters under Technical Questions. In addition, 24 new questions were added.Cracking the Coding Interview, Fifth Edition is the most expansive, detailed guide on how to ace your software development / programming interviews.
JP Investigations
Lola Silverman - 2017
5 books and NO cliffies! Book 1: Micah Lexi is everything a man like me should steer clear of. Mostly, that means she’s too good for someone like me. But when I realize that her brother is missing because of something that happened in my club, there’s really nothing for me to do but help her out. Something isn’t right around here and I’m ashamed to say that I’ve been a little blind to some stuff that was right under my nose. Lexi has woken me up in so many ways and I’m not sure I’ll ever be the same again. Book 2: Aaron I’m in Boston for one reason, to chase down a lead on my boss’s missing son. Joshua is the owner and CEO of Joshua Pettit Investigations and he tells me where to go and when. But it’s always up to me to find the best way to crack a case wide open. Of course this is the first time that my main informant in any case turned out to be a prostitute. For the moment she and I have mutual goals. But the more time I spend with Johanna, the more time I realize that there’s a lot more to her than anyone has ever given her credit for. Book 3: Zandry Coming to Denver in search of some runaway teens that might or might not be my boss’s kid is about the vaguest assignment I’ve ever had. Now I’m following runaway teens all over town and watching them pull off panhandling schemes that would make an experience thief green with envy. Something isn’t quite adding up here and it has nothing to do with the carnies coming to town. Of course hanging out with pickpockets occasionally means you get accused of doing the deed yourself. Fortunately for me there is a super hot cop that doesn’t mind coming to my rescue. Book 4: Liam Finding the bodies of dead runaway in a hole in the desert isn’t the worst thing I’ve ever seen, but it does come close. These kids are young and their lives had promise. But now I’m here in Albuquerque to see if my boss’s kid might be one of the unfortunates. I’m hoping not because the CEO of JPI is not the type of man who will take the murder of his son lightly. Fortunately for me I’ve happened onto a woman who is up to her ears in the business of runaway teens and also happens to look like an exotic angel come to take my poor Irish butt to heaven. Book 5: Joshua Beth is probably one of the best things that’s ever happened to me. Of course that probably makes me an idiot for constantly telling her that we can’t be a couple. The problem is that I shouldn’t be sleeping with employees. And of course my kid ran away and I’ve been tapping all of my resources trying to find him. Now I’m in New Orleans with Beth following one last lead. Of course this also happens to bring my ex wife out to help. Between her theatrics, a sarcastic local cop, and a voodoo priestess who can’t keep her nose out of other people’s business, all I can hope for is a happy ending that doesn’t end with a permanent stay in one of the Big Easy’s famous crypts.
Python Crash Course: A Hands-On, Project-Based Introduction to Programming
Eric Matthes - 2015
You'll also learn how to make your programs interactive and how to test your code safely before adding it to a project. In the second half of the book, you'll put your new knowledge into practice with three substantial projects: a Space Invaders-inspired arcade game, data visualizations with Python's super-handy libraries, and a simple web app you can deploy online.As you work through Python Crash Course, you'll learn how to: Use powerful Python libraries and tools, including matplotlib, NumPy, and PygalMake 2D games that respond to keypresses and mouse clicks, and that grow more difficult as the game progressesWork with data to generate interactive visualizationsCreate and customize simple web apps and deploy them safely onlineDeal with mistakes and errors so you can solve your own programming problemsIf you've been thinking seriously about digging into programming, Python Crash Course will get you up to speed and have you writing real programs fast. Why wait any longer? Start your engines and code!
PYTHON: PROGRAMMING: A BEGINNER’S GUIDE TO LEARN PYTHON IN 7 DAYS
Ramsey Hamilton - 2016
Python is a beautiful computer language. It is simple, and it is intuitive. Python is used by a sorts of people – data scientists use it for much of their number crunching and analytics; security testers use it for testing out security and IT attacks; it is used to develop high-quality web applications and many of the large applications that you use on the internet are also written in Python, including YouTube, DropBox, and Instagram. Are you interested in learning Python? Then settle in and learn the basics in just 7 days - enough for you to be comfortable in moving on to the next level without any trouble.Are you interested in learning Python? Then settle in and learn the basics in just 7 days - enough for you to be comfortable in moving on to the next level without any trouble. In this book you'll learn: Setting Up Your Environment Let’s Get Programming Variables and Programs in Files Loops, Loops and More Loops Functions Dictionaries, Lists, and Tuples The “for” Loop Classes Modules File Input/Output Error Handling and much more! Now it's time for you to start your journey into Python programming! Click on the Buy Now button above and get started today!
Computer Science Illuminated
Nell B. Dale - 2002
Written By Two Of Today'S Most Respected Computer Science Educators, Nell Dale And John Lewis, The Text Provides A Broad Overview Of The Many Aspects Of The Discipline From A Generic View Point. Separate Program Language Chapters Are Available As Bundle Items For Those Instructors Who Would Like To Explore A Particular Programming Language With Their Students. The Many Layers Of Computing Are Thoroughly Explained Beginning With The Information Layer, Working Through The Hardware, Programming, Operating Systems, Application, And Communication Layers, And Ending With A Discussion On The Limitations Of Computing. Perfect For Introductory Computing And Computer Science Courses, Computer Science Illuminated, Third Edition's Thorough Presentation Of Computing Systems Provides Computer Science Majors With A Solid Foundation For Further Study, And Offers Non-Majors A Comprehensive And Complete Introduction To Computing.
Grokking Algorithms An Illustrated Guide For Programmers and Other Curious People
Aditya Y. Bhargava - 2015
The algorithms you'll use most often as a programmer have already been discovered, tested, and proven. If you want to take a hard pass on Knuth's brilliant but impenetrable theories and the dense multi-page proofs you'll find in most textbooks, this is the book for you. This fully-illustrated and engaging guide makes it easy for you to learn how to use algorithms effectively in your own programs.Grokking Algorithms is a disarming take on a core computer science topic. In it, you'll learn how to apply common algorithms to the practical problems you face in day-to-day life as a programmer. You'll start with problems like sorting and searching. As you build up your skills in thinking algorithmically, you'll tackle more complex concerns such as data compression or artificial intelligence. Whether you're writing business software, video games, mobile apps, or system utilities, you'll learn algorithmic techniques for solving problems that you thought were out of your grasp. For example, you'll be able to:Write a spell checker using graph algorithmsUnderstand how data compression works using Huffman codingIdentify problems that take too long to solve with naive algorithms, and attack them with algorithms that give you an approximate answer insteadEach carefully-presented example includes helpful diagrams and fully-annotated code samples in Python. By the end of this book, you will know some of the most widely applicable algorithms as well as how and when to use them.
Learning Ruby
Michael J. Fitzgerald - 2007
Written for both experienced and new programmers alike, Learning Ruby is a just-get-in-and-drive book -- a hands-on tutorial that offers lots of Ruby programs and lets you know how and why they work, just enough to get you rolling down the road. Interest in Ruby stems from the popularity of Rails, the web development framework that's attracting new devotees and refugees from Java and PHP. But there are plenty of other uses for this versatile language. The best way to learn is to just try the code! You'll find examples on nearly every page of this book that you can imitate and hack. Briefly, this book:Outlines many of the most important features of Ruby Demonstrates how to use conditionals, and how to manipulate strings in Ruby. Includes a section on regular expressions Describes how to use operators, basic math, functions from the Math module, rational numbers, etc. Talks you through Ruby arrays, and demonstrates hashes in detail Explains how to process files with Ruby Discusses Ruby classes and modules (mixins) in detail, including a brief introduction to object-oriented programming (OOP) Introduces processing XML, the Tk toolkit, RubyGems, reflection, RDoc, embedded Ruby, metaprogramming, exception handling, and other topics Acquaints you with some of the essentials of Rails, and includes a short Rails tutorial. Each chapter concludes with a set of review questions, and appendices provide you with a glossary of terms related to Ruby programming, plus reference material from the book in one convenient location. If you want to take Ruby out for a drive, Learning Ruby holds the keys.
Physically Based Rendering: From Theory to Implementation
Matt Pharr - 2004
The result is a stunning achievement in graphics education. Through the ideas and software in this book, you will learn to design and employ a full-featured rendering system for creating stunning imagery.This new edition greatly refines its best-selling predecessor by streamlining all obsolete code as well as adding sections on parallel rendering and system design; animating transformations; multispectral rendering; realistic lens systems; blue noise and adaptive sampling patterns and reconstruction; measured BRDFs; and instant global illumination, as well as subsurface and multiple-scattering integrators.These updates reflect the current state-of-the-art technology, and along with the lucid pairing of text and code, ensure the book's leading position as a reference text for those working with images, whether it is for film, video, photography, digital design, visualization, or gaming.
Computer Systems: A Programmer's Perspective
Randal E. Bryant - 2002
Often, computer science and computer engineering curricula don't provide students with a concentrated and consistent introduction to the fundamental concepts that underlie all computer systems. Traditional computer organization and logic design courses cover some of this material, but they focus largely on hardware design. They provide students with little or no understanding of how important software components operate, how application programs use systems, or how system attributes affect the performance and correctness of application programs. - A more complete view of systems - Takes a broader view of systems than traditional computer organization books, covering aspects of computer design, operating systems, compilers, and networking, provides students with the understanding of how programs run on real systems. - Systems presented from a programmers perspective - Material is presented in such a way that it has clear benefit to application programmers, students learn how to use this knowledge to improve program performance and reliability. They also become more effective in program debugging, because t
Havana Tips and Tricks: Interesting Facts and Tips On Havana And Cuba (With Trinidad Bonus Section)
Mario Rizzi - 2014
The information presented in this guide was taken from the book Real Havana: Explore Cuba Like A Local And Save Money. This book is available at most online book retailers. It offers a complete description of all the information presented below.In this mini-guide you will learn about:● Dozens of facts and tips on Cuban Culture and daily life.● Money saving tips on Cuban cuisine and dining.● Common restaurant scams in Havana.● Facts about buying alcohol, cigars and shopping in general.● Important tips on using taxis, public transportation and rental cars.● Info on biking in Havana● Booking a cheap apartment in Havana (casa particular)Plus, this updated 2016 edition includes a special Trinidad City Guide. Trinidad is one of the most beautiful towns in Cuba and one of the most popular excursion destinations for travelers. Learn how to explore this wonderful UNESCO World Heritage site for yourself, on your next trip to Cuba.BONUS: As a bonus, this mini-guide also includes the Top Ten Cuba Tip List! It’s packed with the most important information that any traveler must know about Cuba and Havana, in order to maximize their fun, save money and avoid any hassles.The Real Havana guide has all that information and much more. It has been described by industry professionals as being the #1 travel guide for information about Cuban culture. That’s why it is a bestseller and has been a trusted resource to over 200 000 travelers since 2010.About Full Compass GuidesFull Compass Guides are aimed at travelers who want to understand local customs and culture so that they can experience destinations like a local. Unlike regular tourist guides, Full Compass guides are not a list of attractions popular with tourists, and boring restaurant and hotel reviews that are obsolete the moment they are published. With our guides, you get succinct, useful information about the culture, people and geography of your destination so you have the tools and the confidence to explore on your own, experience everything that your destination has to offer, and save money.Our guides are written by experienced travelers who have intimate knowledge of both the location and the culture of the destination. They give you the exact information you need in order to make the most of your travel time.
With a Full Compass guide, you will be a knowledgeable explorer, rather than just another flash-happy tourist.
Effective Python: 90 Specific Ways to Write Better Python (Effective Software Development Series)
Brett Slatkin - 2019
However, Python’s unique strengths, charms, and expressiveness can be hard to grasp, and there are hidden pitfalls that can easily trip you up. This second edition of Effective Python will help you master a truly “Pythonic” approach to programming, harnessing Python’s full power to write exceptionally robust and well-performing code. Using the concise, scenario-driven style pioneered in Scott Meyers’ best-selling Effective C++, Brett Slatkin brings together 90 Python best practices, tips, and shortcuts, and explains them with realistic code examples so that you can embrace Python with confidence. Drawing on years of experience building Python infrastructure at Google, Slatkin uncovers little-known quirks and idioms that powerfully impact code behavior and performance. You’ll understand the best way to accomplish key tasks so you can write code that’s easier to understand, maintain, and improve. In addition to even more advice, this new edition substantially revises all items from the first edition to reflect how best practices have evolved. Key features include 30 new actionable guidelines for all major areas of Python Detailed explanations and examples of statements, expressions, and built-in types Best practices for writing functions that clarify intention, promote reuse, and avoid bugs Better techniques and idioms for using comprehensions and generator functions Coverage of how to accurately express behaviors with classes and interfaces Guidance on how to avoid pitfalls with metaclasses and dynamic attributes More efficient and clear approaches to concurrency and parallelism Solutions for optimizing and hardening to maximize performance and quality Techniques and built-in modules that aid in debugging and testing Tools and best practices for collaborative development Effective Python will prepare growing programmers to make a big impact using Python.
How to Think About Analysis
Lara Alcock - 2014
It is elegant, clever and rewarding to learn, but it is hard. Even the best students find it challenging, and those who are unprepared often find it incomprehensible at first. This book aims to ensure that no student need be unprepared. It is not like other Analysis books. It is not a textbook containing standard content. Rather, it is designed to be read before arriving at university and/or before starting an Analysis course, or as a companion text once a course is begun. It provides a friendly and readable introduction to the subject by building on the students existing understanding of six key topics: sequences, series, continuity, differentiability, integrability and the real numbers. It explains how mathematicians develop and use sophisticated formal versions of these ideas, and provides a detailed introduction to the central definitions, theorems and proofs, pointing out typical areas of difficulty and confusion and explaining how to overcome these. The book also provides study advice focused on the skills that students need if they are to build on this introduction and learn successfully in their own Analysis courses: it explains how to understand definitions, theorems and proofs by relating them to examples and diagrams, how to think productively about proofs, and how theories are taught in lectures and books on advanced mathematics. It also offers practical guidance on strategies for effective study planning. The advice throughout is research-based and is presented in an engaging style that will be accessible to students who are new to advanced abstract mathematics.
A Byte of Python
Swaroop C.H. - 2004
An introduction to Python programming for beginners.
Python Algorithms: Mastering Basic Algorithms in the Python Language
Magnus Lie Hetland - 2010
Written by Magnus Lie Hetland, author of Beginning Python, this book is sharply focused on classical algorithms, but it also gives a solid understanding of fundamental algorithmic problem-solving techniques.The book deals with some of the most important and challenging areas of programming and computer science, but in a highly pedagogic and readable manner. The book covers both algorithmic theory and programming practice, demonstrating how theory is reflected in real Python programs. Well-known algorithms and data structures that are built into the Python language are explained, and the user is shown how to implement and evaluate others himself.
Data Science from Scratch: First Principles with Python
Joel Grus - 2015
In this book, you’ll learn how many of the most fundamental data science tools and algorithms work by implementing them from scratch.
If you have an aptitude for mathematics and some programming skills, author Joel Grus will help you get comfortable with the math and statistics at the core of data science, and with hacking skills you need to get started as a data scientist. Today’s messy glut of data holds answers to questions no one’s even thought to ask. This book provides you with the know-how to dig those answers out.
Get a crash course in Python
Learn the basics of linear algebra, statistics, and probability—and understand how and when they're used in data science
Collect, explore, clean, munge, and manipulate data
Dive into the fundamentals of machine learning
Implement models such as k-nearest Neighbors, Naive Bayes, linear and logistic regression, decision trees, neural networks, and clustering
Explore recommender systems, natural language processing, network analysis, MapReduce, and databases