Learn to Program with PythonGet started in the world of software development: go from zero knowledge of programming to comfortably writing small to medium-sized programs in Python. Programming can be intimidating (especially when most books on software require you to know and use obscure command line instructions) but it doesn't have to be that way!
In Learn to Program with Python, author Irv Kalb uses his in-person teaching experience to guide you through learning the Python computer programming language. He uses a conversational style to make you feel as though he is your personal tutor. All material is laid out in a thoughtful manner, each lesson building on previous ones. Many real–world analogies make the material easy to relate to. A wide variety of well-documented examples are provided. Along the way, you'll develop small programs on your own through a series of coding challenges that reinforce the content of the chapters. ...
Relational Database ProgrammingLearn the best way of writing code to run inside a relational database. This book shows how a holistic and set-oriented approach to database programming can far exceed the performance of the row-by-row model that is too often used by developers who haven't been shown a better way.
Two styles of programming are encountered in the database world. Classical programming as taught in many universities leads to an atomic, row-oriented, and procedural style inspired by the structured models of programming. In short, many application developers write in the relational database exactly like in the user interface. The other style of programming is holistic, data set oriented, and coded mainly in SQL. This is the style of the database developer.
The set based and holistic style of development is not promoted enough in universities, and many application developers are not fully aware of it. There are many performance issues all over the world in relational databases due to the use of the ato ...
Programming Clojure, 3rd EditionClojure joins the flexibility and agility of Lisp with the reach, stability, and performance of Java. Combine Clojure's tools for maximum effectiveness as you work with immutable data, functional programming, and safe concurrency to write programs that solve real-world problems.
Start by reading and understanding Clojure syntax and see how Clojure is evaluated. From there, find out about the sequence abstraction, which combines immutable collections with functional programming to create truly reusable data transformation code. Clojure is a functional language; learn how to write programs in a functional style, and when and how to use recursion to your advantage. Discover Clojure's unique approach to state and identity, techniques for polymorphism and open systems using multimethods and protocols, and how to leverage Clojure's metaprogramming capabilities via macros. Finally, put all the pieces together in a real program.
New to this edition is coverage of Clojure's spec library, ...
Learn Functional Programming with ElixirFunctional programming offers useful techniques for building maintainable and scalable software that solves today's difficult problems. The demand for software written in this way is increasing - you don't want to miss out. In this book, you'll not only learn Elixir and its features, you'll also learn the mindset required to program functionally. Elixir's clean syntax is excellent for exploring the critical skills of using functions and concurrency.
Start with the basic techniques of the functional way: working with immutable data, transforming data in discrete steps, and avoiding side effects. Next, take a deep look at values, expressions, functions, and modules. Then extend your programming with pattern matching and flow control with case, if, cond, and functions. Use recursive functions to create iterations. Work with data types such as lists, tuples, and maps. Improve code reusability and readability with Elixir's most common high-order functions. Explore how to use lazy computa ...
Reactive Programming with RxJS 5Create concurrent applications with ease using RxJS 5, a powerful event composition library. Real-world JavaScript applications require you to master asynchronous programming, and chances are that you'll spend more time coordinating asynchronous events than writing actual functionality. This book introduces concepts and tools that will greatly simplify the process of writing asynchronous programs.
Find out about Observables, a unifying data type that simplifies concurrent code and eases the pain of callbacks. Learn how Schedulers change the concept of time itself, making asynchronous testing sane again. Find real-world examples for the browser and Node.js along the way: how about a real-time earthquake visualization in 20 lines of code, or a frantic shoot-em-up space videogame? You'll also use Cycle.js - a modern, reactive, web framework - to make a new breed of web applications.
By the end of the book, you'll know how to think in a reactive way, and how to use RxJS 5 to build co ...
Beginning Programming with Java For Dummies, 4th EditionBeginning Programming with Java For Dummies, 4th Edition is a comprehensive guide to learning one of the most popular programming languages worldwide. This book covers basic development concepts and techniques through a Java lens. You'll learn what goes into a program, how to put the pieces together, how to deal with challenges, and how to make it work. The new Fourth Edition has been updated to align with Java 8, and includes new options for the latest tools and techniques.
Java is the predominant language used to program Android and cloud apps, and its popularity is surging as app demand rises. Whether you're just tooling around, or embarking on a career, Beginning Programming with Java For Dummies, 4th Edition is a great place to start. Step-by-step instruction, easy-to-read language, and quick navigation make this book the perfect resource for new programmers. You'll begin with the basics before moving into code, with simple, yet detailed explanations every step of the way. ...
BeagleBone EssentialsThe BeagleBone Black is an embedded system that is able to run complete GNU/Linux distributions such as Debian or Ubuntu. Having powerful distribution capabilities, and packed with an easily expandable embedded board, the BeagleBone Black is a device that will allow users to build powerful and versatile monitoring and controlling systems.
You start off by learning how to set up the board from scratch; you will be introduced to the concepts of compilation and cross-compilation of user-space and kernel-space applications with some basic debugging techniques. Next, you will move on to high-level programming by using scripting languages; you'll then learn how to get access to different kinds of peripherals such as serial ports, USB devices, I2C/SPI, and 1-Wire. Finally, you will discover how to use or develop system daemons in several programming languages, collect peripheral data, and control a device. Accessing all peripherals and writing good monitoring and controlling programs can b ...
Beginning R, 2nd EditionBeginning R, 2nd Edition is a hands-on book showing how to use the R language, write and save R scripts, read in data files, and write custom statistical functions as well as use built in functions. This book shows the use of R in specific cases such as one-way ANOVA analysis, linear and logistic regression, data visualization, parallel processing, bootstrapping, and more. It takes a hands-on, example-based approach incorporating best practices with clear explanations of the statistics being done. It has been completely re-written since the first edition to make use of the latest packages and features in R version 3.
R is a powerful open-source language and programming environment for statistics and has become the de facto standard for doing, teaching, and learning computational statistics. R is both an object-oriented language and a functional language that is easy to learn, easy to use, and completely free. A large community of dedicated R users and programmers provides an excelle ...
Hack and HHVMA couple of years ago, Facebook switched its production servers from a PHP-to-C++ compiler to their own HipHop Virtual Machine (HHVM) and then launched a new version of PHP to run on HHVM called Hack. This comprehensive guide—written by a member of the core HHVM and Hack teams at Facebook—shows you how to get up and running with both HHVM and Hack.
What makes them useful? The HHVM engine is faster and more performant than the Zend engine, which can save Facebook and other large-scale sites millions of dollars in servers and maintenance. And while the Hack language looks and acts like PHP, it also contains new features such as static typing, generics, native collections, which PHP developers have long needed.
Pick up this book and explore two important programming innovations that help Facebook run a tighter ship. ...
Clojure Web Development EssentialsFunctional programming enables developers to create and deploy applications quickly and easily. Using the Clojure programming language and the Leiningen build tool, this book teaches you how to leverage various Clojure libraries into the building blocks of a web-based application.
We'll start by generating a new, fully runnable, baseline web application using the Leiningen Luminus template. From there we'll examine the different pieces that compose our application, and learn the basics of the underlying Ring framework. Subsequent chapters will focus on each technology and leverage those technologies to build additional functionality into our application. You'll learn how to validate user submitted data, authentication, account creation, how to interact with a database, and more. Finally, we'll create an environment configuration and deploy our app.
By the end of this book you'll have created a full fledged application from start to finish, and you'll have the requisite skills to ...