Optimizing software in C++This is an optimization manual for advanced C++ programmers. This book are not for beginners.
Topics include:
- The choice of platform and operating system.
- Choice of compiler and framework.
- Finding performance bottlenecks.
- The efficiency of different C++ constructs.
- Multi-core systems.
- Parallelization with vector operations.
- CPU dispatching. Efficient container class templates. ...
Microservices Security in ActionUnlike traditional enterprise applications, Microservices applications are collections of independent components that function as a system. Securing the messages, queues, and API endpoints requires new approaches to security both in the infrastructure and the code. Microservices Security in Action teaches you how to address microservices-specific security challenges throughout the system. This practical guide includes plentiful hands-on exercises using industry-leading open-source tools and examples using Java and Spring Boot.
Integrating independent services into a single system presents special security challenges in a microservices deployment. With proper planning, however, you can build in security from the start. Learn to create secure services and protect application data throughout development and deployment. As microservices continue to change enterprise application systems, developers and architects must learn to integrate security into their design and implementation. Beca ...
Svelte and Sapper in ActionImagine web apps with fast browser load times that also offer amazing developer productivity and require less code to create. That's what Svelte and Sapper deliver! Svelte pushes a lot of the work a frontend framework would handle to the compile step, so your app components come out as tight, well-organized JavaScript modules. Sapper is a lightweight web framework that minimizes application size through server-rendering front pages and only loading the JavaScript you need. The end result is more efficient apps with great UX and simplified state management.
Many web frameworks load hundreds of "just-in-case" code lines that clutter and slow your apps. Svelte, an innovative, developer-friendly tool, instead compiles applications to very small bundles for lightning-fast load times that do more with less code. Pairing Svelte with the Sapper framework adds features for flexible and simple page routing, server-side rendering, static site development, and more.
Svelte and Sapper in Acti ...
Deep Learning with PyTorchEvery other day we hear about new ways to put deep learning to good use: improved medical imaging, accurate credit card fraud detection, long range weather forecasting, and more. PyTorch puts these superpowers in your hands, providing a comfortable Python experience that gets you started quickly and then grows with you as you - and your deep learning skills - become more sophisticated. Deep Learning with PyTorch will make that journey engaging and fun.
Although many deep learning tools use Python, the PyTorch library is truly Pythonic. Instantly familiar to anyone who knows PyData tools like NumPy and scikit-learn, PyTorch simplifies deep learning without sacrificing advanced features. It's excellent for building quick models, and it scales smoothly from laptop to enterprise. Because companies like Apple, Facebook, and JPMorgan Chase rely on PyTorch, it's a great skill to have as you expand your career options. It's easy to get started with PyTorch. It minimizes cognitive overhead w ...
AI as a ServiceCompanies everywhere are moving everyday business processes over to the cloud, and AI is increasingly being given the reins in these tasks. As this massive digital transformation continues, the combination of serverless computing and AI promises to become the de facto standard for business-to-consumer platform development - and developers who can design, develop, implement, and maintain these systems will be in high demand! AI as a Service is a practical handbook to building and implementing serverless AI applications, without bogging you down with a lot of theory. Instead, you'll find easy-to-digest instruction and two complete hands-on serverless AI builds in this must-have guide!
Cloud-based AI services can automate a variety of labor intensive business tasks in areas such as customer service, data analysis, and financial reporting. The secret is taking advantage of pre-built tools like Amazon Rekognition for image analysis or AWS Comprehend for natural language processing. That ...
High-Tech LEGO ProjectsHigh Tech LEGO hijacks the MINDSTORMS EV3 revolution, showing you how to build creative technical inventions with practical applications. You'll learn to build a dynamic array of working devices for outdoor research, home security, spycraft, and more.
Among the book's 16 fascinating projects you'll find a motion-activated animal cam, a Morse code transmitter, a laser security fence, a motion-sensing radar detector, an automated insect trapper, and a heat-seeking infrared cannon. Welcome to a whole new world of building!
Every project brings together science, mechanics, electronics, optics, and software to create complex instruments for studying and measuring the world around you, all while maintaining the playfulness of LEGO. Each easy-to-follow model combines illustrated instructions with step-by-step guidance on the engineering methods at play. ...
Coding in the ClassroomComputer science opens more doors for today's youth than any other discipline - which is why Coding in the Classroom is your key to unlocking students' future potential. Author Ryan Somma untangles the current state of CS education standards; describes the cognitive, academic, and professional benefits of learning CS; and provides numerous strategies to promote computational thinking and get kids coding!
Whether you're a teacher, an after-school coach, or a parent seeking accessible ways to boost your kid's computer savvy, Coding in the Classroom is here to help. With quick-start programming strategies, scaffolded exercises for every grade level, and ideas for designing CS events that promote student achievement, this book is a rock-solid roadmap to CS integration from a wide variety of on-ramps.
You'll learn: tips and resources for teaching programming concepts via in-class activities and games, without a computer; development environments that make coding and sharing web apps a ...
Write Great Code: Volume 1, 2nd EditionThis, the first volume in Randall Hyde's Write Great Code series, dives into machine organization without the extra overhead of learning assembly language programming. Written for high-level language programmers, Understanding the Machine fills in the low-level details of machine organization that are often left out of computer science and engineering courses.
Learn: How the machine represents numbers, strings, and high-level data structures, so you'll know the inherent cost of using them; How to organize your data, so the machine can access it efficiently; How the CPU operates, so you can write code that works the way the machine does; How I/O devices operate, so you can maximize your application's performance when accessing those devices; How to best use the memory hierarchy to produce the fastest possible programs.
Great code is efficient code. But before you can write truly efficient code, you must understand how computer systems execute programs and how abstractions in prog ...
Write Great Code: Volume 2, 2nd EditionToday's programming languages offer productivity and portability, but also make it easy to write sloppy code that isn't optimized for a compiler. Thinking Low-Level, Writing High-Level will teach you to craft source code that results in good machine code once it's run through a compiler.
You'll learn: How to analyze the output of a compiler to verify that your code generates good machine code; The types of machine code statements that compilers generate for common control structures, so you can choose the best statements when writing HLL code; Enough assembly language to read compiler output; How compilers convert various constant and variable objects into machine data.
With an understanding of how compilers work, you'll be able to write source code that they can translate into elegant machine code. ...
Write Great Code: Volume 3The field of software engineering may value team productivity over individual growth, but legendary computer scientist Randall Hyde wants to make promising programmers into masters of their craft. To that end, Engineering Software - the latest volume in Hyde's highly regarded Write Great Code series - offers his signature in-depth coverage of everything from development methodologies and strategic productivity to object-oriented design requirements and system documentation.
You'll learn: Why following the software craftsmanship model can lead you to do your best work; How to utilize traceability to enforce consistency within your documentation; The steps for creating your own UML requirements with use-case analysis; How to leverage the IEEE documentation standards to create better software.
This advanced apprenticeship in the skills, attitudes, and ethics of quality software development reveals the right way to apply engineering principles to programming. Hyde will teach you the ...