Computer Engineering: A DEC View of Hardware Systems Design focuses on the principles, progress, and concepts in the design of hardware systems. The selection first elaborates on the seven views of computer systems, technology progress in logic and memories, and packaging and manufacturing. Concerns cover power supplies, DEC computer packaging generations, general packaging, semiconductor logic technology, memory technology, measuring (and creating) technology progress, structural levels of a computer system, and packaging levels-of -integration. The manuscript then examines transistor circuitry in the Lincoln TX-2, digital modules, PDP-1 and other 18-bit computers, PDP-8 and other 12-bit computers, and structural levels of the PDP-8. The text takes a look at cache memories for PDP-11 family computers, buses, DEC LSI-11, and design decisions for the PDP-11/60 mid-range minicomputer. Topics include reliability and maintainability, price/performance balance, advances in memory technology, synchronization of data transfers, error control strategies, PDP-11/45, PDP-11/20, and cache organization. The selection is a fine reference for practicing computer designers, users, programmers, designers of peripherals and memories, and students of computer engineering and computer science.
This book is written for students and teachers engaged in electrical and computer engineering (ECE) design projects, primarily in the senior year. It guides students and faculty through the steps necessary for the successful execution of design projects. The objective of the text is to provide a treatment of the design process in ECE with a sound academic basis that is integrated with practical application. It has a strong guiding vision -- that a solid understanding of the Design Process, Design Tools, and the right mix of Professional Skills are critical for project and career success. This text is unique in providing a comprehensive design treatment for ECE.
Improve Your Creativity, Effectiveness, and Ultimately, Your Code In Modern Software Engineering, continuous delivery pioneer David Farley helps software professionals think about their work more effectively, manage it more successfully, and genuinely improve the quality of their applications, their lives, and the lives of their colleagues. Writing for programmers, managers, and technical leads at all levels of experience, Farley illuminates durable principles at the heart of effective software development. He distills the discipline into two core exercises: learning and exploration and managing complexity. For each, he defines principles that can help you improve everything from your mindset to the quality of your code, and describes approaches proven to promote success. Farley's ideas and techniques cohere into a unified, scientific, and foundational approach to solving practical software development problems within realistic economic constraints. This general, durable, and pervasive approach to software engineering can help you solve problems you haven't encountered yet, using today's technologies and tomorrow's. It offers you deeper insight into what you do every day, helping you create better software, faster, with more pleasure and personal fulfillment. Clarify what you're trying to accomplish Choose your tools based on sensible criteria Organize work and systems to facilitate continuing incremental progress Evaluate your progress toward thriving systems, not just more "legacy code" Gain more value from experimentation and empiricism Stay in control as systems grow more complex Achieve rigor without too much rigidity Learn from history and experience Distinguish "good" new software development ideas from "bad" ones Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
Python Crash Course is a fast-paced, thorough introduction to Python that will have you writing programs, solving problems, and making things that work in no time. In the first half of the book, you’ll learn about basic programming concepts, such as lists, dictionaries, classes, and loops, and practice writing clean and readable code with exercises for each topic. 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 Pygal –Make 2D games that respond to keypresses and mouse clicks, and that grow more difficult as the game progresses –Work with data to generate interactive visualizations –Create and customize Web apps and deploy them safely online –Deal with mistakes and errors so you can solve your own programming problems If 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! Uses Python 2 and 3
Have you ever scrolled through a news feed on Facebook? Ruchi Sanghvi helped design this and other Facebook features. She joined Facebook—then a small Silicon Valley startup company—after moving from India to the United States to study computer engineering. With her help, Facebook quickly became one of the largest social networking sites in the world. Sanghvi was the first female engineer at Facebook, and it wasn't easy blazing a trail for women in her field. But nothing stopped her from following her dreams. Her contributions at Facebook helped connect people from around the globe. Even women from Sanghvi's home country of India used Facebook to speak out for equal rights. Discover how this young female immigrant became a top-notch engineer who changed the tech world forever.
A complete lexicon of technical information, the Dictionary of Computer Science, Engineering, and Technology provides workable definitions, practical information, and enhances general computer science and engineering literacy. It spans various disciplines and industry sectors such as: telecommunications, information theory, and software and hardware systems. If you work with, or write about computers, this dictionary is the single most important resource you can put on your shelf. The dictionary addresses all aspects of computing and computer technology from multiple perspectives, including the academic, applied, and professional vantage points. Including more than 8,000 terms, it covers all major topics from artificial intelligence to programming languages, from software engineering to operating systems, and from database management to privacy issues. The definitions provided are detailed rather than concise. Written by an international team of over 80 contributors, this is the most comprehensive and easy-to-read reference of its kind. If you need to know the definition of anything related to computers you will find it in the Dictionary of Computer Science, Engineering, and Technology.
There is arguably no field in greater need of a comprehensive handbook than computer engineering. The unparalleled rate of technological advancement, the explosion of computer applications, and the now-in-progress migration to a wireless world have made it difficult for engineers to keep up with all the developments in specialties outside their own
In the Guide to the Software Engineering Body of Knowledge (SWEBOK(R) Guide), the IEEE Computer Society establishes a baseline for the body of knowledge for the field of software engineering, and the work supports the Society's responsibility to promote the advancement of both theory and practice in this field. It should be noted that the Guide does not purport to define the body of knowledge but rather to serve as a compendium and guide to the knowledge that has been developing and evolving over the past four decades. Now in Version 3.0, the Guide's 15 knowledge areas summarize generally accepted topics and list references for detailed information. The editors for Version 3.0 of the SWEBOK(R) Guide are Pierre Bourque (Ecole de technologie superieure (ETS), Universite du Quebec) and Richard E. (Dick) Fairley (Software and Systems Engineering Associates (S2EA)).