Programming for Mathematicians


Book Description

Aimed at teaching mathematics students how to program using their knowledge of mathematics, the entire books emphasis is on "how to think" when programming. Three methods for constructing an algorithm or a program are used: manipulation and enrichment of existing code; use of recurrent sequences; deferral of code writing, in order to deal with one difficulty at a time. Many theorems are mathematically proved and programmed, and the text concludes with an explanation of how a compiler works and how to compile "by hand" little programs. Intended for anyone who thinks mathematically and wants to program and play with mathematics.




How to Design Programs, second edition


Book Description

A completely revised edition, offering new design recipes for interactive programs and support for images as plain values, testing, event-driven programming, and even distributed programming. This introduction to programming places computer science at the core of a liberal arts education. Unlike other introductory books, it focuses on the program design process, presenting program design guidelines that show the reader how to analyze a problem statement, how to formulate concise goals, how to make up examples, how to develop an outline of the solution, how to finish the program, and how to test it. Because learning to design programs is about the study of principles and the acquisition of transferable skills, the text does not use an off-the-shelf industrial language but presents a tailor-made teaching language. For the same reason, it offers DrRacket, a programming environment for novices that supports playful, feedback-oriented learning. The environment grows with readers as they master the material in the book until it supports a full-fledged language for the whole spectrum of programming tasks. This second edition has been completely revised. While the book continues to teach a systematic approach to program design, the second edition introduces different design recipes for interactive programs with graphical interfaces and batch programs. It also enriches its design recipes for functions with numerous new hints. Finally, the teaching languages and their IDE now come with support for images as plain values, testing, event-driven programming, and even distributed programming.




Structure and Interpretation of Computer Programs


Book Description

A new version of the classic and widely used text adapted for the JavaScript programming language. Since the publication of its first edition in 1984 and its second edition in 1996, Structure and Interpretation of Computer Programs (SICP) has influenced computer science curricula around the world. Widely adopted as a textbook, the book has its origins in a popular entry-level computer science course taught by Harold Abelson and Gerald Jay Sussman at MIT. SICP introduces the reader to central ideas of computation by establishing a series of mental models for computation. Earlier editions used the programming language Scheme in their program examples. This new version of the second edition has been adapted for JavaScript. The first three chapters of SICP cover programming concepts that are common to all modern high-level programming languages. Chapters four and five, which used Scheme to formulate language processors for Scheme, required significant revision. Chapter four offers new material, in particular an introduction to the notion of program parsing. The evaluator and compiler in chapter five introduce a subtle stack discipline to support return statements (a prominent feature of statement-oriented languages) without sacrificing tail recursion. The JavaScript programs included in the book run in any implementation of the language that complies with the ECMAScript 2020 specification, using the JavaScript package sicp provided by the MIT Press website.




The Secret Life of Programs


Book Description

A primer on the underlying technologies that allow computer programs to work. Covers topics like computer hardware, combinatorial logic, sequential logic, computer architecture, computer anatomy, and Input/Output. Many coders are unfamiliar with the underlying technologies that make their programs run. But why should you care when your code appears to work? Because you want it to run well and not be riddled with hard-to-find bugs. You don't want to be in the news because your code had a security problem. Lots of technical detail is available online but it's not organized or collected into a convenient place. In The Secret Life of Programs, veteran engineer Jonathan E. Steinhart explores--in depth--the foundational concepts that underlie the machine. Subjects like computer hardware, how software behaves on hardware, as well as how people have solved problems using technology over time. You'll learn: How the real world is converted into a form that computers understand, like bits, logic, numbers, text, and colors The fundamental building blocks that make up a computer including logic gates, adders, decoders, registers, and memory Why designing programs to match computer hardware, especially memory, improves performance How programs are converted into machine language that computers understand How software building blocks are combined to create programs like web browsers Clever tricks for making programs more efficient, like loop invariance, strength reduction, and recursive subdivision The fundamentals of computer security and machine intelligence Project design, documentation, scheduling, portability, maintenance, and other practical programming realities. Learn what really happens when your code runs on the machine and you'll learn to craft better, more efficient code.




The Prairie Homestead Cookbook


Book Description

Jill Winger, creator of the award-winning blog The Prairie Homestead, introduces her debut The Prairie Homestead Cookbook, including 100+ delicious, wholesome recipes made with fresh ingredients to bring the flavors and spirit of homestead cooking to any kitchen table. With a foreword by bestselling author Joel Salatin The Pioneer Woman Cooks meets 100 Days of Real Food, on the Wyoming prairie. While Jill produces much of her own food on her Wyoming ranch, you don’t have to grow all—or even any—of your own food to cook and eat like a homesteader. Jill teaches people how to make delicious traditional American comfort food recipes with whole ingredients and shows that you don’t have to use obscure items to enjoy this lifestyle. And as a busy mother of three, Jill knows how to make recipes easy and delicious for all ages. "Jill takes you on an insightful and delicious journey of becoming a homesteader. This book is packed with so much easy to follow, practical, hands-on information about steps you can take towards integrating homesteading into your life. It is packed full of exciting and mouth-watering recipes and heartwarming stories of her unique adventure into homesteading. These recipes are ones I know I will be using regularly in my kitchen." - Eve Kilcher These 109 recipes include her family’s favorites, with maple-glazed pork chops, butternut Alfredo pasta, and browned butter skillet corn. Jill also shares 17 bonus recipes for homemade sauces, salt rubs, sour cream, and the like—staples that many people are surprised to learn you can make yourself. Beyond these recipes, The Prairie Homestead Cookbook shares the tools and tips Jill has learned from life on the homestead, like how to churn your own butter, feed a family on a budget, and experience all the fulfilling satisfaction of a DIY lifestyle.




The Road Ahead


Book Description

In this clear-eyed, candid, and ultimately reassuring




Coders at Work


Book Description

Peter Seibel interviews 15 of the most interesting computer programmers alive today in Coders at Work, offering a companion volume to Apress’s highly acclaimed best-seller Founders at Work by Jessica Livingston. As the words “at work” suggest, Peter Seibel focuses on how his interviewees tackle the day-to-day work of programming, while revealing much more, like how they became great programmers, how they recognize programming talent in others, and what kinds of problems they find most interesting. Hundreds of people have suggested names of programmers to interview on the Coders at Work web site: www.codersatwork.com. The complete list was 284 names. Having digested everyone’s feedback, we selected 15 folks who’ve been kind enough to agree to be interviewed: Frances Allen: Pioneer in optimizing compilers, first woman to win the Turing Award (2006) and first female IBM fellow Joe Armstrong: Inventor of Erlang Joshua Bloch: Author of the Java collections framework, now at Google Bernie Cosell: One of the main software guys behind the original ARPANET IMPs and a master debugger Douglas Crockford: JSON founder, JavaScript architect at Yahoo! L. Peter Deutsch: Author of Ghostscript, implementer of Smalltalk-80 at Xerox PARC and Lisp 1.5 on PDP-1 Brendan Eich: Inventor of JavaScript, CTO of the Mozilla Corporation Brad Fitzpatrick: Writer of LiveJournal, OpenID, memcached, and Perlbal Dan Ingalls: Smalltalk implementor and designer Simon Peyton Jones: Coinventor of Haskell and lead designer of Glasgow Haskell Compiler Donald Knuth: Author of The Art of Computer Programming and creator of TeX Peter Norvig: Director of Research at Google and author of the standard text on AI Guy Steele: Coinventor of Scheme and part of the Common Lisp Gang of Five, currently working on Fortress Ken Thompson: Inventor of UNIX Jamie Zawinski: Author of XEmacs and early Netscape/Mozilla hacker




eSports Yearbook 2021-23


Book Description

In our latest yearbook, we explore the strategic dynamics and global impact of eSports, highlighting the revolution of intelligent agents, the fusion of traditional sports, and insights into legal and economic challenges. Personal stories showcase the potential for career development within the vibrant gaming community. This edition celebrates the resilience and spirit of eSports, emphasizing its promising future in competitive gaming. Join us in examining the innovations, cultural shifts, and the passionate community driving the industry forward.




I Love Jesus, But I Want to Die


Book Description

A compassionate, shame-free guide for your darkest days “A one-of-a-kind book . . . to read for yourself or give to a struggling friend or loved one without the fear that depression and suicidal thoughts will be minimized, medicalized or over-spiritualized.”—Kay Warren, cofounder of Saddleback Church What happens when loving Jesus doesn’t cure you of depression, anxiety, or suicidal thoughts? You might be crushed by shame over your mental illness, only to be told by well-meaning Christians to “choose joy” and “pray more.” So you beg God to take away the pain, but nothing eases the ache inside. As darkness lingers and color drains from your world, you’re left wondering if God has abandoned you. You just want a way out. But there’s hope. In I Love Jesus, But I Want to Die, Sarah J. Robinson offers a healthy, practical, and shame-free guide for Christians struggling with mental illness. With unflinching honesty, Sarah shares her story of battling depression and fighting to stay alive despite toxic theology that made her afraid to seek help outside the church. Pairing her own story with scriptural insights, mental health research, and simple practices, Sarah helps you reconnect with the God who is present in our deepest anguish and discover that you are worth everything it takes to get better. Beautifully written and full of hard-won wisdom, I Love Jesus, But I Want to Die offers a path toward a rich, hope-filled life in Christ, even when healing doesn’t look like what you expect.




Ask a Manager


Book Description

From the creator of the popular website Ask a Manager and New York’s work-advice columnist comes a witty, practical guide to 200 difficult professional conversations—featuring all-new advice! There’s a reason Alison Green has been called “the Dear Abby of the work world.” Ten years as a workplace-advice columnist have taught her that people avoid awkward conversations in the office because they simply don’t know what to say. Thankfully, Green does—and in this incredibly helpful book, she tackles the tough discussions you may need to have during your career. You’ll learn what to say when • coworkers push their work on you—then take credit for it • you accidentally trash-talk someone in an email then hit “reply all” • you’re being micromanaged—or not being managed at all • you catch a colleague in a lie • your boss seems unhappy with your work • your cubemate’s loud speakerphone is making you homicidal • you got drunk at the holiday party Praise for Ask a Manager “A must-read for anyone who works . . . [Alison Green’s] advice boils down to the idea that you should be professional (even when others are not) and that communicating in a straightforward manner with candor and kindness will get you far, no matter where you work.”—Booklist (starred review) “The author’s friendly, warm, no-nonsense writing is a pleasure to read, and her advice can be widely applied to relationships in all areas of readers’ lives. Ideal for anyone new to the job market or new to management, or anyone hoping to improve their work experience.”—Library Journal (starred review) “I am a huge fan of Alison Green’s Ask a Manager column. This book is even better. It teaches us how to deal with many of the most vexing big and little problems in our workplaces—and to do so with grace, confidence, and a sense of humor.”—Robert Sutton, Stanford professor and author of The No Asshole Rule and The Asshole Survival Guide “Ask a Manager is the ultimate playbook for navigating the traditional workforce in a diplomatic but firm way.”—Erin Lowry, author of Broke Millennial: Stop Scraping By and Get Your Financial Life Together