Advanced Swift


Chris Eidhof - 2016
    If you have read the Swift Programming Guide, and want to explore more, this book is for you.Swift is a great language for systems programming, but also lends itself for very high-level programming. We'll explore both high-level topics (for example, programming with generics and protocols), as well as low-level topics (for example, wrapping a C library and string internals).

Pro Git


Scott Chacon - 2009
    It took the open source world by storm since its inception in 2005, and is used by small development shops and giants like Google, Red Hat, and IBM, and of course many open source projects.A book by Git experts to turn you into a Git expert. Introduces the world of distributed version control Shows how to build a Git development workflow.

Data Science For Dummies


Lillian Pierson - 2014
    Data Science For Dummies is the perfect starting point for IT professionals and students interested in making sense of their organization’s massive data sets and applying their findings to real-world business scenarios. From uncovering rich data sources to managing large amounts of data within hardware and software limitations, ensuring consistency in reporting, merging various data sources, and beyond, you’ll develop the know-how you need to effectively interpret data and tell a story that can be understood by anyone in your organization. Provides a background in data science fundamentals before moving on to working with relational databases and unstructured data and preparing your data for analysis Details different data visualization techniques that can be used to showcase and summarize your data Explains both supervised and unsupervised machine learning, including regression, model validation, and clustering techniques Includes coverage of big data processing tools like MapReduce, Hadoop, Dremel, Storm, and Spark It’s a big, big data world out there – let Data Science For Dummies help you harness its power and gain a competitive edge for your organization.

Types and Programming Languages


Benjamin C. Pierce - 2002
    The study of type systems--and of programming languages from a type-theoretic perspective--has important applications in software engineering, language design, high-performance compilers, and security.This text provides a comprehensive introduction both to type systems in computer science and to the basic theory of programming languages. The approach is pragmatic and operational; each new concept is motivated by programming examples and the more theoretical sections are driven by the needs of implementations. Each chapter is accompanied by numerous exercises and solutions, as well as a running implementation, available via the Web. Dependencies between chapters are explicitly identified, allowing readers to choose a variety of paths through the material.The core topics include the untyped lambda-calculus, simple type systems, type reconstruction, universal and existential polymorphism, subtyping, bounded quantification, recursive types, kinds, and type operators. Extended case studies develop a variety of approaches to modeling the features of object-oriented languages.

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.

Rule the Web: How to Do Anything and Everything on the Internet--Better, Faster, Easier


Mark Frauenfelder - 2007
    But aren't you curious about what else the Web can do for you? Or if there are better, faster, or easier ways to do what you're already doing? Let the world's foremost technology writer, Mark Frauenfelder, help you unlock the Internet's potential--and open up a richer, nimbler, and more useful trove of resources and services, including:EXPRESS YOURSELF, SAFELY. Create and share blogs, podcasts, and online video with friends, family, and millions of potential audience members, while protecting yourself from identity theft and fraud.DIVIDE AND CONQUER. Tackle even the most complex online tasks with ease, from whipping up a gorgeous Web site to doing all your work faster and more efficiently within your browser, from word processing to investing to planning a party.THE RIGHT WAY, EVERY TIME. Master state-of-the-art techniques for doing everything from selling your house to shopping for electronics, with hundreds of carefully researched tips and tricks.TIPS FROM THE INSIDERS. Mark has asked dozens of the best bloggers around to share their favorite tips on getting the most out of the Web.

Tony Northrup's Adobe Photoshop Lightroom 5 Video Book: Training for Photographers


Tony Northrup - 2014
    VIDEO TRAINING. 12+ HOURS of searchable video training (requires Internet access). If you learn better from videos, watch the videos and use the ebook only for quick reference. If you learn better from books, read the ebook and refer to the videos to see the author demonstrate real world editing techniques. This much video training usually costs over $100 or requires a monthly subscription. 2. 150+ PRESETS. Jump-start your creativity by using the included presets to give your pictures a unique look. Others charge over $200 for this many presets! 3. 50+ RAW PICTURE FILES. Work alongside many of the book's examples, or just learn by experimenting with professional photos. 4. TEACHER & PEER SUPPORT. After buying the book, you get access to the private group on Facebook where you can ask the questions and post pictures for feedback from Tony, Chelsea, and other readers. It’s like being able to raise your hand in class and ask a question! Instructions are in the introduction. With this video book, you ll learn how to instantly find any picture in your library, fix common photography problems, clean up your images, add pop to boring pictures, retouch portraits, make gorgeous prints, create photo books, and even edit your home videos. Tony goes beyond teaching you how to use Lightroom. Tony shows you why and when to use each feature to create stunning, natural photos. When Lightroom is not the best tool, Tony suggests better alternatives. Tony covers every aspect of Lightroom in-depth, but structures his teaching so that both beginner and advanced photographers can learn as efficiently as possible. If you just want a quick start, you can watch the first video or read the first chapter and you'll be organizing and editing your pictures in less than an hour. If you want to know more about a specific feature, switch to that video or jump to that chapter in the ebook. If you want to know everything about Lightroom, watch the videos and read the book from start to finish.

Building Microservices: Designing Fine-Grained Systems


Sam Newman - 2014
    But developing these systems brings its own set of headaches. With lots of examples and practical advice, this book takes a holistic view of the topics that system architects and administrators must consider when building, managing, and evolving microservice architectures.Microservice technologies are moving quickly. Author Sam Newman provides you with a firm grounding in the concepts while diving into current solutions for modeling, integrating, testing, deploying, and monitoring your own autonomous services. You'll follow a fictional company throughout the book to learn how building a microservice architecture affects a single domain.Discover how microservices allow you to align your system design with your organization's goalsLearn options for integrating a service with the rest of your systemTake an incremental approach when splitting monolithic codebasesDeploy individual microservices through continuous integrationExamine the complexities of testing and monitoring distributed servicesManage security with user-to-service and service-to-service modelsUnderstand the challenges of scaling microservice architectures

A History of Modern Computing


Paul E. Ceruzzi - 1998
    The author concentrates on five key moments of transition: the transformation of the computer in the late 1940s from a specialized scientific instrument to a commercial product; the emergence of small systems in the late 1960s; the beginning of personal computing in the 1970s; the spread of networking after 1985; and, in a chapter written for this edition, the period 1995-2001.The new material focuses on the Microsoft antitrust suit, the rise and fall of the dot-coms, and the advent of open source software, particularly Linux. Within the chronological narrative, the book traces several overlapping threads: the evolution of the computer's internal design; the effect of economic trends and the Cold War; the long-term role of IBM as a player and as a target for upstart entrepreneurs; the growth of software from a hidden element to a major character in the story of computing; and the recurring issue of the place of information and computing in a democratic society.The focus is on the United States (though Europe and Japan enter the story at crucial points), on computing per se rather than on applications such as artificial intelligence, and on systems that were sold commercially and installed in quantities.

Stealing the Network: How to Own an Identity


Raven Alder - 2005
    Now, the criminal hackers readers have grown to both love and hate try to cover their tracks and vanish into thin air... Stealing the Network: How to Own an Identity is the 3rd book in the Stealing series, and continues in the tradition created by its predecessors by delivering real-world network attack methodologies and hacking techniques within a context of unique and original fictional accounts created by some of the world's leading security professionals and computer technologists. The seminal works in TechnoFiction, this STN collection yet again breaks new ground by casting light upon the mechanics and methods used by those lurking on the darker side of the Internet, engaging in the fastest growing crime in the world: Identity theft.Cast upon a backdrop of Evasion, surviving characters from How to Own a Continent find themselves on the run, fleeing from both authority and adversary, now using their technical prowess in a way they never expected--to survive.

Let Over Lambda


Doug Hoyte - 2008
    Starting with the fundamentals, it describes the most advanced features of the most advanced language: Common Lisp. Only the top percentile of programmers use lisp and if you can understand this book you are in the top percentile of lisp programmers. If you are looking for a dry coding manual that re-hashes common-sense techniques in whatever langue du jour, this book is not for you. This book is about pushing the boundaries of what we know about programming. While this book teaches useful skills that can help solve your programming problems today and now, it has also been designed to be entertaining and inspiring. If you have ever wondered what lisp or even programming itself is really about, this is the book you have been looking for.

Two Scoops of Django: Best Practices for Django 1.6


Daniel Roy Greenfeld - 2014
    

Through My Eyes: CSI Memoirs That Haunt the Soul


Tamara Mickelson - 2020
    Catch a glimpse of what she saw, touched, smelled, and even tasted during an average workday. Dare to join her as she takes you through a difficult journey of memories, uncovering layers of emotional trauma left behind. Discover the ways she healed from yesterday's pain to live an emotionally balanced life today.

File System Forensic Analysis


Brian Carrier - 2005
    Now, security expert Brian Carrier has written the definitive reference for everyone who wants to understand and be able to testify about how file system analysis is performed. Carrier begins with an overview of investigation and computer foundations and then gives an authoritative, comprehensive, and illustrated overview of contemporary volume and file systems: Crucial information for discovering hidden evidence, recovering deleted data, and validating your tools. Along the way, he describes data structures, analyzes example disk images, provides advanced investigation scenarios, and uses today's most valuable open source file system analysis tools--including tools he personally developed. Coverage includes Preserving the digital crime scene and duplicating hard disks for dead analysis Identifying hidden data on a disk's Host Protected Area (HPA) Reading source data: Direct versus BIOS access, dead versus live acquisition, error handling, and more Analyzing DOS, Apple, and GPT partitions; BSD disk labels; and Sun Volume Table of Contents using key concepts, data structures, and specific techniques Analyzing the contents of multiple disk volumes, such as RAID and disk spanning Analyzing FAT, NTFS, Ext2, Ext3, UFS1, and UFS2 file systems using key concepts, data structures, and specific techniques Finding evidence: File metadata, recovery of deleted files, data hiding locations, and more Using The Sleuth Kit (TSK), Autopsy Forensic Browser, and related open source tools When it comes to file system analysis, no other book offers this much detail or expertise. Whether you're a digital forensics specialist, incident response team member, law enforcement officer, corporate security specialist, or auditor, this book will become an indispensable resource for forensic investigations, no matter what analysis tools you use.

R for Dummies


Joris Meys - 2012
    R is packed with powerful programming capabilities, but learning to use R in the real world can be overwhelming for even the most seasoned statisticians. This easy-to-follow guide explains how to use R for data processing and statistical analysis, and then, shows you how to present your data using compelling and informative graphics. You'll gain practical experience using R in a variety of settings and delve deeper into R's feature-rich toolset.Includes tips for the initial installation of RDemonstrates how to easily perform calculations on vectors, arrays, and lists of dataShows how to effectively visualize data using R's powerful graphics packagesGives pointers on how to find, install, and use add-on packages created by the R communityProvides tips on getting additional help from R mailing lists and websitesWhether you're just starting out with statistical analysis or are a procedural programming pro, "R For Dummies" is the book you need to get the most out of R.