Hardcore Programming for Mechanical Engineers


Book Description

Hardcore Programming for Mechanical Engineers is for intermediate programmers who want to write good applications that solve tough engineering problems – from scratch. This book will teach you how to solve engineering problems with Python. The “hardcore” approach means that you will learn to get the correct results by coding everything from scratch. Forget relying on third-party software – there are no shortcuts on the path to proficiency. Instead, using familiar concepts from linear algebra, geometry and physics, you’ll write your own libraries, draw your own primitives, and build your own applications. Author Angel Sola covers core programming techniques mechanical engineers need to know, with a focus on high-quality code and automated unit testing for error-free implementations. After basic primers on Python and using the command line, you’ll quickly develop a geometry toolbox, filling it with lines and shapes for diagramming problems. As your understanding grows chapter-by-chapter, you’ll create vector graphics and animations for dynamic simulations; you’ll code algorithms that can do complex numerical computations; and you’ll put all of this knowledge together to build a complete structural analysis application that solves a 2D truss problem – similar to the software projects conducted by real-world mechanical engineers. You'll learn: • How to use geometric primitives, like points and polygons, and implement matrices • Best practices for clean code, including unit testing, encapsulation, and expressive names • Processes for drawing images to the screen and creating animations inside Tkinter’s Canvas widget • How to write programs that read from a file, parse the data, and produce vector images • Numerical methods for solving large systems of linear equations, like the Cholesky decomposition algorithm




Hardcore Programming for Mechanical Engineers


Book Description

Hardcore Programming for Mechanical Engineers is for intermediate programmers who want to write good applications that solve tough engineering problems – from scratch. What if you could solve challenging engineering problems with Python programming? With this book’s hardcore approach, you’ll learn how to code solutions from scratch using linear algebra, geometry, and physics to write custom libraries, draw primitives, and build applications. Ángel Sola Orbaiceta covers core programming techniques for mechanical engineers, with a focus on crafting high-quality code and leveraging automated unit testing for error-free implementations. You’ll develop a geometry toolbox, filling it with lines and shapes to diagram engineering problems; create vector graphics and animations for mechanical simulations; and code algorithms to perform complex calculations. As a capstone you’ll combine these lessons to build a complete structural analysis application to solve a 2D truss problem that you might encounter in the field. Learn how to: Use regular expressions to elegantly parse file input Refine your code with unit testing, encapsulation, and descriptive names Draw images onscreen and create animations with Tkinter’s Canvas widget Solve systems of linear equations using the Cholesky decomposition algorithm Build an application that visualizes a truss structure’s stresses and strains Stop relying on third-party software—there are no shortcuts on the path to proficiency. With Hardcore Programming for Mechanical Engineers, you’ll hone your programming skills to get correct results every time.




Numerical Methods in Engineering with Python 3


Book Description

Provides an introduction to numerical methods for students in engineering. It uses Python 3, an easy-to-use, high-level programming language.




Mission Python


Book Description

Program a graphical adventure game in this hands-on, beginner-friendly introduction to coding in the Python language. Launch into coding with Mission Python, a space-themed guide to building a complete computer game in Python. You'll learn programming fundamentals like loops, strings, and lists as you build Escape!, an exciting game with a map to explore, items to collect, and tricky logic puzzles to solve. As you work through the book, you'll build exercises and mini-projects, like making a spacewalk simulator and creating an astronaut's safety checklist that will put your new Python skills to the test. You'll learn how to use Pygame Zero, a free resource that lets you add graphics and sound effects to your creations, and you'll get useful game-making tips, such as how to design fun puzzles and intriguing maps. Before you know it, you'll have a working, awesome game to stump your friends with (and some nifty coding skills, too!). You can follow this book using a Raspberry Pi or a Microsoft Windows PC, and the 3D graphics and sound effects you need are provided as a download.




Programming Interactivity


Book Description

Make cool stuff. If you're a designer or artist without a lot of programming experience, this book will teach you to work with 2D and 3D graphics, sound, physical interaction, and electronic circuitry to create all sorts of interesting and compelling experiences -- online and off. Programming Interactivity explains programming and electrical engineering basics, and introduces three freely available tools created specifically for artists and designers: Processing, a Java-based programming language and environment for building projects on the desktop, Web, or mobile phones Arduino, a system that integrates a microcomputer prototyping board, IDE, and programming language for creating your own hardware and controls OpenFrameworks, a coding framework simplified for designers and artists, using the powerful C++ programming language BTW, you don't have to wait until you finish the book to actually make something. You'll get working code samples you can use right away, along with the background and technical information you need to design, program, build, and troubleshoot your own projects. The cutting edge design techniques and discussions with leading artists and designers will give you the tools and inspiration to let your imagination take flight.




Facts and Fallacies of Software Engineering


Book Description

Regarding the controversial and thought-provoking assessments in this handbook, many software professionals might disagree with the authors, but all will embrace the debate. Glass identifies many of the key problems hampering success in this field. Each fact is supported by insightful discussion and detailed references.




Core Lego Mindstorms Programming


Book Description

"Lego Mindstorms" allows you to build and program simple robots, but wouldn't it be nice to take programming to the next level? This book starts off with the basics and each chapter progresses to even more ambitious projects.




The Recursive Book of Recursion


Book Description

An accessible yet rigorous crash course on recursive programming using Python and JavaScript examples. Recursion has an intimidating reputation: it’s considered to be an advanced computer science topic frequently brought up in coding interviews. But there’s nothing magical about recursion. The Recursive Book of Recursion uses Python and JavaScript examples to teach the basics of recursion, exposing the ways that it’s often poorly taught and clarifying the fundamental principles of all recursive algorithms. You’ll learn when to use recursive functions (and, most importantly, when not to use them), how to implement the classic recursive algorithms often brought up in job interviews, and how recursive techniques can help solve countless problems involving tree traversal, combinatorics, and other tricky topics. This project-based guide contains complete, runnable programs to help you learn: How recursive functions make use of the call stack, a critical data structure almost never discussed in lessons on recursion How the head-tail and “leap of faith” techniques can simplify writing recursive functions How to use recursion to write custom search scripts for your filesystem, draw fractal art, create mazes, and more How optimization and memoization make recursive algorithms more efficient Al Sweigart has built a career explaining programming concepts in a fun, approachable manner. If you’ve shied away from learning recursion but want to add this technique to your programming toolkit, or if you’re racing to prepare for your next job interview, this book is for you.




Computational Complexity


Book Description

New and classical results in computational complexity, including interactive proofs, PCP, derandomization, and quantum computation. Ideal for graduate students.




Managing Humans


Book Description

Managing Humans is a selection of the best essays from Michael Lopp's popular website Rands in Repose(www.randsinrepose.com). Lopp is one of the most sought-after IT managers in Silicon Valley, and draws on his experiences at Apple, Netscape, Symantec, and Borland. This book reveals a variety of different approaches for creating innovative, happy development teams. It covers handling conflict, managing wildly differing personality types, infusing innovation into insane product schedules, and figuring out how to build lasting and useful engineering culture. The essays are biting, hilarious, and always informative.