Author: Alexander Makarov
Publisher: Packt Pub Limited
ISBN: 9781849515481
Category : Computers
Languages : en
Pages : 392
Book Description
This book is a collection of Yii recipes with chapters generally independent of each other. It is full of practically useful solutions and concepts explained with code and the required pictorial illustrations. If you are a developer with a good knowledge of PHP5, are familiar with the basics of Yii, and have tried to develop applications using Yii, then this book is for you. Knowledge of the object oriented approach and MVC pattern will be a great advantage as Yii uses these extensively.
Yii 1.1 Application Development Cookbook
Author: Alexander Makarov
Publisher: Packt Publishing Ltd
ISBN: 1849515492
Category : Computers
Languages : en
Pages : 599
Book Description
Over 80 recipes to help you master using the Yii PHP framework.
Publisher: Packt Publishing Ltd
ISBN: 1849515492
Category : Computers
Languages : en
Pages : 599
Book Description
Over 80 recipes to help you master using the Yii PHP framework.
Agile Web Application Development with Yii1.1 and PHP5
Author: Jeffrey Winesett
Publisher: Packt Publishing Ltd
ISBN: 1847199593
Category : Computers
Languages : en
Pages : 544
Book Description
Fast-track your Web application development by harnessing the power of the Yii PHP framework
Publisher: Packt Publishing Ltd
ISBN: 1847199593
Category : Computers
Languages : en
Pages : 544
Book Description
Fast-track your Web application development by harnessing the power of the Yii PHP framework
Yii2 By Example
Author: Fabrizio Caldarelli
Publisher: Packt Publishing Ltd
ISBN: 1785283677
Category : Computers
Languages : en
Pages : 344
Book Description
Develop complete web applications from scratch through practical examples and tips for beginners and more advanced users About This Book Improve your programming experience and become a full stack developer Master real-life web applications, and create and manage four different projects Step-by-step guidance to develop real-world web applications smoothly Who This Book Is For This book is for anyone who wants to discover and explore Yii Framework. Basic programming experience with PHP and object oriented programming is assumed. What You Will Learn Understand basic concepts, along with the installation and customization of Yii Discover models, controllers, and views—concepts applied in a web context—and how they are employed in Yii Use ActiveRecord to manipulate a database Add access control to your web application through authentication and authorization Install and customize an advanced template for multiple applications in the same project Create a RESTful Web Service to allow remote access to data Develop a console application to launch a command in the console as an automated task (cron job) Make code reusable through widgets and components and localize text messages to make a multilanguage web app In Detail Yii is a high-performance PHP framework best for developing Web 2.0 applications. It provides fast, secure, and professional features to create robust projects, however, this rapid development requires the ability to organize common tasks together to build a complete application. It's all too easy to get confused; this is where this book comes in. This book contains a series of practical project examples for developers starting from scratch. Each section contains the most relevant theories for every topic as you walk through developing each project, focusing on key aspects that commonly confuse users. The book starts with all the framework's basic concepts, such as controllers and views, to introduce you to Yii and creating your first application, a simple news reader. You will be learn to configure URL rules to make a pretty URL, essential for search engine optimization. Next, you will walk through Model and ActiveRecord, key concepts in database interaction. The second application you will develop is a reservation system that allows you to manage rooms, customers, and reservations. For this, you will use database connection through SQL and ActiveRecord. More complex than the first one, this application will introduce you to the advanced template of Yii 2, splitting the app into two parts: a frontend for all visitors and a backend for the admin. Finally, you will move on to the last two applications: one that allows connections from remote clients, through RESTful components of Yii 2, and another that creates and organizes automatic tasks using the console application structure of Yii 2. Style and approach This is a step-by-step guide with each topic introduced in the context of real-world applications, highlighting common cases where users may encounter difficulties.
Publisher: Packt Publishing Ltd
ISBN: 1785283677
Category : Computers
Languages : en
Pages : 344
Book Description
Develop complete web applications from scratch through practical examples and tips for beginners and more advanced users About This Book Improve your programming experience and become a full stack developer Master real-life web applications, and create and manage four different projects Step-by-step guidance to develop real-world web applications smoothly Who This Book Is For This book is for anyone who wants to discover and explore Yii Framework. Basic programming experience with PHP and object oriented programming is assumed. What You Will Learn Understand basic concepts, along with the installation and customization of Yii Discover models, controllers, and views—concepts applied in a web context—and how they are employed in Yii Use ActiveRecord to manipulate a database Add access control to your web application through authentication and authorization Install and customize an advanced template for multiple applications in the same project Create a RESTful Web Service to allow remote access to data Develop a console application to launch a command in the console as an automated task (cron job) Make code reusable through widgets and components and localize text messages to make a multilanguage web app In Detail Yii is a high-performance PHP framework best for developing Web 2.0 applications. It provides fast, secure, and professional features to create robust projects, however, this rapid development requires the ability to organize common tasks together to build a complete application. It's all too easy to get confused; this is where this book comes in. This book contains a series of practical project examples for developers starting from scratch. Each section contains the most relevant theories for every topic as you walk through developing each project, focusing on key aspects that commonly confuse users. The book starts with all the framework's basic concepts, such as controllers and views, to introduce you to Yii and creating your first application, a simple news reader. You will be learn to configure URL rules to make a pretty URL, essential for search engine optimization. Next, you will walk through Model and ActiveRecord, key concepts in database interaction. The second application you will develop is a reservation system that allows you to manage rooms, customers, and reservations. For this, you will use database connection through SQL and ActiveRecord. More complex than the first one, this application will introduce you to the advanced template of Yii 2, splitting the app into two parts: a frontend for all visitors and a backend for the admin. Finally, you will move on to the last two applications: one that allows connections from remote clients, through RESTful components of Yii 2, and another that creates and organizes automatic tasks using the console application structure of Yii 2. Style and approach This is a step-by-step guide with each topic introduced in the context of real-world applications, highlighting common cases where users may encounter difficulties.
Yii Application Development Cookbook -Second Edition
Author: Alexander Makarov
Publisher: Packt Publishing Ltd
ISBN: 1782163115
Category : Computers
Languages : en
Pages : 656
Book Description
This book is a collection of Yii recipes with chapters generally independent of each other. It is full of practically useful solutions and concepts explained with code and relevant screenshots and diagrams.This book is for developers with good PHP5 knowledge who have tried to develop applications using Yii. An object-oriented approach and MVC knowledge will be a great advantage as Yii uses these extensively.
Publisher: Packt Publishing Ltd
ISBN: 1782163115
Category : Computers
Languages : en
Pages : 656
Book Description
This book is a collection of Yii recipes with chapters generally independent of each other. It is full of practically useful solutions and concepts explained with code and relevant screenshots and diagrams.This book is for developers with good PHP5 knowledge who have tried to develop applications using Yii. An object-oriented approach and MVC knowledge will be a great advantage as Yii uses these extensively.
PhpStorm Cookbook
Author: Mukund Chaudhary
Publisher: Packt Publishing Ltd
ISBN: 1782173889
Category : Computers
Languages : en
Pages : 383
Book Description
If you are a competent PHP developer who knows the basics of PHPStorm and intends to gain better knowledge of PHPStorm by learning and implementing pro-level practices, techniques, and solutions, then this book is for you. It is assumed that you already have a working installation of the software setup.
Publisher: Packt Publishing Ltd
ISBN: 1782173889
Category : Computers
Languages : en
Pages : 383
Book Description
If you are a competent PHP developer who knows the basics of PHPStorm and intends to gain better knowledge of PHPStorm by learning and implementing pro-level practices, techniques, and solutions, then this book is for you. It is assumed that you already have a working installation of the software setup.
Yii2 Application Development Cookbook
Author: Andrew Bogdanov
Publisher: Packt Publishing Ltd
ISBN: 1785281496
Category : Computers
Languages : en
Pages : 585
Book Description
Discover 100 useful recipes that will bring the best out of the Yii2 framework and be on the bleeding edge of web development today About This Book Learn how to use Yii2 efficiently through clear examples and core features, and see how to use tests, create reusable code snippets, core widgets, deployment, and more This book provides you with a wide space for practice approaches and helps you to learn about the new Yii2 framework. Understand the difference between the Yii 1.x.x versions using useful examples from real web applications Who This Book Is For This book is for developers with good PHP5 knowledge and MVC-frameworks who have tried to develop applications using the Yii 1.x.x version. This book will very useful for all those who would like to try Yii2, or those who are afraid to move from Yii 1.x.x. to Yii2. If you have still not tried Yii2, this book is definitely for you! What You Will Learn See the new version of the Yii2 framework and application development practices Write your applications more efficiently using shortcuts, Yii's core functionality, and the best practices in Web 2.0 Get data from a database, and deal with Active Record, migrations, widgets, and core features Easily update your skills from the previous version of the framework Explore how to use Yii with different JavaScript frameworks and libraries such as WebSockets, Angular, Ember, Backbone and React Learn how to keep your application secure according to the general web application security principle "filter input, escape output. Write RESTfull Web Services using Yii2 and built-in features Correctly install and use official extensions in your projects Effectively create and implement your own Yii extension, and also ensure your extension is reusable and useful for the community In Detail Yii is a free, open source web application development framework written in PHP5 that promotes clean DRY design and encourages rapid development. It works to streamline your application development time and helps to ensure an extremely efficient, extensible, and maintainable end product. Being extremely performance optimized, Yii is a perfect choice for any size project. However, it has been built with sophisticated, enterprise applications in mind. You have full control over the configuration from head-to-toe (presentation-to-persistence) to conform to your enterprise development guidelines. It comes packaged with tools to help test and debug your application, and has clear and comprehensive documentation. This book is a collection of Yii2 recipes. Each recipe is represented as a full and independent item, which showcases solutions from real web-applications. So you can easily reproduce them in your environment and learn Yii2 fast and without tears. All recipes are explained with step-by-step code examples and clear screenshots. Yii2 is like a suit that looks great off the rack, but is also very easy to tailor to fit your needs. Virtually every component of the framework is extensible. This book will show how to use official extensions, extend any component, or write a new one. This book will help you create modern web applications quickly, and make sure they perform well using examples and business logic from real life. You will deal with the Yii command line, migrations, and assets. You will learn about role-based access, security, and deployment. We'll show you how to easily get started, configure your environment, and be ready to write web applications efficiently and quickly. Style and approach The chapters of this book are independent and offer a practical approach to Yii development. You can start reading from the chapter you need most, be it Ajax and jQuery, RESTful Web Services, Database, Active Record, or Official Extensions
Publisher: Packt Publishing Ltd
ISBN: 1785281496
Category : Computers
Languages : en
Pages : 585
Book Description
Discover 100 useful recipes that will bring the best out of the Yii2 framework and be on the bleeding edge of web development today About This Book Learn how to use Yii2 efficiently through clear examples and core features, and see how to use tests, create reusable code snippets, core widgets, deployment, and more This book provides you with a wide space for practice approaches and helps you to learn about the new Yii2 framework. Understand the difference between the Yii 1.x.x versions using useful examples from real web applications Who This Book Is For This book is for developers with good PHP5 knowledge and MVC-frameworks who have tried to develop applications using the Yii 1.x.x version. This book will very useful for all those who would like to try Yii2, or those who are afraid to move from Yii 1.x.x. to Yii2. If you have still not tried Yii2, this book is definitely for you! What You Will Learn See the new version of the Yii2 framework and application development practices Write your applications more efficiently using shortcuts, Yii's core functionality, and the best practices in Web 2.0 Get data from a database, and deal with Active Record, migrations, widgets, and core features Easily update your skills from the previous version of the framework Explore how to use Yii with different JavaScript frameworks and libraries such as WebSockets, Angular, Ember, Backbone and React Learn how to keep your application secure according to the general web application security principle "filter input, escape output. Write RESTfull Web Services using Yii2 and built-in features Correctly install and use official extensions in your projects Effectively create and implement your own Yii extension, and also ensure your extension is reusable and useful for the community In Detail Yii is a free, open source web application development framework written in PHP5 that promotes clean DRY design and encourages rapid development. It works to streamline your application development time and helps to ensure an extremely efficient, extensible, and maintainable end product. Being extremely performance optimized, Yii is a perfect choice for any size project. However, it has been built with sophisticated, enterprise applications in mind. You have full control over the configuration from head-to-toe (presentation-to-persistence) to conform to your enterprise development guidelines. It comes packaged with tools to help test and debug your application, and has clear and comprehensive documentation. This book is a collection of Yii2 recipes. Each recipe is represented as a full and independent item, which showcases solutions from real web-applications. So you can easily reproduce them in your environment and learn Yii2 fast and without tears. All recipes are explained with step-by-step code examples and clear screenshots. Yii2 is like a suit that looks great off the rack, but is also very easy to tailor to fit your needs. Virtually every component of the framework is extensible. This book will show how to use official extensions, extend any component, or write a new one. This book will help you create modern web applications quickly, and make sure they perform well using examples and business logic from real life. You will deal with the Yii command line, migrations, and assets. You will learn about role-based access, security, and deployment. We'll show you how to easily get started, configure your environment, and be ready to write web applications efficiently and quickly. Style and approach The chapters of this book are independent and offer a practical approach to Yii development. You can start reading from the chapter you need most, be it Ajax and jQuery, RESTful Web Services, Database, Active Record, or Official Extensions
Yii Project Blueprints
Author: Charles R. Portwood II
Publisher:
ISBN: 9781783287734
Category : Computers
Languages : en
Pages : 320
Book Description
This book is for intermediate-to-advanced level Yii developers who want to master the Yii framework and develop real-world applications. You should have experience of working with Yii, PHP 5, HTML, CSS, and JavaScript.
Publisher:
ISBN: 9781783287734
Category : Computers
Languages : en
Pages : 320
Book Description
This book is for intermediate-to-advanced level Yii developers who want to master the Yii framework and develop real-world applications. You should have experience of working with Yii, PHP 5, HTML, CSS, and JavaScript.
Facebook Application Development with Graph API Cookbook
Author: Shashwat Srivastava
Publisher: Packt Publishing
ISBN: 9781849690928
Category : Application software
Languages : en
Pages : 0
Book Description
With a user base of nearly 800 million people, Facebook is the number one social networking platform. Applications can be created to interact with this huge user base in various ways both inside and outside Facebook. These applications, if developed effectively and efficiently, offer a free medium for promotion and publicity of a product or an organization.Facebook Application Development with Graph API Cookbook covers both the concepts and implementations necessary to develop Facebook applications and provides ready to use code for common scenarios faced by a developer while creating these applications. It incorporates the newly launched Facebook Graph API and also presents the reader with some intuitive ready to use applications.This book guides the reader step by step, from start to finish, through various stages of Facebook application development. It begins by exploring the Facebook application registration and discussing the verification and authentication technique. It then takes you through the various ways in which you can use Facebook Graph API for interacting with users such as posting on a user's wall, tagging a user in a picture, etc. Accessing complex Facebook user data by formulating a series of queries, doing client side scripting and incorporating Facebook Dialog interface are some other features that have been incorporated in this book. Integration of various Facebook Social Plugins such as the like box in your web page has also been discussed. Further you will get to know the concept of virtual currency and how to programmatically derive Facebook analytics data. As the book progresses, you will learn to use and integrate many more advanced features in Facebook application development. The book contains ready to use code that can be deployed instantly. Towards the end, the book houses a variety of ready to use Facebook applications so as to help readers derive their own applications from them.
Publisher: Packt Publishing
ISBN: 9781849690928
Category : Application software
Languages : en
Pages : 0
Book Description
With a user base of nearly 800 million people, Facebook is the number one social networking platform. Applications can be created to interact with this huge user base in various ways both inside and outside Facebook. These applications, if developed effectively and efficiently, offer a free medium for promotion and publicity of a product or an organization.Facebook Application Development with Graph API Cookbook covers both the concepts and implementations necessary to develop Facebook applications and provides ready to use code for common scenarios faced by a developer while creating these applications. It incorporates the newly launched Facebook Graph API and also presents the reader with some intuitive ready to use applications.This book guides the reader step by step, from start to finish, through various stages of Facebook application development. It begins by exploring the Facebook application registration and discussing the verification and authentication technique. It then takes you through the various ways in which you can use Facebook Graph API for interacting with users such as posting on a user's wall, tagging a user in a picture, etc. Accessing complex Facebook user data by formulating a series of queries, doing client side scripting and incorporating Facebook Dialog interface are some other features that have been incorporated in this book. Integration of various Facebook Social Plugins such as the like box in your web page has also been discussed. Further you will get to know the concept of virtual currency and how to programmatically derive Facebook analytics data. As the book progresses, you will learn to use and integrate many more advanced features in Facebook application development. The book contains ready to use code that can be deployed instantly. Towards the end, the book houses a variety of ready to use Facebook applications so as to help readers derive their own applications from them.
Building Web Apps with WordPress
Author: Brian Messenlehner
Publisher: "O'Reilly Media, Inc."
ISBN: 1449364802
Category : Computers
Languages : en
Pages : 459
Book Description
WordPress is much more than a blogging platform. As this practical guide clearly demonstrates, you can use WordPress to build web apps of any type—not mere content sites, but full-blown apps for specific tasks. If you have PHP experience with a smattering of HTML, CSS, and JavaScript, you’ll learn how to use WordPress plugins and themes to develop fast, scalable, and secure web apps, native mobile apps, web services, and even a network of multiple WordPress sites. The authors use examples from their recently released SchoolPress app to explain concepts and techniques throughout the book. All code examples are available on GitHub. Compare WordPress with traditional app development frameworks Use themes for views, and plugins for backend functionality Get suggestions for choosing WordPress plugins—or build your own Manage user accounts and roles, and access user data Build asynchronous behaviors in your app with jQuery Develop native apps for iOS and Android, using wrappers Incorporate PHP libraries, external APIs, and web service plugins Collect payments through ecommerce and membership plugins Use techniques to speed up and scale your WordPress app
Publisher: "O'Reilly Media, Inc."
ISBN: 1449364802
Category : Computers
Languages : en
Pages : 459
Book Description
WordPress is much more than a blogging platform. As this practical guide clearly demonstrates, you can use WordPress to build web apps of any type—not mere content sites, but full-blown apps for specific tasks. If you have PHP experience with a smattering of HTML, CSS, and JavaScript, you’ll learn how to use WordPress plugins and themes to develop fast, scalable, and secure web apps, native mobile apps, web services, and even a network of multiple WordPress sites. The authors use examples from their recently released SchoolPress app to explain concepts and techniques throughout the book. All code examples are available on GitHub. Compare WordPress with traditional app development frameworks Use themes for views, and plugins for backend functionality Get suggestions for choosing WordPress plugins—or build your own Manage user accounts and roles, and access user data Build asynchronous behaviors in your app with jQuery Develop native apps for iOS and Android, using wrappers Incorporate PHP libraries, external APIs, and web service plugins Collect payments through ecommerce and membership plugins Use techniques to speed up and scale your WordPress app
Convex Optimization & Euclidean Distance Geometry
Author: Jon Dattorro
Publisher: Meboo Publishing USA
ISBN: 0976401304
Category : Mathematics
Languages : en
Pages : 776
Book Description
The study of Euclidean distance matrices (EDMs) fundamentally asks what can be known geometrically given onlydistance information between points in Euclidean space. Each point may represent simply locationor, abstractly, any entity expressible as a vector in finite-dimensional Euclidean space.The answer to the question posed is that very much can be known about the points;the mathematics of this combined study of geometry and optimization is rich and deep.Throughout we cite beacons of historical accomplishment.The application of EDMs has already proven invaluable in discerning biological molecular conformation.The emerging practice of localization in wireless sensor networks, the global positioning system (GPS), and distance-based pattern recognitionwill certainly simplify and benefit from this theory.We study the pervasive convex Euclidean bodies and their various representations.In particular, we make convex polyhedra, cones, and dual cones more visceral through illustration, andwe study the geometric relation of polyhedral cones to nonorthogonal bases biorthogonal expansion.We explain conversion between halfspace- and vertex-descriptions of convex cones,we provide formulae for determining dual cones,and we show how classic alternative systems of linear inequalities or linear matrix inequalities and optimality conditions can be explained by generalized inequalities in terms of convex cones and their duals.The conic analogue to linear independence, called conic independence, is introducedas a new tool in the study of classical cone theory; the logical next step in the progression:linear, affine, conic.Any convex optimization problem has geometric interpretation.This is a powerful attraction: the ability to visualize geometry of an optimization problem.We provide tools to make visualization easier.The concept of faces, extreme points, and extreme directions of convex Euclidean bodiesis explained here, crucial to understanding convex optimization.The convex cone of positive semidefinite matrices, in particular, is studied in depth.We mathematically interpret, for example,its inverse image under affine transformation, and we explainhow higher-rank subsets of its boundary united with its interior are convex.The Chapter on "Geometry of convex functions",observes analogies between convex sets and functions:The set of all vector-valued convex functions is a closed convex cone.Included among the examples in this chapter, we show how the real affinefunction relates to convex functions as the hyperplane relates to convex sets.Here, also, pertinent results formultidimensional convex functions are presented that are largely ignored in the literature;tricks and tips for determining their convexityand discerning their geometry, particularly with regard to matrix calculus which remains largely unsystematizedwhen compared with the traditional practice of ordinary calculus.Consequently, we collect some results of matrix differentiation in the appendices.The Euclidean distance matrix (EDM) is studied,its properties and relationship to both positive semidefinite and Gram matrices.We relate the EDM to the four classical axioms of the Euclidean metric;thereby, observing the existence of an infinity of axioms of the Euclidean metric beyondthe triangle inequality. We proceed byderiving the fifth Euclidean axiom and then explain why furthering this endeavoris inefficient because the ensuing criteria (while describing polyhedra)grow linearly in complexity and number.Some geometrical problems solvable via EDMs,EDM problems posed as convex optimization, and methods of solution arepresented;\eg, we generate a recognizable isotonic map of the United States usingonly comparative distance information (no distance information, only distance inequalities).We offer a new proof of the classic Schoenberg criterion, that determines whether a candidate matrix is an EDM. Our proofrelies on fundamental geometry; assuming, any EDM must correspond to a list of points contained in some polyhedron(possibly at its vertices) and vice versa.It is not widely known that the Schoenberg criterion implies nonnegativity of the EDM entries; proved here.We characterize the eigenvalues of an EDM matrix and then devisea polyhedral cone required for determining membership of a candidate matrix(in Cayley-Menger form) to the convex cone of Euclidean distance matrices (EDM cone); \ie,a candidate is an EDM if and only if its eigenspectrum belongs to a spectral cone for EDM^N.We will see spectral cones are not unique.In the chapter "EDM cone", we explain the geometric relationship betweenthe EDM cone, two positive semidefinite cones, and the elliptope.We illustrate geometric requirements, in particular, for projection of a candidate matrixon a positive semidefinite cone that establish its membership to the EDM cone. The faces of the EDM cone are described,but still open is the question whether all its faces are exposed as they are for the positive semidefinite cone.The classic Schoenberg criterion, relating EDM and positive semidefinite cones, isrevealed to be a discretized membership relation (a generalized inequality, a new Farkas''''''''-like lemma)between the EDM cone and its ordinary dual. A matrix criterion for membership to the dual EDM cone is derived thatis simpler than the Schoenberg criterion.We derive a new concise expression for the EDM cone and its dual involvingtwo subspaces and a positive semidefinite cone."Semidefinite programming" is reviewedwith particular attention to optimality conditionsof prototypical primal and dual conic programs,their interplay, and the perturbation method of rank reduction of optimal solutions(extant but not well-known).We show how to solve a ubiquitous platonic combinatorial optimization problem from linear algebra(the optimal Boolean solution x to Ax=b)via semidefinite program relaxation.A three-dimensional polyhedral analogue for the positive semidefinite cone of 3X3 symmetricmatrices is introduced; a tool for visualizing in 6 dimensions.In "EDM proximity"we explore methods of solution to a few fundamental and prevalentEuclidean distance matrix proximity problems; the problem of finding that Euclidean distance matrix closestto a given matrix in the Euclidean sense.We pay particular attention to the problem when compounded with rank minimization.We offer a new geometrical proof of a famous result discovered by Eckart \& Young in 1936 regarding Euclideanprojection of a point on a subset of the positive semidefinite cone comprising all positive semidefinite matriceshaving rank not exceeding a prescribed limit rho.We explain how this problem is transformed to a convex optimization for any rank rho.
Publisher: Meboo Publishing USA
ISBN: 0976401304
Category : Mathematics
Languages : en
Pages : 776
Book Description
The study of Euclidean distance matrices (EDMs) fundamentally asks what can be known geometrically given onlydistance information between points in Euclidean space. Each point may represent simply locationor, abstractly, any entity expressible as a vector in finite-dimensional Euclidean space.The answer to the question posed is that very much can be known about the points;the mathematics of this combined study of geometry and optimization is rich and deep.Throughout we cite beacons of historical accomplishment.The application of EDMs has already proven invaluable in discerning biological molecular conformation.The emerging practice of localization in wireless sensor networks, the global positioning system (GPS), and distance-based pattern recognitionwill certainly simplify and benefit from this theory.We study the pervasive convex Euclidean bodies and their various representations.In particular, we make convex polyhedra, cones, and dual cones more visceral through illustration, andwe study the geometric relation of polyhedral cones to nonorthogonal bases biorthogonal expansion.We explain conversion between halfspace- and vertex-descriptions of convex cones,we provide formulae for determining dual cones,and we show how classic alternative systems of linear inequalities or linear matrix inequalities and optimality conditions can be explained by generalized inequalities in terms of convex cones and their duals.The conic analogue to linear independence, called conic independence, is introducedas a new tool in the study of classical cone theory; the logical next step in the progression:linear, affine, conic.Any convex optimization problem has geometric interpretation.This is a powerful attraction: the ability to visualize geometry of an optimization problem.We provide tools to make visualization easier.The concept of faces, extreme points, and extreme directions of convex Euclidean bodiesis explained here, crucial to understanding convex optimization.The convex cone of positive semidefinite matrices, in particular, is studied in depth.We mathematically interpret, for example,its inverse image under affine transformation, and we explainhow higher-rank subsets of its boundary united with its interior are convex.The Chapter on "Geometry of convex functions",observes analogies between convex sets and functions:The set of all vector-valued convex functions is a closed convex cone.Included among the examples in this chapter, we show how the real affinefunction relates to convex functions as the hyperplane relates to convex sets.Here, also, pertinent results formultidimensional convex functions are presented that are largely ignored in the literature;tricks and tips for determining their convexityand discerning their geometry, particularly with regard to matrix calculus which remains largely unsystematizedwhen compared with the traditional practice of ordinary calculus.Consequently, we collect some results of matrix differentiation in the appendices.The Euclidean distance matrix (EDM) is studied,its properties and relationship to both positive semidefinite and Gram matrices.We relate the EDM to the four classical axioms of the Euclidean metric;thereby, observing the existence of an infinity of axioms of the Euclidean metric beyondthe triangle inequality. We proceed byderiving the fifth Euclidean axiom and then explain why furthering this endeavoris inefficient because the ensuing criteria (while describing polyhedra)grow linearly in complexity and number.Some geometrical problems solvable via EDMs,EDM problems posed as convex optimization, and methods of solution arepresented;\eg, we generate a recognizable isotonic map of the United States usingonly comparative distance information (no distance information, only distance inequalities).We offer a new proof of the classic Schoenberg criterion, that determines whether a candidate matrix is an EDM. Our proofrelies on fundamental geometry; assuming, any EDM must correspond to a list of points contained in some polyhedron(possibly at its vertices) and vice versa.It is not widely known that the Schoenberg criterion implies nonnegativity of the EDM entries; proved here.We characterize the eigenvalues of an EDM matrix and then devisea polyhedral cone required for determining membership of a candidate matrix(in Cayley-Menger form) to the convex cone of Euclidean distance matrices (EDM cone); \ie,a candidate is an EDM if and only if its eigenspectrum belongs to a spectral cone for EDM^N.We will see spectral cones are not unique.In the chapter "EDM cone", we explain the geometric relationship betweenthe EDM cone, two positive semidefinite cones, and the elliptope.We illustrate geometric requirements, in particular, for projection of a candidate matrixon a positive semidefinite cone that establish its membership to the EDM cone. The faces of the EDM cone are described,but still open is the question whether all its faces are exposed as they are for the positive semidefinite cone.The classic Schoenberg criterion, relating EDM and positive semidefinite cones, isrevealed to be a discretized membership relation (a generalized inequality, a new Farkas''''''''-like lemma)between the EDM cone and its ordinary dual. A matrix criterion for membership to the dual EDM cone is derived thatis simpler than the Schoenberg criterion.We derive a new concise expression for the EDM cone and its dual involvingtwo subspaces and a positive semidefinite cone."Semidefinite programming" is reviewedwith particular attention to optimality conditionsof prototypical primal and dual conic programs,their interplay, and the perturbation method of rank reduction of optimal solutions(extant but not well-known).We show how to solve a ubiquitous platonic combinatorial optimization problem from linear algebra(the optimal Boolean solution x to Ax=b)via semidefinite program relaxation.A three-dimensional polyhedral analogue for the positive semidefinite cone of 3X3 symmetricmatrices is introduced; a tool for visualizing in 6 dimensions.In "EDM proximity"we explore methods of solution to a few fundamental and prevalentEuclidean distance matrix proximity problems; the problem of finding that Euclidean distance matrix closestto a given matrix in the Euclidean sense.We pay particular attention to the problem when compounded with rank minimization.We offer a new geometrical proof of a famous result discovered by Eckart \& Young in 1936 regarding Euclideanprojection of a point on a subset of the positive semidefinite cone comprising all positive semidefinite matriceshaving rank not exceeding a prescribed limit rho.We explain how this problem is transformed to a convex optimization for any rank rho.